API applications API

Embedded branding and callback configuration for partner applications.

Updated

On this page

7 operations, generated from openapi/signclad.v1.yaml. Try them in the interactive reference, browse every endpoint group, or read the guides for the prose version.

GET /api_applications/{id}

Get an API application

Branding and callback configuration for an embedded partner application.

Base URL
https://api.signclad.com/api/v1
Authentication
API key or OAuth 2.1 access token

Path parameters

Name Type Description
id string (uuid) The API application's id.

Responses

Status Description
200 The API application.
401 Missing or invalid credentials. Unauthenticated requests are rate limited at 50 per minute.…
403 Authenticated, but not allowed to do this: an insufficient role, a credential type the route refuses, an unenrolled second factor, or a signer acting out of turn. meta.error always says which.…
404 No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative.
429 Rate limited. The message contains the literal 429 Too Many Requests for compatibility with clients that match on it.…

Example request

curl -X GET https://api.signclad.com/api/v1/api_applications/{id} \
  -H "X-Api-Key: $SIGNCLAD_API_KEY"

Example response (200)

{
  "id": "5c1d9e7f-2a3b-4c5d-8e9f-0a1b2c3d4e5f",
  "name": "Acme Lending portal",
  "callback_urls": [
    "https://portal.acme.example/signclad/callback"
  ],
  "primary_color": "#1F6FEB",
  "button_text_color": "#FFFFFF",
  "link_text_color": "#1F6FEB",
  "buttons_border_radius": 8,
  "custom_logo_file": "https://files.signclad.com/branding/acme-logo.png",
  "allowed_embed_domains": [
    "portal.acme.example"
  ],
  "owner": {
    "id": "7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d",
    "name": "Bryce Matheson",
    "email": "[email protected]"
  },
  "created_at": "2026-04-02T08:15:00Z",
  "updated_at": "2026-08-20T14:03:22Z"
}

PATCH /api_applications/{id}

Update an API application Extension

Only the keys present change; a key present and null clears it. Colours are hex, origins are scheme-and-host, and default_webhook_id must name an endpoint in this workspace.

Base URL
https://api.signclad.com/api/v1
Authentication
API key or OAuth 2.1 access token

Path parameters

Name Type Description
id string (uuid) The API application's id.

Request body

application/json

Property Type Required Description
allowed_embed_domains array of string Optional Origins allowed to frame this application's embedded pages, enforced through frame-ancestors. Left out of a request that sets callback_urls, it follows them.
button_text_color string or null Optional
buttons_border_radius integer or null Optional
callback_urls array of string Optional Origins — scheme and host only, no path. Normalized on write.
default_webhook_id string or null Optional Must name a webhook endpoint in this workspace.
link_text_color string or null Optional
name string Optional
primary_color string or null Optional

Responses

Status Description
200 The updated application.
401 Missing or invalid credentials. Unauthenticated requests are rate limited at 50 per minute.…
403 Authenticated, but not allowed to do this: an insufficient role, a credential type the route refuses, an unenrolled second factor, or a signer acting out of turn. meta.error always says which.…
404 No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative.
422 Validation failed. errors maps a field name to a message string, or to an object keyed by an error code or by a per-item key. Values are never arrays.

Example request

curl -X PATCH https://api.signclad.com/api/v1/api_applications/{id} \
  -H "X-Api-Key: $SIGNCLAD_API_KEY"

DELETE /api_applications/{id}

Delete an API application

API applications are created in the web app; there is no create endpoint. Deleting one detaches it from its documents and stops its embedded pages from loading.

Base URL
https://api.signclad.com/api/v1
Authentication
API key or OAuth 2.1 access token

Path parameters

Name Type Description
id string (uuid) The API application's id.

Responses

Status Description
204 Deleted.
401 Missing or invalid credentials. Unauthenticated requests are rate limited at 50 per minute.…
403 Authenticated, but not allowed to do this: an insufficient role, a credential type the route refuses, an unenrolled second factor, or a signer acting out of turn. meta.error always says which.…
404 No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative.
429 Rate limited. The message contains the literal 429 Too Many Requests for compatibility with clients that match on it.…

Example request

curl -X DELETE https://api.signclad.com/api/v1/api_applications/{id} \
  -H "X-Api-Key: $SIGNCLAD_API_KEY"

GET /api_applications

List API applications Extension

Every application in the workspace. next_cursor is always null here even when has_more is true — the list is capped rather than paged, so raise limit instead of following a cursor.

Base URL
https://api.signclad.com/api/v1
Authentication
API key or OAuth 2.1 access token

Query parameters

Name Type Required Description
limit integer Optional Items per page.

Responses

Status Description
200 The applications.
401 Missing or invalid credentials. Unauthenticated requests are rate limited at 50 per minute.…
403 Authenticated, but not allowed to do this: an insufficient role, a credential type the route refuses, an unenrolled second factor, or a signer acting out of turn. meta.error always says which.…

Example request

curl -X GET https://api.signclad.com/api/v1/api_applications \
  -H "X-Api-Key: $SIGNCLAD_API_KEY"

POST /api_applications

Create an API application Extension

Branding and embed configuration for a partner integration. callback_urls and allowed_embed_domains are origins — scheme and host, no path — and are normalized on write; setting callback_urls without mentioning allowed_embed_domains keeps the two in step.

Base URL
https://api.signclad.com/api/v1
Authentication
API key or OAuth 2.1 access token

Request body

application/json

Property Type Required Description
allowed_embed_domains array of string Optional Origins allowed to frame this application's embedded pages, enforced through frame-ancestors. Left out of a request that sets callback_urls, it follows them.
button_text_color string or null Optional
buttons_border_radius integer or null Optional
callback_urls array of string Optional Origins — scheme and host only, no path. Normalized on write.
default_webhook_id string or null Optional Must name a webhook endpoint in this workspace.
link_text_color string or null Optional
name string Optional
primary_color string or null Optional

Responses

Status Description
201 The application.
401 Missing or invalid credentials. Unauthenticated requests are rate limited at 50 per minute.…
403 Authenticated, but not allowed to do this: an insufficient role, a credential type the route refuses, an unenrolled second factor, or a signer acting out of turn. meta.error always says which.…
422 Validation failed. errors maps a field name to a message string, or to an object keyed by an error code or by a per-item key. Values are never arrays.

Example request

curl -X POST https://api.signclad.com/api/v1/api_applications \
  -H "X-Api-Key: $SIGNCLAD_API_KEY"

Upload an application logo Extension

PNG, JPEG, WebP, or GIF, up to 2 MB. SVG is deliberately refused — it is a script vector, and this image is rendered inside other people's pages.

Base URL
https://api.signclad.com/api/v1
Authentication
API key or OAuth 2.1 access token

Path parameters

Name Type Description
id string (uuid) The API application's id.

Request body

multipart/form-data

Property Type Required Description
logo string (binary) Required

Responses

Status Description
201 The application, with its new logo URL.
401 Missing or invalid credentials. Unauthenticated requests are rate limited at 50 per minute.…
403 Authenticated, but not allowed to do this: an insufficient role, a credential type the route refuses, an unenrolled second factor, or a signer acting out of turn. meta.error always says which.…
404 No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative.
422 Validation failed. errors maps a field name to a message string, or to an object keyed by an error code or by a per-item key. Values are never arrays.

Example request

curl -X POST https://api.signclad.com/api/v1/api_applications/{id}/logo \
  -H "X-Api-Key: $SIGNCLAD_API_KEY"

Remove an application logo Extension

Falls back to the workspace's logo, then to none.

Base URL
https://api.signclad.com/api/v1
Authentication
API key or OAuth 2.1 access token

Path parameters

Name Type Description
id string (uuid) The API application's id.

Responses

Status Description
200 The application, without a logo.
401 Missing or invalid credentials. Unauthenticated requests are rate limited at 50 per minute.…
403 Authenticated, but not allowed to do this: an insufficient role, a credential type the route refuses, an unenrolled second factor, or a signer acting out of turn. meta.error always says which.…
404 No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative.

Example request

curl -X DELETE https://api.signclad.com/api/v1/api_applications/{id}/logo \
  -H "X-Api-Key: $SIGNCLAD_API_KEY"