# Notealy ## Docs - [Create a company](https://docs.notealy.com/api-reference/companies/create-a-company.md): Idempotent on `domain`: if a company with the same domain already exists in the organization, the existing record is returned instead of failing. - [Delete a company](https://docs.notealy.com/api-reference/companies/delete-a-company.md) - [Get a company by id](https://docs.notealy.com/api-reference/companies/get-a-company-by-id.md) - [List companies](https://docs.notealy.com/api-reference/companies/list-companies.md): Returns a cursor-paginated list of companies. Filter by exact `domain` or fuzzy `search` (matches name and domain). - [Update a company](https://docs.notealy.com/api-reference/companies/update-a-company.md) - [Get an email campaign by id](https://docs.notealy.com/api-reference/email-campaigns/get-an-email-campaign-by-id.md) - [List email campaigns](https://docs.notealy.com/api-reference/email-campaigns/list-email-campaigns.md): Requires the organization to be on a plan that includes email campaigns. - [Send an email campaign](https://docs.notealy.com/api-reference/email-campaigns/send-an-email-campaign.md): Triggers delivery of the campaign to its configured audience. Idempotent guarding is the campaign's responsibility — see the dashboard for status. - [List email templates](https://docs.notealy.com/api-reference/email-templates/list-email-templates.md): Returns every email template in the organization, sorted by most recently updated. Use the returned `id` as `templateId` when calling `POST /v1/email/send` or `POST /v1/email/send/external`. The full HTML body is omitted from this response — fetch templates via the dashboard if you need to render th… - [Send a templated email to a contact](https://docs.notealy.com/api-reference/email/send-a-templated-email-to-a-contact.md): Renders the email template with the contact's data merged with `vars` and dispatches via the configured provider (Resend/SES). The contact must already exist in the organization. - [Send a templated email to an arbitrary address](https://docs.notealy.com/api-reference/email/send-a-templated-email-to-an-arbitrary-address.md): Like `email.send`, but targets a raw email address with no contact record required. Useful for one-off transactional sends to people not in the CRM. - [Verify the authenticated identity](https://docs.notealy.com/api-reference/me/verify-the-authenticated-identity.md): Returns the API token and organization the request is authenticated as. Use this as the first call from any new integration to confirm a token is valid and discover its organization and scopes. Requires no specific scope — any authenticated token works. - [Attach tags to a person](https://docs.notealy.com/api-reference/people/attach-tags-to-a-person.md): Adds one or more tags to the person. Idempotent — only newly attached tags emit `contact.tag_added` events. Tags must already exist in the organization (create them via the dashboard). - [Create or upsert a person](https://docs.notealy.com/api-reference/people/create-or-upsert-a-person.md): Creates a person or upserts onto an existing one (matched by phone, then email, then `externalId`). When `tagIds` are supplied, only newly attached tags emit `contact.tag_added` events — retries are idempotent. - [Delete a person](https://docs.notealy.com/api-reference/people/delete-a-person.md): Permanently deletes the person and cascades to deals, messages, notes, tags, activities and automation executions. - [Detach a tag from a person](https://docs.notealy.com/api-reference/people/detach-a-tag-from-a-person.md) - [Get a person by id](https://docs.notealy.com/api-reference/people/get-a-person-by-id.md) - [List people](https://docs.notealy.com/api-reference/people/list-people.md): Returns a cursor-paginated list of people in the organization, sorted by creation date (newest first). Use `nextCursor` from the response as the `cursor` query param to fetch the next page. - [Update a person](https://docs.notealy.com/api-reference/people/update-a-person.md): `tagIds` are additive — they do not replace existing tags. Use `DELETE /v1/people/:id/tags/:tagId` to remove. - [Create a tag](https://docs.notealy.com/api-reference/tags/create-a-tag.md): Tags are identified by their name (unique within the organization). Re-creating an existing tag responds with `409 Conflict` — list first if you need a get-or-create flow. - [List tags](https://docs.notealy.com/api-reference/tags/list-tags.md): Returns every tag in the organization. Useful for discovering tag ids before attaching them to people via `POST /v1/people` or `POST /v1/people/:id/tags`. - [Authentication](https://docs.notealy.com/authentication.md): Bearer API tokens, scopes, expiry and rotation. - [Errors](https://docs.notealy.com/errors.md): Error envelope and common status codes. - [Use case: tag a contact, trigger a multi-channel automation](https://docs.notealy.com/guides/automation-trigger.md): Push a contact via the API, attach a tag, and let an automation reach them on email, WhatsApp, Instagram, Facebook or WhatsApp Cloud API. - [Quickstart](https://docs.notealy.com/guides/quickstart.md): Create a contact via the API and have an automation greet them by email — five minutes end to end. - [Introduction](https://docs.notealy.com/introduction.md): REST API for managing contacts, companies, transactional email and email campaigns in Notealy. - [Pagination](https://docs.notealy.com/pagination.md): Cursor-based pagination for list endpoints. - [Rate limits](https://docs.notealy.com/rate-limits.md): Per-token request budget and how to react to 429 responses. - [Webhooks overview](https://docs.notealy.com/webhooks/overview.md): Subscribe to organization events and receive signed HTTP callbacks. - [Retries](https://docs.notealy.com/webhooks/retries.md): How Notealy redelivers webhook events after a failure. - [Signing](https://docs.notealy.com/webhooks/signing.md): How to verify the X-Notealy-Signature header. ## OpenAPI Specs - [openapi](https://docs.notealy.com/openapi.json)