{"command":{"effect":"write","timeoutSeconds":30,"inputSchema":{"type":"object","description":"Update an existing OAuth client. Only include fields you want to update.","properties":{"path":{"type":"object","properties":{"account_id":{"$ref":"#/definitions/iam_account_identifier"},"oauth_client_id":{"$ref":"#/definitions/iam_oauth_client_identifier"}},"required":["account_id","oauth_client_id"],"additionalProperties":false},"body":{"$ref":"#/definitions/iam_oauth_client_update_request"}},"required":["path","body"],"additionalProperties":false,"definitions":{"iam_account_identifier":{"description":"Account identifier tag.","allOf":[{"$ref":"#/definitions/iam_common_components-schemas-identifier"}],"title":"Account Identifier"},"iam_oauth_client_identifier":{"description":"The unique identifier for an OAuth client.","type":"string","title":"OAuth Client Identifier","examples":["a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"]},"iam_oauth_client_update_request":{"description":"Partial update request for an OAuth client. Only include fields you want to update.","allOf":[{"$ref":"#/definitions/iam_oauth_client_common"},{"properties":{"visibility":{"description":"Promote the OAuth client from private to public visibility. Only `public` is accepted; demotion to `private` is not supported. Promotion requires a non-empty client name, logo URI, verified client URI host, and at least one non-identity scope.","type":"string","enum":["public"],"examples":["public"]}},"type":"object"}],"title":"Update OAuth Client Request"},"iam_common_components-schemas-identifier":{"description":"Identifier","type":"string","maxLength":32,"minLength":32,"examples":["023e105f4ecef8ad9ca31a8372d0c353"]},"iam_oauth_client_common":{"description":"Fields shared by OAuth client responses and create/update requests.","type":"object","properties":{"allowed_cors_origins":{"description":"Array of allowed CORS origins.","type":"array","items":{"type":"string"},"examples":[["https://example.com"]]},"client_name":{"description":"Human-readable name of the OAuth client.","type":"string","examples":["My OAuth App"]},"client_uri":{"description":"URL of the home page of the client.","type":"string","examples":["https://example.com"]},"grant_types":{"$ref":"#/definitions/iam_oauth_client_grant_types"},"logo_uri":{"description":"URL of the client's logo.","type":"string","examples":["https://example.com/logo.png"]},"optional_scopes":{"description":"Scopes that the authorizing user may decline during consent. Each value must also appear in `scopes`. The scopes `openid`, `offline`, and `offline_access` cannot be optional.","type":"array","items":{"type":"string"},"examples":[["account.write"]]},"policy_uri":{"description":"URL that points to a privacy policy document.","type":"string","examples":["https://example.com/privacy"]},"post_logout_redirect_uris":{"description":"Array of allowed post-logout redirect URIs.","type":"array","items":{"type":"string"},"examples":[["https://example.com/logout"]]},"redirect_uris":{"description":"Array of allowed redirect URIs for the client.","type":"array","items":{"type":"string"},"examples":[["https://example.com/callback"]]},"response_types":{"$ref":"#/definitions/iam_oauth_client_response_types"},"scopes":{"description":"Array of OAuth scopes the client is allowed to request. Colon-delimited scopes are not accepted. Dot-delimited scopes are validated against available OAuth API scopes; simple identity scopes are allowed. Protocol scopes `offline_access` and `openid` are added or removed automatically based on `grant_types` and `response_types`.","type":"array","items":{"type":"string"},"examples":[["account.read"]]},"token_endpoint_auth_method":{"$ref":"#/definitions/iam_oauth_client_token_endpoint_auth_method"},"tos_uri":{"description":"URL that points to a terms of service document.","type":"string","examples":["https://example.com/tos"]}},"title":"OAuth Client Common Fields"},"iam_oauth_client_grant_types":{"description":"Array of OAuth grant types the client is allowed to use. `authorization_code` is required; `refresh_token` may be included optionally.","type":"array","items":{"enum":["authorization_code","refresh_token"],"type":"string"},"examples":[["authorization_code","refresh_token"]]},"iam_oauth_client_response_types":{"description":"Array of OAuth response types the client is allowed to use.","type":"array","items":{"enum":["token","id_token","code"],"type":"string"},"examples":[["code"]]},"iam_oauth_client_token_endpoint_auth_method":{"description":"The authentication method the client uses at the token endpoint.","type":"string","enum":["none","client_secret_basic","client_secret_post"],"examples":["client_secret_post"]}}},"name":"Update OAuth Client","id":"cloudflare.oauth-clients-update","example":{"path":{"account_id":"023e105f4ecef8ad9ca31a8372d0c353","oauth_client_id":"a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"},"body":{}},"maxRequests":1,"summary":false}}