Admin API
Staff-only. Every route answers `404` to everyone else, so the existence of the surface is never confirmed to a stranger.
Updated
On this page
- GET /admin/lookup
- GET /admin/accounts/{account}
- GET /admin/accounts/{account}/members
- GET /admin/accounts/{account}/keys
- GET /admin/accounts/{account}/webhooks
- GET /admin/accounts/{account}/documents
- GET /admin/accounts/{account}/audit
- PATCH /admin/accounts/{account}/plan
- POST /admin/accounts/{account}/unban
- GET /admin/accounts/{account}/refunds
- POST /admin/accounts/{account}/refunds
- POST /admin/documents/{document}/cancel
- POST /admin/documents/{document}/complete
- POST /admin/documents/{document}/release
- POST /admin/documents/{document}/resend
- POST /admin/impersonate/{user}
- POST /admin/impersonate/stop
- GET /admin/abuse/queue
- GET /admin/abuse/{report}
- POST /admin/abuse/{report}/release
- POST /admin/abuse/{report}/cancel
- POST /admin/abuse/{report}/ban
22 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
/admin/lookupFind an account - GET
/admin/accounts/{account}Get an account overview - GET
/admin/accounts/{account}/membersList an account's members - GET
/admin/accounts/{account}/keysList an account's API keys - GET
/admin/accounts/{account}/webhooksList an account's webhook endpoints - GET
/admin/accounts/{account}/documentsList an account's documents - GET
/admin/accounts/{account}/auditRead an account's audit log - PATCH
/admin/accounts/{account}/planOverride an account's plan - POST
/admin/accounts/{account}/unbanLift a suspension - GET
/admin/accounts/{account}/refundsList refunds - POST
/admin/accounts/{account}/refundsIssue a refund - POST
/admin/documents/{document}/cancelCancel a document - POST
/admin/documents/{document}/completeManually complete a document - POST
/admin/documents/{document}/releaseRelease a blocked document - POST
/admin/documents/{document}/resendResend a document's invitations - POST
/admin/impersonate/{user}Start impersonating a user - POST
/admin/impersonate/stopStop impersonating - GET
/admin/abuse/queueRead the abuse review queue - GET
/admin/abuse/{report}Get an abuse report - POST
/admin/abuse/{report}/releaseRelease a reported document - POST
/admin/abuse/{report}/cancelCancel the reported document - POST
/admin/abuse/{report}/banSuspend the workspace
GET /admin/lookup
Find an account Extension
Staff only. One search box over workspace ids, account ids, document ids, API key prefixes,
emails, and names; matched_by says which one hit. At most 20 results, and the search itself
is written to the staff audit log.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
q | string | Optional | Anything identifying. An empty query returns an empty list. |
Responses
| Status | Description |
|---|---|
200 | The matches. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/lookup \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/accounts/{account}
Get an account overview Extension
Staff only. The workspace, its billing account, the current period's usage, the counts a support engineer asks for first, and the abuse reputation score.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Responses
| Status | Description |
|---|---|
200 | The overview. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/accounts/{account} \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/accounts/{account}/members
List an account's members Extension
Staff only. Archived memberships included, with whether each has MFA enrolled.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Responses
| Status | Description |
|---|---|
200 | The members. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/accounts/{account}/members \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/accounts/{account}/keys
List an account's API keys Extension
Staff only. Prefixes and usage, never a secret or a hash — this view answers "is their key working", not "what is their key".
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Responses
| Status | Description |
|---|---|
200 | The keys. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/accounts/{account}/keys \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/accounts/{account}/webhooks
List an account's webhook endpoints Extension
Staff only. Health and the last failure, for "why are their webhooks not arriving".
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Responses
| Status | Description |
|---|---|
200 | The endpoints. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/accounts/{account}/webhooks \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/accounts/{account}/documents
List an account's documents Extension
Staff only. A metadata-only listing — names, states, counts, error messages. No fields, no recipients' values, no file contents.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
state | string | Optional | Internal state, not the wire status. |
cursor | string | Optional | Opaque cursor from a previous response's next_cursor. |
limit | integer | Optional | Items per page. |
Responses
| Status | Description |
|---|---|
200 | A page of documents. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/accounts/{account}/documents \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/accounts/{account}/audit
Read an account's audit log Extension
Staff only. The same entries the customer can read, flattened.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
cursor | string | Optional | Opaque cursor from a previous response's next_cursor. |
limit | integer | Optional |
Responses
| Status | Description |
|---|---|
200 | A page of entries. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/accounts/{account}/audit \
-H "X-Api-Key: $SIGNCLAD_API_KEY" PATCH /admin/accounts/{account}/plan
Override an account's plan Extension
Staff only. A reason of at least eight characters is required and is written to the staff
audit log — an override nobody can explain later is not an override worth having.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
plan | string | Required | |
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
interval | string or null | Optional |
Responses
| Status | Description |
|---|---|
200 | The account overview, after the change. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
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/admin/accounts/{account}/plan \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/accounts/{account}/unban
Lift a suspension Extension
Staff only. Requires a reason, which is audited.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
Responses
| Status | Description |
|---|---|
200 | The account overview. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
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/admin/accounts/{account}/unban \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/accounts/{account}/refunds
List refunds Extension
Staff only. The 25 most recent refunds on this account.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Responses
| Status | Description |
|---|---|
200 | The refunds. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/accounts/{account}/refunds \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/accounts/{account}/refunds
Issue a refund Extension
Staff only. target is a Stripe invoice or charge id — one starting in_ is read as an
invoice. Over the configured ceiling the refund is refused and must be issued in Stripe with
a second approver.
A gateway failure still answers 200: the refund row exists with status: failed and a
failure_message, because the attempt is part of the record.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
account | string (uuid) | A workspace id, despite the parameter's name — the staff surface is organized by workspace and reports the account behind it. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
amount_cents | integer | Required | |
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
target | string | Required | |
currency | string | Optional |
Responses
| Status | Description |
|---|---|
200 | The refund — successful or failed — and the account's refund history. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
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/admin/accounts/{account}/refunds \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/documents/{document}/cancel
Cancel a document Extension
Staff only, with an audited reason. Crosses workspaces, which is the point.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
document | string (uuid) | The document's id. Staff routes are not scoped to a workspace. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
Responses
| Status | Description |
|---|---|
200 | The document. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
409 | The request is well formed; the resource is not in a state that allows it.… |
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/admin/documents/{document}/cancel \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/documents/{document}/complete
Manually complete a document Extension
Staff only, with an audited reason.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
document | string (uuid) | The document's id. Staff routes are not scoped to a workspace. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
Responses
| Status | Description |
|---|---|
200 | The document. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
409 | The request is well formed; the resource is not in a state that allows it.… |
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/admin/documents/{document}/complete \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/documents/{document}/release
Release a blocked document Extension
Staff only. Lets a document held for abuse review carry on, optionally naming which state to restore it to.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
document | string (uuid) | The document's id. Staff routes are not scoped to a workspace. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
restore_to | string or null | Optional |
Responses
| Status | Description |
|---|---|
200 | The document. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
409 | The request is well formed; the resource is not in a state that allows it.… |
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/admin/documents/{document}/release \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/documents/{document}/resend
Resend a document's invitations Extension
Staff only. Optionally to named addresses; omitted, it goes to everyone still unsigned. The
one admin write that takes no reason, because resending changes nothing.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
document | string (uuid) | The document's id. Staff routes are not scoped to a workspace. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
emails | array of string (email) | Optional |
Responses
| Status | Description |
|---|---|
200 | The document, and who it went to. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
409 | The request is well formed; the resource is not in a state that allows it.… |
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/admin/documents/{document}/resend \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/impersonate/{user}
Start impersonating a user Extension
Staff only, with a reason and optionally a support ticket recorded. Staff accounts cannot
be impersonated, and neither can yourself.
The session runs until POST /admin/impersonate/stop, or until the grant is ended from
another session. There is no expiry.
While a grant is live the admin surface itself answers 404 — an impersonating session is
the customer, not staff.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
user | string | The user to act as. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
ticket | string or null | Optional |
Responses
| Status | Description |
|---|---|
201 | The grant. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
422 | errors.user reads Staff accounts cannot be impersonated. or You are already signed in as yourself. |
Example request
curl -X POST https://api.signclad.com/api/v1/admin/impersonate/{user} \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/impersonate/stop
Stop impersonating Extension
Hands the session back to the staff user. stopped: false means there was nothing to stop,
which is not an error. This is the one admin route reachable while a grant is live.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Responses
| Status | Description |
|---|---|
200 | Stopped, or there was nothing to stop. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X POST https://api.signclad.com/api/v1/admin/impersonate/stop \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/abuse/queue
Read the abuse review queue Extension
Staff only. Reports from signers, from the scorer, and from staff, with the workspace and
document each concerns. An unrecognized status filter is quietly treated as open rather
than refused.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
status | string | Optional | |
cursor | string | Optional | Opaque cursor from a previous response's next_cursor. |
limit | integer | Optional | Items per page. |
Responses
| Status | Description |
|---|---|
200 | A page of reports, and a tally by status. The tally omits statuses with no rows rather than reporting them as zero. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/abuse/queue \
-H "X-Api-Key: $SIGNCLAD_API_KEY" GET /admin/abuse/{report}
Get an abuse report Extension
Staff only. The report, plus up to ten other reports against the same workspace.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
report | string (uuid) | The abuse report's id. |
Responses
| Status | Description |
|---|---|
200 | The report. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
Example request
curl -X GET https://api.signclad.com/api/v1/admin/abuse/{report} \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/abuse/{report}/release
Release a reported document Extension
Staff only. Decides the report was unfounded and lets the document carry on. Only an open
report can be decided; one already reviewed answers 409 naming who reviewed it, and that
check runs before the body is validated.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
report | string (uuid) | The abuse report's id. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
Responses
| Status | Description |
|---|---|
200 | The decided report. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
409 | The request is well formed; the resource is not in a state that allows it.… |
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/admin/abuse/{report}/release \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/abuse/{report}/cancel
Cancel the reported document Extension
Staff only. Cancels the document but leaves the workspace alone.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
report | string (uuid) | The abuse report's id. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
Responses
| Status | Description |
|---|---|
200 | The decided report. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
409 | The request is well formed; the resource is not in a state that allows it.… |
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/admin/abuse/{report}/cancel \
-H "X-Api-Key: $SIGNCLAD_API_KEY" POST /admin/abuse/{report}/ban
Suspend the workspace Extension
Staff only. Suspends the whole workspace, not just the document. `POST /admin/accounts/{account}/unban` is the way back.
- Base URL
https://api.signclad.com/api/v1- Authentication
- API key or OAuth 2.1 access token
Path parameters
| Name | Type | Description |
|---|---|---|
report | string (uuid) | The abuse report's id. |
Request body
application/json
| Property | Type | Required | Description |
|---|---|---|---|
reason | string | Required | Why a staff member did this. At least eight characters, and written to the staff audit log — an override nobody can explain later is not one worth having. |
Responses
| Status | Description |
|---|---|
200 | The decided report. |
403 | Staff, but without a second factor enrolled. This is the only non-404 refusal on the staff surface: everybody else — a stranger, a customer, an API key, an impersonating session — gets 404, so… |
404 | No such record for this workspace. Signclad never answers 404 for a record that exists: a 404 is authoritative. |
409 | The request is well formed; the resource is not in a state that allows it.… |
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/admin/abuse/{report}/ban \
-H "X-Api-Key: $SIGNCLAD_API_KEY"