Connectors (built-in) API
Manage connected app accounts and third-party integrations.
Endpoints
/api/v1/connectorAccounts/searchConnectorsWhich connectors can be added today: the ready-made vendor connectors that work and every built-in one, searched by name. Optional param "query" (part of the name). Returns up to 50 { name, provider, auth: "sign-in" | "own-app" | "key" | "none", verified } — "own-app" means the person connects it with their own developer app at that service (they paste its Client ID and Client Secret in the connect form, which shows where to create the app and the redirect URI to add); verified means a real sign-in or a passed key check proved it. Use it before telling someone a service can be connected; anything not listed cannot be added today (they can still add any MCP server by URL as a Custom connector under Automations → Connectors), and a connection they already have keeps working.
Parameters
query | string |
Example Request
curl -X POST https://app.serenitiesai.com/api/v1/connectorAccounts/searchConnectors \
-H "Authorization: Bearer mk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"query": "example"
}'/api/v1/connectorAccounts/createConnect a new app account. Params: mcpServerId (required, from mcpServer.list), connectionName (required), credentials (object with API keys/tokens).
Parameters
mcpServerId | stringrequired | |
connectionName | stringrequired | |
credentials | objectrequired |
Example Request
curl -X POST https://app.serenitiesai.com/api/v1/connectorAccounts/create \
-H "Authorization: Bearer mk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"mcpServerId": "example",
"connectionName": "example",
"credentials": {}
}'/api/v1/connectorAccounts/listList connected app accounts (OAuth integrations). Optional param "mcpServerId" to filter. Returns accounts with connection status and mayManage (true when you may change, switch on or off, or remove it; when false the server refuses, so say so and do not retry).
Parameters
mcpServerId | string |
Example Request
curl -X POST https://app.serenitiesai.com/api/v1/connectorAccounts/list \
-H "Authorization: Bearer mk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"mcpServerId": "example"
}'/api/v1/connectorAccounts/getByIdGet one app account (connection) with its MCP server and agent links. Param "appAccountId". Credentials are never returned — only non-sensitive auth metadata (authType, key location/name, username). Also mayManage: true when you may change, switch on or off, or remove it; when false the server refuses, so say so and do not retry.
Parameters
appAccountId | stringrequired |
Example Request
curl -X POST https://app.serenitiesai.com/api/v1/connectorAccounts/getById \
-H "Authorization: Bearer mk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"appAccountId": "example"
}'/api/v1/connectorAccounts/deleteDisconnect an app account. Param "appAccountId".
Parameters
appAccountId | stringrequired |
Example Request
curl -X POST https://app.serenitiesai.com/api/v1/connectorAccounts/delete \
-H "Authorization: Bearer mk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"appAccountId": "example"
}'/api/v1/connectorAccounts/toggleActiveSwitch one connected account on or off. Params: appAccountId (from list), isActive (true = on, false = off). Off pauses every use of it (the AI chat, agents, functions and flows can no longer run its tools) until it is switched on again; nothing is removed and its saved sign-in is kept. Returns { id, connectionName, isActive, testStatus, createdAt, updatedAt }.
Parameters
appAccountId | stringrequired | |
isActive | booleanrequired |
Example Request
curl -X POST https://app.serenitiesai.com/api/v1/connectorAccounts/toggleActive \
-H "Authorization: Bearer mk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"appAccountId": "example",
"isActive": true
}'/api/v1/connectorAccounts/testCheck that a connected account still signs in: tries its SAVED sign-in against its service and records the result (testStatus). Param: appAccountId (from list); nothing else is sent or needed, and the sign-in is never shown. Returns { success }: true when the service accepted it, false when it did not; when the service gave a reason, { error } carries it (with anything that quotes the sign-in hidden). Use it after a person reports a connector stopped working.
Parameters
appAccountId | stringrequired |
Example Request
curl -X POST https://app.serenitiesai.com/api/v1/connectorAccounts/test \
-H "Authorization: Bearer mk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"appAccountId": "example"
}'