Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DecodeJSON ¶
DecodeJSON tries to unmarshal the Response.Data of the given Response r into an object of T.
func DecodeJSONObjects ¶
func DecodeJSONObjects[T any](r ListResponse) ([]T, error)
DecodeJSONObjects unmarshalls the Objects contained in the given ListResponse into a slice of T. To decode the full JSON response contained in ListResponse use Response.DecodeJSON.
Types ¶
type APIError ¶
type APIError struct { StatusCode int `json:"statusCode"` // StatusCode is the HTTP response status code returned by the API. Body []byte `json:"body"` // Body is the HTTP payload returned by the API. Request rest.RequestInfo `json:"request"` // Request is information about the original request that led to this response error. }
APIError represents an error returned by an API with associated information.
type ListResponse ¶
ListResponse represents a multi-object API response It contains both the full JSON Data, and a slice of Objects for more convenient access
type Response ¶
type Response struct { StatusCode int `json:"-"` Data []byte `json:"-"` Request rest.RequestInfo `json:"-"` }
Response represents an API response
func (Response) AsAPIError ¶
AsAPIError converts a Response object to an APIError if it represents a 4xx or 5xx error. If the Response does not represent an error, it returns an empty APIError and false.
Parameters: - r (Response): The Response object to convert to an APIError.
Returns:
- (APIError, bool): An APIError containing error information and a boolean indicating whether the conversion was successful (true for errors, false otherwise).
func (Response) Is4xxError ¶
Is4xxError returns true if the response indicates a 4xx client error HTTP status code. A status code between 400 and 499 (inclusive) is considered a client error.
func (Response) Is5xxError ¶
Is5xxError returns true if the response indicates a 5xx server error HTTP status code. A status code between 500 and 599 (inclusive) is considered a server error.