For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
DashboardGet an API key
Get StartedGuidesAPI ReferenceSDKsChangelog
Get StartedGuidesAPI ReferenceSDKsChangelog
  • Meta
    • GETGet current identity
    • GETLiveness probe
  • Customers
    • GETList customers
    • POSTCreate a customer
    • GETRetrieve a customer
    • DELDelete a customer
    • PATCHUpdate a customer
  • Contacts
    • GETList a customer's contacts
    • POSTAdd a contact to a customer
    • GETRetrieve a contact
    • DELDelete a contact
    • PATCHUpdate a contact
  • Onboardings
    • GETList onboardings
    • POSTCreate an onboarding
    • GETList a customer's onboardings
    • GETRetrieve an onboarding
    • DELDelete an onboarding
    • PATCHUpdate an onboarding
LogoLogo
DashboardGet an API key
Contacts

Add a contact to a customer

|View as Markdown|Open in Claude|
POST
https://my.pivotal.app/api/v1/customers/:customerId/contacts
POST
/api/v1/customers/:customerId/contacts
1const url = 'https://my.pivotal.app/api/v1/customers/42/contacts';
2const options = {
3 method: 'POST',
4 headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
5 body: '{"name":"Alice Johnson","email":"alice.johnson@example.com"}'
6};
7
8try {
9 const response = await fetch(url, options);
10 const data = await response.json();
11 console.log(data);
12} catch (error) {
13 console.error(error);
14}
1{
2 "object": "contact",
3 "id": "c1234567-89ab-4def-0123-456789abcdef",
4 "display_id": 7,
5 "customer_id": "42",
6 "name": "Alice Johnson",
7 "email": "alice.johnson@example.com",
8 "title": "Technical Lead",
9 "is_primary": false,
10 "labels": [
11 "engineering",
12 "key-contact"
13 ],
14 "created_at": "2024-01-15T09:30:00Z",
15 "updated_at": "2024-01-15T09:30:00Z"
16}
Email is lowercased on the way in and unique per customer.
Was this page helpful?
Previous

List a customer's contacts

Next

Retrieve a contact

Built with

Authentication

AuthorizationBearer

Send your key in the Authorization header. Keys start with pivotal_ (production) or pivotal_test_ (test mode, no side effects on integrations). Rotate keys from /admin/api-keys — old keys 401 instantly when revoked.

Path parameters

customerIdstringRequired

Numeric display_id or cuid of the parent customer.

Request

This endpoint expects an object.
namestringRequired1-255 characters
emailstringRequiredformat: "email"<=255 characters
titlestringOptional<=255 characters
is_primarybooleanOptional
labelslist of stringsOptional

Response

Created
objectenum
Allowed values:
idstring
display_idinteger
customer_idstring
namestring
emailstringformat: "email"
titlestring or null
is_primaryboolean
labelslist of strings
created_atdatetime
updated_atdatetime

Errors

400
Bad Request Error
401
Unauthorized Error
404
Not Found Error
409
Conflict Error