MeetClique developer platform

MeetClique Public API

Build bots, automations and private integrations for your MeetClique workspaces.

https://api.meetclique.net/v1
Get API token View ai.json
Bearer auth Scoped tokens Workspace-aware
API online
No matching sections found for this query.
Token setup

Get an API token

1

Open AccountIntegrationsPublic API.

2

Choose scopes, personal access, allowed workspaces and expiration.

3

Create the token and copy it. The full value is shown once.

Authentication

Bearer authentication

Send tokens in the Authorization header. Treat tokens like passwords and keep them on trusted backends only.

Quick curl
curl https://api.meetclique.net/v1/me \
  -H "Authorization: Bearer mc_live_..."
Permissions

Scopes, personal access and workspace access

Scope checks happen per route. Workspace routes also check allowed workspace ids and current membership. Personal routes additionally require allow_personal.

  • Workspace routes fail with 403 workspace_forbidden if the workspace is outside the token’s allowed set.
  • If the token owner is no longer a member of the workspace, workspace routes fail even if the workspace id was originally allowed.
  • Any workspace member role can create a token. Runtime access still follows the current workspace role of the token owner.
  • member_readonly can read allowed workspace resources but cannot use workspace write routes.
  • task_board_manager can manage workspace tasks, tracker team entries and workspace clients, but does not get admin rights on notes or calendar events.
  • Workspace client write routes require owner, admin or task_board_manager.
  • Workspace task updates/deletes require task owner, assignee or manager role; workspace note deletes require note owner or workspace admin; workspace calendar updates/deletes require event owner or workspace admin.
Reference

API coverage

Resource Personal Workspace Write Notes
ProfileYesNoNo/v1/me and /v1/me/scopes.
WorkspacesNoYesNoWorkspace and member listing.
TasksYesYesYesFull CRUD.
NotesYesYesYesFull CRUD.
CalendarYesYesYesPrivate workspace events are excluded.
Time trackerYesYesYesFull CRUD.
WalletYesNoYesPersonal transactions.
ClientsYesYesYesWorkspace writes require an authorized role.
FilesYesYesPartialMetadata listing only.
NotificationsYesNoPartialList and mark as read.
IntegrationsYesNoNoScope catalog and token metadata.
WebhooksYesNoYesCRUD and delivery history.
CommentsNoNoNoNot exposed.
Reference

Endpoints

auth required
GET
/v1/me

Returns the authenticated account profile.

Scope

me.read

Auth

Required.

Personal access

Not required for this route.

curl
curl https://api.meetclique.net/v1/me \
  -H "Authorization: Bearer mc_live_..."
GET
/v1/me/scopes

Returns granted scopes, the scope catalog, allowed workspace ids and the token personal-access flag.

Scope

integrations.read

Auth

Required.

Errors

401 invalid token, 403 missing scope.

workspace required
MethodPathScopeNotes
GET/v1/workspacesworkspaces.readLists workspaces still allowed by the token after filtering.
GET/v1/workspaces/{workspaceId}workspaces.readReturns workspace metadata and disabled status.
GET/v1/workspaces/{workspaceId}/membersmembers.readLists workspace members and roles.
curl
curl https://api.meetclique.net/v1/workspaces/12/members \
  -H "Authorization: Bearer mc_live_..."
read + write
MethodPathScopeNotes
GET/v1/me/taskstasks.readList personal tasks. Supports limit, cursor, search.
POST/v1/me/taskstasks.writeCreate personal task. title required.
GET/v1/me/tasks/{taskId}tasks.readFetch personal task.
PATCH/v1/me/tasks/{taskId}tasks.writePatch personal task.
DELETE/v1/me/tasks/{taskId}tasks.writeDelete personal task.
GET/v1/workspaces/{workspaceId}/taskstasks.readList workspace tasks.
POST/v1/workspaces/{workspaceId}/taskstasks.writeCreate workspace task.
GET/v1/workspaces/{workspaceId}/tasks/{taskId}tasks.readFetch workspace task.
PATCH/v1/workspaces/{workspaceId}/tasks/{taskId}tasks.writePatch workspace task.
DELETE/v1/workspaces/{workspaceId}/tasks/{taskId}tasks.writeDelete workspace task.
read + write
MethodPathScopeNotes
GET/v1/me/notesnotes.readList personal notes. Supports limit, cursor, search.
POST/v1/me/notesnotes.writeCreate personal note. name required.
GET/v1/me/notes/{noteId}notes.readFetch personal note.
PATCH/v1/me/notes/{noteId}notes.writePatch personal note.
DELETE/v1/me/notes/{noteId}notes.writeDelete personal note.
GET/v1/workspaces/{workspaceId}/notesnotes.readList workspace notes.
POST/v1/workspaces/{workspaceId}/notesnotes.writeCreate workspace note.
GET/v1/workspaces/{workspaceId}/notes/{noteId}notes.readFetch workspace note.
PATCH/v1/workspaces/{workspaceId}/notes/{noteId}notes.writePatch workspace note.
DELETE/v1/workspaces/{workspaceId}/notes/{noteId}notes.writeDelete workspace note.
read + write
MethodPathScopeNotes
GET/v1/me/calendar/eventscalendar.readList personal events. Supports limit, cursor, from, to.
POST/v1/me/calendar/eventscalendar.writeCreate personal event. title and start required.
GET/v1/me/calendar/events/{eventId}calendar.readFetch personal event.
PATCH/v1/me/calendar/events/{eventId}calendar.writePatch personal event.
DELETE/v1/me/calendar/events/{eventId}calendar.writeDelete personal event.
GET/v1/workspaces/{workspaceId}/calendar/eventscalendar.readList workspace events. Private events are excluded.
POST/v1/workspaces/{workspaceId}/calendar/eventscalendar.writeCreate workspace event.
GET/v1/workspaces/{workspaceId}/calendar/events/{eventId}calendar.readFetch workspace event.
PATCH/v1/workspaces/{workspaceId}/calendar/events/{eventId}calendar.writePatch workspace event.
DELETE/v1/workspaces/{workspaceId}/calendar/events/{eventId}calendar.writeDelete workspace event.
read + write
MethodPathScopeNotes
GET/v1/me/tracker/entriestracker.readList personal tracker entries. Supports limit, cursor, from, to.
POST/v1/me/tracker/entriestracker.writeCreate personal tracker entry. start_time required.
GET/v1/me/tracker/entries/{entryId}tracker.readFetch personal tracker entry.
PATCH/v1/me/tracker/entries/{entryId}tracker.writePatch personal tracker entry.
DELETE/v1/me/tracker/entries/{entryId}tracker.writeDelete personal tracker entry.
GET/v1/workspaces/{workspaceId}/tracker/entriestracker.readList workspace tracker entries.
POST/v1/workspaces/{workspaceId}/tracker/entriestracker.writeCreate workspace tracker entry.
GET/v1/workspaces/{workspaceId}/tracker/entries/{entryId}tracker.readFetch workspace tracker entry.
PATCH/v1/workspaces/{workspaceId}/tracker/entries/{entryId}tracker.writePatch workspace tracker entry.
DELETE/v1/workspaces/{workspaceId}/tracker/entries/{entryId}tracker.writeDelete workspace tracker entry.
personal only
MethodPathScopeNotes
GET/v1/me/wallet/transactionswallet.readList personal transactions. Supports limit, cursor, from, to.
POST/v1/me/wallet/transactionswallet.writeCreate transaction. date, amount and type required.
GET/v1/me/wallet/transactions/{id}wallet.readFetch transaction.
PATCH/v1/me/wallet/transactions/{id}wallet.writePatch transaction.
DELETE/v1/me/wallet/transactions/{id}wallet.writeDelete transaction.
role checks on workspace writes
MethodPathScopeNotes
GET/v1/me/clientsclients.readList personal clients. Supports limit, cursor, search.
POST/v1/me/clientsclients.writeCreate personal client. name required.
GET/v1/me/clients/{clientId}clients.readFetch personal client.
PATCH/v1/me/clients/{clientId}clients.writePatch personal client.
DELETE/v1/me/clients/{clientId}clients.writeDelete personal client.
GET/v1/workspaces/{workspaceId}/clientsclients.readList workspace clients.
POST/v1/workspaces/{workspaceId}/clientsclients.writeCreate workspace client. Manager role required.
GET/v1/workspaces/{workspaceId}/clients/{clientId}clients.readFetch workspace client.
PATCH/v1/workspaces/{workspaceId}/clients/{clientId}clients.writePatch workspace client. Manager role required.
DELETE/v1/workspaces/{workspaceId}/clients/{clientId}clients.writeDelete workspace client. Manager role required.
limited
MethodPathScopeNotes
GET/v1/me/filesfiles.readList personal file metadata. Supports limit and cursor.
GET/v1/workspaces/{workspaceId}/filesfiles.readList workspace file metadata.

No public upload, delete or file-content endpoint is currently exposed on /v1.

personal only
MethodPathScopeNotes
GET/v1/me/notificationsnotifications.readList notifications. Supports limit, cursor, unread=1.
POST/v1/me/notifications/mark-readnotifications.readMark ids read. JSON body: { "ids": [1,2,3] }. Max 300 ids.
metadata only
MethodPathScopeNotes
GET/v1/me/integrations/tokensintegrations.readLists token metadata with names, scopes, workspace settings, expiry and last-used timestamps.
GET/v1/me/integrations/scopes/catalogintegrations.readReturns the public scope catalog used by the app token UI.
read + write
MethodPathScopeNotes
GET/v1/me/webhookswebhooks.readList registered webhooks.
POST/v1/me/webhookswebhooks.writeCreate webhook. Returns signing_secret once.
GET/v1/me/webhooks/{id}webhooks.readFetch webhook.
PATCH/v1/me/webhooks/{id}webhooks.writePatch webhook.
DELETE/v1/me/webhooks/{id}webhooks.writeDelete webhook.
GET/v1/me/webhooks/{id}/deliverieswebhooks.readList delivery history. Supports limit and cursor.
Create body

name, endpoint_url and non-empty events array are required. Optional: workspace_ids, enabled.

Current limitation

There is no public endpoint that lists the supported webhook event catalog yet. Event keys are accepted as normalized strings.

Errors

Error format

Error responses use a consistent JSON envelope and include a request id.

Error response
{
  "ok": false,
  "error": {
    "code": "workspace_forbidden",
    "message": "This token does not have access to this workspace.",
    "request_id": "req_..."
  }
}
  • 400 malformed input or route issues.
  • 401 missing, invalid, expired or revoked token.
  • 403 missing scope, no personal access or forbidden workspace.
  • 404 missing resource.
  • 405 unsupported method.
  • 409 idempotency conflict.
  • 422 validation error.
  • 429 rate limited.
  • 500 internal error.
Operations

Rate limits and idempotency

The current implementation uses a per-IP bucket and a per-token bucket. POST requests support idempotency keys.

Per IP

240 requests / 60 seconds

Per token GET

120 requests / 60 seconds

Per token non-GET

30 requests / 60 seconds

  • Headers: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, Retry-After.
  • Idempotency-Key is supported for POST requests only.
  • Idempotency keys are stored for 24 hours.