Bulk Update People¶
POST https://api.copper.com/developer_api/v1/people/bulk_update
BETA Disclaimer ⚠️¶
Please note that our new bulk create/update APIs (including this one) are still undergoing final testing before their official release.
We reserve the right to increase or decrease the maximum request size of these APIs (see the Request Size Limit
section).
Should you encounter any issues, please let us know so we can diagnose and resolve them. Your help in this regard is greatly appreciated.
Request Size Limit¶
This is a bulk-update endpoint with a maximum request size of 10
. If you sent a request larger than that limit, you will receive a 422
back with response:
{
"error": "Request size too large, limit is 10"
}
Responses¶
All valid requests (JSON is formatted correctly on request) will result in a 200
OK. Bulk APIs guarantee the same response object ordering as the request objects meaning you can match each response object up to the request's objects easily.
If an object is updated successfully, it will be returned in the response array in the same JSON structure you would expect from the single-update endpoint.
If an object fails to update, it's response object (within the response array) will look like this:
{
"success": false,
"message": {
"name": [
{
"error": "invalid"
}
]
},
"id": 12345
}
Notes¶
Some other notes about this bulk API:
* Contact emails must be unique so there must be no overlap between emails in the system and emails provided in your bulk update request. Otherwise the relevant contacts will fail to update.
* This endpoint is eligible to return computed custom field values, click here for more information.
* Our bulk APIs have an additional rate limit of 3 requests per second. You may receive 429
error responses if you exceed this limit.
Request Body¶
The request body is just an array of single-update JSON Request objects within an array(each with an ID added referencing a Person that already exists) with a key of "people", as seen below:
{
"people": [
{
"id": 12345,
"name": "My Contact",
"emails": [
{
"email": "mycontact_1233@noemail.com",
"category": "work"
}
],
"address": {
"street": "123 Main Street",
"city": "Savannah",
"state": "Georgia",
"postal_code": "31410",
"country": "United States"
},
"phone_numbers": [
{
"number": "415-123-45678",
"category": "mobile"
}
]
}
]
}
Example Requests¶
Create New Person¶
curl --location --request POST "https://api.copper.com/developer_api/v1/people/bulk_create" \
--header "X-PW-AccessToken: YOUR_TOKEN_HERE" \
--header "X-PW-Application: developer_api" \
--header "X-PW-UserEmail: " YOUR_EMAIL_HERE \
--header "Content-Type: application/json" \
--data '{
"people": [
{
"id": 12345,
"name": "Contact One"
},
{
"id": 67890,
"name": "Contact Two"
}
]
}'
[
{
"id": 12345,
"name": "Contact One",
"prefix": null,
"first_name": "Contact",
"middle_name": null,
"last_name": "One",
"suffix": null,
"address": null,
"assignee_id": null,
"company_id": null,
"company_name": null,
"contact_type_id": 1074,
"details": null,
"emails": [],
"phone_numbers": [],
"socials": [],
"tags": [],
"title": null,
"websites": [],
"custom_fields": [],
"date_created": 1687360885,
"date_modified": 1687360885,
"date_last_contacted": null,
"interaction_count": 0,
"leads_converted_from": [],
"date_lead_created": null
},
{
"id": 67890,
"name": "Contact Two",
"prefix": null,
"first_name": "Contact",
"middle_name": null,
"last_name": "Two",
"suffix": null,
"address": null,
"assignee_id": null,
"company_id": null,
"company_name": null,
"contact_type_id": 1074,
"details": null,
"emails": [],
"phone_numbers": [],
"socials": [],
"tags": [],
"title": null,
"websites": [],
"custom_fields": [],
"date_created": 1687360885,
"date_modified": 1687360885,
"date_last_contacted": null,
"interaction_count": 0,
"leads_converted_from": [],
"date_lead_created": null
}
]