Skip to content

Get Contact

This endpoint returns one contact by ID.

GET /v1/contacts/contacts/:id

Include your API key in the x-api-key header. See Authentication.

contacts:read
ParameterTypeRequiredDescription
idstringYesContact ID.

This endpoint does not accept a request body.

Terminal window
curl "https://api.crewsum.com/v1/contacts/contacts/contact-jkl123mno4567890" \
-H "x-api-key: $CREWSUM_API_KEY"

On success, the API returns HTTP 200 OK.

{
"message": "Successfully fetched contact: contact-jkl123mno4567890",
"data": {
"email": "placeholder@example.com",
"type": "EXTERNAL",
"userId": null,
"hasPortalAccess": true,
"id": "contact-jkl123mno4567890",
"name": "Contact Name",
"description": "A brief description of the contact",
"isArchived": false,
"createdAt": "2026-01-05T15:30:00.000Z",
"updatedAt": "2026-02-10T09:12:00.000Z",
"clientId": "client-ghi123jkl4567890",
"clientName": "Client Name",
"isDeleted": false,
"clientDeleted": false,
"clientArchived": false,
"associations": [
{
"projectId": "project-abc123def4567890",
"projectName": "Project Name",
"endCustomer": "End Customer Name",
"contactType": "MANAGER",
"notificationLevel": "COPY_ONLY"
}
],
"supplierAssociations": [
{
"supplierId": "supplier-abc123def4567890",
"supplierName": "Supplier Name"
}
]
}
}
  • The endpoint returns one contact object in data.
  • Deleted contacts are still returned, with isDeleted: true.
  • email is always a string. External contacts return the stored contact email. Internal contacts return the linked user’s email. It is an empty string when neither exists.
  • userId is null for external contacts. For internal contacts it is the internal <tenantId>#<userId> form, for example acme#user-a.
  • Contacts without a client return null for clientId, clientName, clientArchived, and clientDeleted.
  • associations lists the contact’s active project associations. endCustomer is the project’s end customer name, or null.
  • supplierAssociations lists the suppliers the contact is linked to.
  • updatedAt is null for contacts that were never updated.
StatusMeaning
400{"message": "ContactID missing"}. The ID path segment is empty.
404{"message": "Contact not found: <id>"}. No contact with this ID exists in your account.

Authentication and scope failures are described in Errors.

This endpoint does not trigger a webhook.