API

The Noki Mind API

Everything the admin space does can be called from a server too: your clients, quotes, tasks, meetings, notes. One endpoint per action, a key to authenticate, and an OpenAPI document your tools swallow as-is.

196 endpoints · 63 read · 104 write · 29 delete

First call

Create a key from the admin workspace, Integrations then API, and call. Here is a complete call, ready to paste.

Base address
https://nokimind.com/api/v1
curl https://nokimind.com/api/v1/list_clients \
  -H "Authorization: Bearer $NOKI_API_KEY"

Keep the key in an environment variable: pasted into a repository, it is worth the account that created it.

Authentication

Every call carries a key, created from the admin space under Integrations › API. Two headers are accepted, whichever your tool prefers.

Authorization: Bearer ecpapi_…
X-Api-Key: ecpapi_…

A key acts in the name of the administrator who created it and sees only what they see. Never put one in a web page: these calls go server to server, and no CORS header is set.

Scopes

A key carries one or more scopes. None implies another: a key that writes does not delete for that reason. Every endpoint states the one it needs.

ScopeWhat it opensEndpoints
readEverything that reads, changing nothing.63
writeCreate and update. Deletes nothing.104
destructivePermanent deletions.29

Methods and envelopes

What reads accepts GET, parameters in the query string, and POST, JSON body. What writes or deletes accepts POST only. An array is expressed by repeating the parameter: ?tags=a&tags=b.

Success returns 200 with the result under data.

{ "data": … }

A refusal returns a stable code under error and a sentence under message. Test the code, never the message.

{ "error": "missing_scope", "message": "…" }

Rate limits

Each key gets a per-minute ceiling, set by what the action does. Reading a lot breaks nothing; deleting thirty times a minute is not normal use.

ScopeCeiling
read600 calls per minute
write120 calls per minute
destructive30 calls per minute

Every response carries RateLimit-Limit, RateLimit-Remaining and RateLimit-Reset, including when it succeeds: that is what lets you slow down before the wall. Going over returns 429 with Retry-After.

Refusals

CodeStatusWhen
missing_api_key401No key in the request headers.
invalid_api_key401The key presented does not exist.
revoked_api_key401The key was cut off from the admin space.
expired_api_key401The key is past its expiry date.
not_admin403The account the key belongs to is no longer an administrator.
missing_scope403The key does not carry the scope this endpoint requires.
unknown_endpoint404The address names no endpoint. The response suggests close names.
method_not_allowed405GET on an endpoint that writes or deletes.
invalid_json400The request body is not JSON.
invalid_query400A query parameter is unknown. The response says which ones exist.
invalid_payload400The parameters fail validation. The response details them, field by field.
refused422The action said no for a business reason, explained in the message.
payload_too_large413The body is over 4 MB.
rate_limited429The key's call ceiling is reached for this level of action. The “Retry-After” header says how many seconds to wait.
server_error500Something failed on our side.

OpenAPI document

The full contract, generated from the code at every deploy. Paste it straight into Postman, Insomnia, Bruno, Scalar or Swagger UI, or feed it to a client generator.

Open openapi.json

Try it

Call an endpoint from this page with your own key. The request goes from your browser to this site; nothing is recorded here.

The key stays in this tab and is sent only to this API. It disappears when you reload the page.

Endpoints

All 196 actions, with their parameters and the shape of their response. Search by name or by module.

Open the reference

searchaccountagenciesadmin-localenotificationspushadmin-invitationsclientstasksclient-userscustom-fieldsreferrersquotesquote-commentstask-commentstask-viewssocialsocial-viewsmeetingsmeeting-proposalsrecallrecall-calendarquestionnairescredentialsbillsmetricsfilesfile-foldersdecisionsassistant-conversationsmedianotesnote-foldersticketscompanycompany-searchdesigneditor-imageseditor-filestranslation