Update an OAuth client
Changes a client in place. An omitted field is left as it stands, including token_endpoint_auth: send one only to change the method or rotate the secret. The client keeps its id, so every credential connected through it refreshes with what it holds now. The endpoints and client_id cannot change, since the credentials connected through the client present their refresh tokens there: create another client for another provider.
PATCH
/v1/oauth-clients/{oauth_client_id}Authorization
AuthorizationBearer token · headerrequiredPath parameters
oauth_client_idstring<uuid>requiredOAuth client id
Request body
requiredapplication/jsonauthorization_paramsAuthorizationParamBody[] | nullmax items 16
Show propertiesHide properties
Array of
AuthorizationParamBodynamestringrequiredLetters, digits, and `-._~`; none Subako sets itself (`response_type`,
`client_id`, `redirect_uri`, `state`, `code_challenge`,
`code_challenge_method`, `scope`, `resource`).
min length 1 · max length 64
valuestringrequiredmax length 512
display_namestring | nullmax length 200
scopesOAuthScopeBody[] | nullmax items 64
token_endpoint_authany | TokenEndpointAuthBodyShow propertiesHide properties
One of:
any
anyTokenEndpointAuthBody
One of:
object
methodstringrequiredAllowed:
noneobject
client_secretstringrequiredmin length 1 · max length 1024
methodstringrequiredAllowed:
client_secret_postobject
client_secretstringrequiredmin length 1 · max length 1024
methodstringrequiredAllowed:
client_secret_basicResponses
200The updated client. Carries no secret.
authorization_endpointstringrequiredauthorization_paramsAuthorizationParamBody[]requiredShow propertiesHide properties
Array of
AuthorizationParamBodynamestringrequiredLetters, digits, and `-._~`; none Subako sets itself (`response_type`,
`client_id`, `redirect_uri`, `state`, `code_challenge`,
`code_challenge_method`, `scope`, `resource`).
min length 1 · max length 64
valuestringrequiredmax length 512
client_idstringrequiredcreated_atstring<date-time>requireddisplay_namestringrequiredidstring<uuid>requiredscopesOAuthScopeBody[]requiredtoken_endpointstringrequiredtoken_endpoint_auth_methodTokenEndpointAuthMethodBodyrequiredHow the client authenticates at the token endpoint, without its secret.
Allowed:
noneclient_secret_postclient_secret_basicupdated_atstring<date-time>requiredworkspace_idstring<uuid>required400Malformed body, path parameter, a field outside its bound, or a field that cannot change.
errorErrorDetailrequiredWhat went wrong: a `code` to branch on and a `message` to show. The
message is written for a person and may change; the code will not.
Show propertiesHide properties
codeErrorCoderequiredThe machine-readable half of an error response, and the field a client
branches on. Closed: every error carries exactly one of these.
Allowed:
unauthorizedforbiddennot_foundinvalid_requestconflictclient_outdatedprecondition_failedtoo_many_requestsinternalmessagestringrequired401Missing, malformed, or invalid bearer token.
errorErrorDetailrequiredWhat went wrong: a `code` to branch on and a `message` to show. The
message is written for a person and may change; the code will not.
Show propertiesHide properties
codeErrorCoderequiredThe machine-readable half of an error response, and the field a client
branches on. Closed: every error carries exactly one of these.
Allowed:
unauthorizedforbiddennot_foundinvalid_requestconflictclient_outdatedprecondition_failedtoo_many_requestsinternalmessagestringrequired403Caller lacks vault.manage.
errorErrorDetailrequiredWhat went wrong: a `code` to branch on and a `message` to show. The
message is written for a person and may change; the code will not.
Show propertiesHide properties
codeErrorCoderequiredThe machine-readable half of an error response, and the field a client
branches on. Closed: every error carries exactly one of these.
Allowed:
unauthorizedforbiddennot_foundinvalid_requestconflictclient_outdatedprecondition_failedtoo_many_requestsinternalmessagestringrequired404No such client, or the caller cannot see it.
errorErrorDetailrequiredWhat went wrong: a `code` to branch on and a `message` to show. The
message is written for a person and may change; the code will not.
Show propertiesHide properties
codeErrorCoderequiredThe machine-readable half of an error response, and the field a client
branches on. Closed: every error carries exactly one of these.
Allowed:
unauthorizedforbiddennot_foundinvalid_requestconflictclient_outdatedprecondition_failedtoo_many_requestsinternalmessagestringrequired