Skip to content

Quickstart

This walks you from nothing to a contact in your CRM. It takes about five minutes.

  1. Sign in at app.nexacloser.com and open Settings → API.
  2. Under Organization API keys, click New key.
  3. Name it after the thing that will use it, for example Website contact form.
  4. Pick Organization key (it keeps working when people leave your team) and the access level Contacts: create & update only. To try things out first, tick Test key: it checks every request but writes nothing.
  5. Click Create key and copy the key. It is shown once.

Only owners, admins and managers can create organization keys. Anyone on the team can create a personal key. See API keys for the differences.

Terminal window
curl -X POST https://api.nexacloser.com/v1/contacts \
-H "Authorization: Bearer $NEXACLOSER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"email": "[email protected]",
"full_name": "Dana Levi",
"source": "Website contact form",
"tags": ["website"]
}'

With a test key the answer is 200 and nothing is saved:

{
"test": true,
"valid": true,
"would": "create_or_update",
"normalized": {
"email": "[email protected]",
"phone": null,
"full_name": "Dana Levi",
"source": "Website contact form",
"tags": ["website"],
"custom_fields": {},
"preferred_language": null,
"attribution": {},
"consent": null
},
"warnings": []
}

With a live key a new contact answers 201:

{ "id": "cnt_8hT2kQx91L", "created": true, "matched_by": null, "consent": [], "warnings": [] }

Send the same email again and you get 200 with "created": false and "matched_by": "email": the existing contact was updated, not duplicated.

Open Contacts in NexaCloser. The contact is there, with source API, the tag website and Website contact form as its source channel. Any automation that starts on contact created has already run.