Menu
Platform
AI
Analytics
App store purchases
Credits
Database
Flags
Generated Assets
Monitoring
Organizations
Payments
- Payments
- Payments quickstart
- Checkout policies
- Checkout sessions
- Customer subscriptions
- Entitlement grants
- Exchange rates
- Licence keys
- Licence tokens
- Merchant accounts
- Portal sessions
- Price catalogs
- Revenue
- Revenue facts
- Revenue sources
- Tax threshold statuses
- Usage events
- Usage invoices
- Usage meter prices
- Usage meters
- Usage reservations
- Usage settings
- Usage tiers
Queues
Realtime
Sandboxes
Webhooks
Getting Started
Authentication
KV Store
Deploy & Infrastructure
Reference
Update a message topic
Updates a message topic; with `allow_missing`, creates it.
Updates a message topic; with allow_missing, creates it.
- Path
PATCH https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/message_topics/message-topic - Scope
notify:write - Effect
write— a successful call changes state. - Collection message_topics
- Query
update_mask,allow_missing,validate_only
#Request
| Field | Type | What it is |
|---|---|---|
message_topic | MessageTopic | The message topic to update; name identifies it. Required. |
update_mask | field_mask | The fields to write; unset writes every populated field. |
allow_missing | bool | Create the message topic when it does not exist (declarative upsert). |
validate_only | bool | Validate and return the result without writing anything. |
#MessageTopic
| Field | Type | What it is |
|---|---|---|
name | string | orgs/{org}/projects/{project}/envs/{env}/message_topics/{message_topic}. |
meta | ResourceMeta | Resource metadata. |
required_feature | string | A Money feature key the recipient must hold (entitlement_grants:check for the Recipient's external_key as the end user). A message to a recipient that does not hold it is recorded SUPPRESSED with state_reason entitlement; when Money cannot answer, the create fails with 503 and writes nothing. The sending key must also hold billing:read. Unset admits every recipient. |
send_limit_feature | string | A Money limit feature whose allowance is the most messages on this topic one recipient receives per send_limit_window. A message over it, or to a recipient that holds no allowance, is recorded RATE_LIMITED and its create answers 429. Unset: no topic limit. |
send_limit_window | duration | The window the allowance counts over: 1 minute to 24 hours; default 24 hours. |
#ResourceMeta
| Field | Type | What it is |
|---|---|---|
labels | map<string, string> | Caller-writable, indexed labels (AIP-122 label rules). |
annotations | map<string, string> | Caller-writable, unindexed annotations. |
display_name | string | Caller-writable human-readable name. |
#Response
| Field | Type | What it is |
|---|---|---|
name | string | orgs/{org}/projects/{project}/envs/{env}/message_topics/{message_topic}. |
uid | string | tpc_<cell><ulid>; never reused. Output only. |
meta | ResourceMeta | Resource metadata. |
required_feature | string | A Money feature key the recipient must hold (entitlement_grants:check for the Recipient's external_key as the end user). A message to a recipient that does not hold it is recorded SUPPRESSED with state_reason entitlement; when Money cannot answer, the create fails with 503 and writes nothing. The sending key must also hold billing:read. Unset admits every recipient. |
send_limit_feature | string | A Money limit feature whose allowance is the most messages on this topic one recipient receives per send_limit_window. A message over it, or to a recipient that holds no allowance, is recorded RATE_LIMITED and its create answers 429. Unset: no topic limit. |
send_limit_window | duration | The window the allowance counts over: 1 minute to 24 hours; default 24 hours. |
#ResourceMeta
| Field | Type | What it is |
|---|---|---|
generation | int64 | Increases by one on every change to spec. Output only. |
etag | string | Strong ETag (AIP-154): changes on any change to spec, status, or metadata. Send it back as If-Match or etag to make Update and Delete conditional; a mismatch fails with ABORTED / 409 ETAG_MISMATCH. Output only. |
create_time | timestamp | When the Resource was created. Output only. |
update_time | timestamp | When the Resource last changed. Output only. |
delete_time | timestamp | Set while the Resource is being deleted. Output only. |
labels | map<string, string> | Caller-writable, indexed labels (AIP-122 label rules). |
annotations | map<string, string> | Caller-writable, unindexed annotations. |
display_name | string | Caller-writable human-readable name. |
creator | string | The principal that created the Resource. Output only. |
#Errors
UNAUTHENTICATED— No valid key or token was presented.PERMISSION_DENIED— The key lacks the method's permission.RESOURCE_NOT_FOUND— The named Resource does not exist or is not visible.UNKNOWN_FIELD— The request has a field the schema does not know.INVALID_FIELD— A field failed validation.ETAG_MISMATCH— The etag sent does not match the Resource's current etag.IDEMPOTENCY_KEY_REUSED— An Idempotency-Key was reused with another body.IDEMPOTENCY_IN_PROGRESS— The first call with this Idempotency-Key is still running.
Every error arrives in the body Errors describes.
#Examples
curl -X PATCH "https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/message_topics/message-topic" \
-H "Authorization: Bearer $SYLPHX_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"orgs/acme/projects/shop/envs/production/message_topics/message-topic"}'