API v1 Stable

Create or update contact group

Creates or renames a simple group.

POST Stable

Create or update contact group

/v1/contacts/groups/upsert

Group slug is stable in V1; display name can be updated.

Request

Name Type Required Description Example
name string Yes Group display name. Beta users
slug string No Stable group slug. beta-users

curl

curl -X POST 'https://api.emailsdone.dev/v1/contacts/groups/upsert' \
  -H 'Authorization: Bearer ed_...' \
  -H 'Content-Type: application/json' \
  -d '{}'

Response

Name Type Required Description Example
ok boolean Yes True when group was saved.
group object Yes Contact group.
{}

Errors

StatusCodeMessage
400 invalid_request Request body failed validation.
401 missing_api_key Authorization bearer token is missing.
401 invalid_api_key API key is invalid.
403 api_key_revoked API key has been revoked.
404 contact_not_found Contact was not found.
405 method_not_allowed Only POST is allowed.
500 internal Unexpected server error.

Notes

  • Contacts are tenant-level recipients for app email history, not CRM records.
  • Existing environment API keys can access tenant contacts endpoints.