POST
/
api
/
v1
/
platform
/
tenants
/
{tenant_id}
/
nats
/
resources
Create NATS subject grant
curl --request POST \
  --url https://api.example.com/api/v1/platform/tenants/{tenant_id}/nats/resources \
  --header 'Content-Type: application/json' \
  --header 'X-Api-Id: <x-api-id>' \
  --header 'X-Api-Nonce: <x-api-nonce>' \
  --header 'X-Api-Signature: <api-key>' \
  --header 'X-Api-Timestamp: <x-api-timestamp>' \
  --data '
{
  "principal_id": "nats_principal_001",
  "allowed_publish_subjects": [
    "tenant.tenant_001.command.accepted"
  ],
  "allowed_subscribe_subjects": [],
  "status": "ACTIVE",
  "expires_at": null
}
'
{
  "resource_id": "nats_resource_001",
  "tenant_id": "tenant_001",
  "principal_id": "nats_principal_001",
  "allowed_publish_subjects": [
    "tenant.tenant_001.command.accepted"
  ],
  "allowed_subscribe_subjects": [],
  "status": "ACTIVE",
  "request_id": "req-001"
}

Authorizations

X-Api-Signature
string
header
required

UTMOS HMAC request signature with X-Api-Id, X-Api-Timestamp and X-Api-Nonce.

Headers

X-Api-Id
string
required

Platform or tenant administrator credential

X-Api-Timestamp
string
required

Unix seconds

X-Api-Nonce
string
required

Replay-protection nonce

X-Api-Signature
string
required

HMAC signature

X-Request-Id
string

Caller correlation ID; generated when omitted

Path Parameters

tenant_id
string
required

Tenant identifier

Body

application/json
principal_id
string
required
allowed_publish_subjects
string[]
allowed_subscribe_subjects
string[]
status
enum<string>
Available options:
ACTIVE,
DISABLED,
DELETED
expires_at
string<date-time> | null

Response

Created

resource_id
string
tenant_id
string
principal_id
string
allowed_publish_subjects
string[]
allowed_subscribe_subjects
string[]
status
enum<string>
Available options:
ACTIVE,
DISABLED,
DELETED
request_id
string