Custom Object API (/custom_objects/id)

Use the Custom Object API to create new data records for your custom objects.


Use the Custom Objects API to create, update, or query the data records for your Custom Objects. If you need to define a new Custom Object, use the UI.

The URL to access the Custom Objects API is: https://<instance>/api/custom_objects/{object_id}

See Integration Best Practices for more info.


Verb Path Action Description
POST /api/custom_objects/{object_id}/object_instances/ create Create a new data record for the Custom Object
PUT /api/custom_objects/{object_id}/object_instances/{instance_id} update Modify an existing data record
GET /api/custom_objects/{object_id}/object_instances/ index Lists all of the data records for the Custom Object
GET /api/custom_objects/{object_id}/object_instances/{instance_id} show Lists an individual data record

Elements (Object Instance)

Element Description Req'd Unique Allowable Value In Out Data Type
created-at Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ     any   yes datetime
created-by User who created     any   yes User
custom-object-code Custom object code     any   yes string
custom-object-name Custom object name     any   yes string
form-response-id ID of form response that created the instance     any   yes integer
id Coupa Internal ID     any   yes integer
updated-at Automatically created by Coupa in the format YYYY-MM-DDTHH:MM:SS+HH:MMZ     any   yes datetime
updated-by User who updated     any   yes User

Elements are only used for GET calls. POST or PUT calls will only include the custom fields used in your custom object definition. See the below sample for details.

Sample Payloads

Since a Custom Object is made entirely of custom fields, you need to contain your custom fields in the custom-field namespace. A basic POST or PUT should take this form:



Related Items

Querying Options

21 October 2016

See how you can use queries to quickly identify and pull the data you require.

Special Actions and API Notes

21 October 2016

Additional info on how to use the Coupa API.

Differences between XML and JSON in Coupa

16 December 2016


24 April 2017

Learn about the types of arguments that Coupa supports in conjunction with operators.