Errors

Errors Object

To help integrators build more robust integrations, all responses will always return an errors object, which contains the following information:

  • message: a user-friendly message

  • errorCode: a specific error code

  • moreInfo: more information about the error and/or link to documentation.

Core API uses conventional HTTP response codes to indicate the success or failure of an API request. HTTP accomplishes this with categories of status codes Tulip mainly leverages 3 groupings:

  • 200-level (Success) – server completed the request as expected

  • 400-level (Client error) – client sent an invalid request

  • 500-level (Server error) – server failed to fulfill a valid request due to an error internal to Tulip

Error Responses of Single Entity vs. Multiple Entities Endpoints

Single Entity Endpoints

These endpoints are used when creating or updating single a single entity. If that entity could not be successfully created or updated, errors object will populate with following information:

  • Example:
  "errors":  [{
    "message":"Could not get resource: Missing UUID in path",
    "errorCode":"InvalidParameterError",        
    "moreInfo":"Please refer to the API endpoint reference and ensure you are providing all required parameters."
  }]

Multiple Entities Endpoints

These endpoints are used when creating or updating multiple entities at a time. If a certain entity or entities could not be updated or created during the API call, the errors object will contain the following information:

  "errors":  [{
    "message":"Could not create/update resource: Missing field externalId",
    "errorCode":"invalidResourceMissingRequiredFields",        
    "moreInfo":"More information about the error including the **jobId** which references the incorrect entity or entities and/or link to documentation."
  }]