{"command":{"effect":"write","timeoutSeconds":30,"inputSchema":{"type":"object","description":"Updates a relay's name and/or configuration. The relay ID goes in\nthe URL path — `PUT /accounts/{account_id}/moq/relays/{relay_id}` —\nnot the request body; there is no collection-level update endpoint.\nThis is also the only way to set a relay's config (config cannot be\nset at create time). Partial updates: omitted fields are preserved;\nconfig sub-objects replace as whole objects when present.\n","properties":{"path":{"type":"object","properties":{"account_id":{"$ref":"#/definitions/moq_account_identifier","description":"Cloudflare account identifier."},"relay_id":{"type":"string","pattern":"^[0-9a-f]{32}$","examples":["a1b2c3d4e5f67890a1b2c3d4e5f67890"],"description":"Relay unique identifier (32 hex characters)."}},"required":["account_id","relay_id"],"additionalProperties":false},"body":{"type":"object","properties":{"config":{"allOf":[{"$ref":"#/definitions/moq_relay_config"}]},"name":{"type":"string"}}}},"required":["path","body"],"additionalProperties":false,"definitions":{"moq_account_identifier":{"description":"Cloudflare account identifier.","type":"string","examples":["023e105f4ecef8ad9ca31a8372d0c353"]},"moq_relay_config":{"description":"Relay configuration. All sub-objects use whole-object replacement when\npresent; omitted sub-objects preserve the existing value.\n","type":"object","properties":{"upstreams":{"$ref":"#/definitions/moq_upstreams"}}},"moq_upstreams":{"description":"Upstreams are external MOQT server publishers that a relay falls back\nto when it has no local publisher for a requested namespace/track.\n","type":"object","properties":{"enabled":{"type":"boolean","default":false},"upstreams":{"description":"Ordered list of upstream MOQT server publishers. Each entry is an\nobject (not a bare string) so per-upstream configuration can be\nadded in the future without another breaking change.\n","type":"array","items":{"$ref":"#/definitions/moq_upstream"},"default":[]}}},"moq_upstream":{"description":"A single upstream MOQT server publisher.","type":"object","properties":{"url":{"description":"Upstream MOQT server publisher URL. Must be an absolute URL with a\nhost and a scheme the relay can dial: moqt:// (raw QUIC) or https://\n(WebTransport). Validated on update (PUT); rejected with 21013.\n","type":"string","format":"uri"}},"required":["url"]}}},"name":"Update a relay","id":"cloudflare.moq-relays-update","example":{"path":{"account_id":"023e105f4ecef8ad9ca31a8372d0c353","relay_id":"a1b2c3d4e5f67890a1b2c3d4e5f67890"},"body":{}},"maxRequests":1,"summary":false}}