Error responses

Identify API error codes, inspect error payloads, and handle batch request failures.

Use this page to identify API error codes, understand the error response format, and handle batch request failures.

📘

Response checks

Check both the HTTP status code and the response body to determine whether a request succeeded.

Error response format

When a request fails, the API returns a response with status set to error and an error object that contains the code and message.

JSON example

{
  "status": "error",
  "version": "1.2",
  "error": {
    "code": "1001",
    "message": "Missing ArtistId"
  }
}

XML example

<response status="error" version="1.2">
  <error code="1001">
    <errorMessage>Missing artist ID</errorMessage>
  </error>
</response>

Handle errors

  1. Check the HTTP status code.
  2. Check the status field in the response body.
  3. Read error.code to identify the failure type.
  4. Read error.message for the human-readable error.
  5. If error.code is 1008, inspect error.errors to review each failed item in a batch request.

If you want to reproduce a request and inspect the full response more easily, use the Postman sample requests guide.

If you want to reproduce a request and inspect the full response more easily, use the Postman sample requests guide.

If you want to reproduce a request and inspect the full response more easily, use the Postman sample requests guide.

If you want to reproduce a request and inspect the full response more easily, use the Postman sample requests guide.

Batch request errors (1008)

If the API returns error code 1008, the response includes an errors array with one entry for each failed item in the batch.

  • code — the error code for the specific item
  • message — the human-readable error for the specific item
  • index — the zero-based position of the failed item in the batch
{
  "error": {
    "code": 1008,
    "message": "One or more errors has occurred.",
    "errors": [
      {
        "code": 1001,
        "message": "Missing TrackID",
        "index": 2
      }
    ]
  }
}

Error code categories

1xxx — Invalid or missing input parameters

CodeDescription
1001Required parameter missing
1002Invalid parameter value
1003Parameter value out of allowable range
1006Invalid enumeration value
1007Query string parameters are not permitted when performing HTTP POST. Please use the POST body or a header.
1008One or more errors from a batch. See Batch request errors (1008).

2xxx — Invalid resource reference

CodeDescription
2001Resource cannot be found
2002Resource is not available in current context
2003Resource already exists

3xxx — User restrictions

CodeDescription
3001User's payment card has expired
3002User has no saved card details
3003Payment for this purchase has failed
3004Supplied price is out of date
3005Card issued in a country not valid for this shop
3100Problem connecting to payment provider
3101Payment failed (provider-level)
3102Payment was declined by provider
3103Adding a card failed
3104Adding a card was declined
3105Basket is not eligible for refund
3106Refund was declined
3107Transaction has already been refunded
3201Simultaneous stream requests from multiple devices. Streaming access is temporarily disabled.

4xx — Authentication errors

CodeDescription
401Authentication for this request has failed. The response contains a plain-text message that describes the reason.

7xxx — MassiveMusic API application errors

CodeDescription
7001Unable to perform action
7002Application configuration error
7003Operation timed out
7102Refund processing failed

9xxx — Internal server errors

CodeDescription
9001Unexpected internal server error