Skip to content

Account-wide revokeNotificationPushSubscription

POST
/katara/v1/notifications/push/account/subscriptions/{id}/revoke
curl --request POST \
--url https://api.katara.com/katara/v1/notifications/push/account/subscriptions/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/revoke \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: 2489E9AD-2EE2-8E00-8EC9-32D5F69181C0' \
--header 'X-Katara-CSRF: 1' \
--data '{ "expected_version": 1, "scope": "account" }'

Explicit current-human account ownership; no organization access is granted. Up to eight active account devices, merged with at most eight environment devices and deduplicated by private endpoint identity. Current source permissions and preferences apply to every event; Test delivery remains intercepted. Preserve exact request and operation UUID after uncertainty. Historical metadata is not current delivery authority.

id
required
string format: uuid
/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/
Allowed value: 00000000-0000-0000-0000-000000000000
Idempotency-Key
required
string format: uuid
/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/
Allowed value: 00000000-0000-0000-0000-000000000000
X-Katara-CSRF
Allowed value: 1

Browser cookie mutations require value 1 and an allowed Origin. Session bearer clients may omit this header.

Media typeapplication/json
object
expected_version
required
integer
>= 1 <= 9007199254740991
scope
required
Allowed value: account

Safe current metadata or immutable historical operation metadata.

Media typeapplication/json
object
id
required
string format: uuid
/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/
Allowed value: 00000000-0000-0000-0000-000000000000
provider_id
required
string
/^[A-Za-z0-9_-]{1,64}$/
application_server_key
required
string
/^B[A-Za-z0-9_-]{86}$/
expires_at
required
string format: date-time
/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.\d{1,6})?Z$/
version
required
integer
>= 1 <= 9007199254740991
state
required
Allowed values: active revoked
created_at
required
string format: date-time
/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.\d{1,6})?Z$/
revoked_at
string format: date-time
/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.\d{1,6})?Z$/
scope
required
Allowed value: account
Example
{
"state": "active",
"scope": "account"
}
Cache-Control
string
Allowed value: no-store

Request refused or service unavailable

Media typeapplication/json
object
error
required
object
message
required
string
>= 1 characters <= 500 characters
type
required
string
>= 1 characters <= 100 characters
code
required

Stable; branch on it. Any operation can answer invalid_request, with param naming the refused field when there is one; human_session_required, when an API key, service account or workload calls an operation only a signed-in person may perform; reauthentication_required, when a person’s sign-in is too old for the operation; permission_denied; route_not_found and method_not_allowed, when no operation matches the path or method; and feature_unavailable, when the operation’s service is not enabled on this deployment.

string
>= 1 characters <= 100 characters
param
required

The request field a refusal is about, such as the agent_id or run_id query parameter; null when the refusal is not about one field.

string | null
request_id
required
string
>= 1 characters <= 100 characters
upstream_status
required
integer | null
action
Allowed values: sign_in reauthenticate request_access review fund retry reconcile refresh support
operation_id
string format: uuid
/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/
Allowed value: 00000000-0000-0000-0000-000000000000
snapshot_ref
string format: uuid
/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/
Allowed value: 00000000-0000-0000-0000-000000000000
Example
{
"error": {
"action": "sign_in"
}
}