Invoicing API Debugging

This section tells you what you need to know about the Invoicing API’s error response format, and details the range of HTTP status codes the API produces.

Error Responses

The API produces JSON errors as in the following sample. See the sections below for details on each data member.

  "details": [
      "field": "year",
      "code": "",
      "message": "Month parameter cannot be provided without year parameter.",
      "data": {
        "field": "year",
        "value": "null"
  "code": "validation.failure",
  "title": "Validation failure",
  "incidentId": "361cd072-e213-4c4e-984d-631be108a1fe",
  "resolution": null,
  "helpUrl": null

Error Members

Member Type Description
details Error.details[n] Each array member object encodes context for the failed request, such as malformed query parameter field values.
code String A descriptive code that corresponds to overall HTTP status.
incidentId String A logging key useful when communicating about problems with Technical Support representatives.
title String A descriptive title that corresponds to overall HTTP status.
helpUrl String Deprecated.
resolution String Deprecated.


Member Type Description
code String A descriptive identifier for each problem.
message String A description of the problem.
data Object A loosely structured object that, when available, encapsulates the set of erroneous input values.
field String Indicates the request’s parameter field for which there is a problem.

HTTP Status Codes

The API produces the following set of HTTP status codes for both success and failure scenarios:

Code Description
200 Successful request.
201 Resource successfully created.
204 Request succeeded, but no data is available for the requested parameters.
401 Authorization error.
403 Access is forbidden.
404 Resource not found.
500 Server error.

Last modified: 4/10/2017