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 - PATCH
/api_applications/{id}Update an API application - DELETE
/api_applications/{id}Delete an API application - GET
/api_applicationsList API applications - POST
/api_applicationsCreate an API application - POST
/api_applications/{id}/logoUpload an application logo - DELETE
/api_applications/{id}/logoRemove an application logo
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" POST /api_applications/{id}/logo
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" DELETE /api_applications/{id}/logo
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"