RedditApiResponse
about_RedditApiResponse
SHORT DESCRIPTION
Describes the RedditApiResponse Class
LONG DESCRIPTION
The RedditApiResponse is returned by the Invoke-RedditRequest function. It is used to house the response from the Reddit API.
Constructors
RedditApiResponse()
Creates a new RedditApiResponse object.
[RedditApiResponse]::new()
Properties
AccessToken
The RedditOAuthToken used to authenticated the API request that resulted in this RedditApiResponse.
Name: AccessToken
Type: RedditOAuthToken
Hidden: False
Static: False
ContentObject
Will either be a System.Management.Automation.PSCustomObject or System.String. This is the converted content from the Reddit API response. Most responses from the API should be JSON object. This will be converted to System.Management.Automation.PSCustomObject. Other responses will be stored as System.String.
Name: ContentObject
Type: Object
Hidden: False
Static: False
ContentType
The Content-Type response header returned from Reddit.
Name: ContentType
Type: System.String
Hidden: False
Static: False
Parameters
These are the parameters that were used with Invoke-WebRequest when it is called by Invoke-RedditRequest. The Authorization header will be truncated to protect the Access Token.
Name: Parameters
Type: System.Collections.Hashtable
Hidden: False
Static: False
RequestDate
This is the date the request was made to the API as determined by the API response (Reddit's Servers). This may differ from the local time.
Name: RequestDate
Type: DateTime
Hidden: False
Static: False
Response
This is the response object returned from Invoke-WebRequest when it is called by Invoke-RedditRequest.
Name: Response
Type: Object
Hidden: False
Static: False
Methods
EXAMPLES
Basic Example
$Params = @{
ContentType = 'application/json'
Uri = 'https://oauth.reddit.com/api/v1/me'
Method = 'Get'
ErrorAction = 'Stop'
UserAgent = $AccessToken.Application.UserAgent
WebSession = $AccessToken.Session
UseBasicParsing = $true
Headers = {
Authorization = 'Bearer {0}' -f $AccessToken.GetAccessToken()
}
}
$Result = Invoke-WebRequest @Params
[RedditApiResponse]@{
AccessToken = $AccessToken
Parameters = $Params
RequestDate = $Result.Headers.Date
Response = $Result
ContentObject = $Result.Content | ConvertFrom-Json
ContentType = $Result | Get-HttpResponseContentType
}
This example demonstrates using a RedditOAuthToken to make an authenticated web request to https://oauth.reddit.com/api/v1/me and creating a RedditApiResponse with the results. This is basically what is done within Invoke-RedditRequest