UpdateOAuthCredential
Updates a given OAuth API Client Credential.
Request Parameters
Parameter |
Type |
Description |
Required |
action |
string |
“UpdateOAuthCredential” |
Required |
credentialId |
int |
The auto increment ID of the credential set to be updated |
Required |
clientApiIdentifier |
string |
The OAuth API Client Credential Unique Identifier (Client ID) to be updated. Only required if credentialId is not known/passed. |
Optional |
name |
string |
The name to assign |
Optional |
description |
string |
The description to assign |
Optional |
grantType |
string |
The grant type for which the credential set is valid for. Possible values include: authorization_code or single_sign_on |
Optional |
scope |
string |
A space delimited list of the scopes for which the credential set is valid. See CreateOAuthCredential for permitted values |
Optional |
serviceId |
int |
The service ID for which the credential relates to |
Optional |
logoUri |
string[] |
he logoUri to assign |
Optional |
redirectUri |
string |
An array of Authorized Redirect URIs |
Optional |
resetSecret |
bool |
Set to true to reset the OAuth API Client Credential Secret |
Optional |
Response Parameters
Parameter |
Type |
Description |
result |
string |
The result of the operation: success or error |
credentialId |
int |
The auto increment ID for the credential set |
newClientSecret |
string |
Present only if resetSecret is passed as true |
Example Request (CURL)
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.example.com/includes/api.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
http_build_query(
array(
'action' => 'UpdateOAuthCredential',
// See https://developers.whmcs.com/api/authentication
'username' => 'IDENTIFIER_OR_ADMIN_USERNAME',
'password' => 'SECRET_OR_HASHED_PASSWORD',
'credentialId' => '1',
'name' => 'Credential name',
'resetSecret' => true,
'responsetype' => 'json',
)
)
);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
Example Request (Local API)
$command = 'UpdateOAuthCredential';
$postData = array(
'credentialId' => '1',
'name' => 'Credential name',
'resetSecret' => true,
);
$adminUsername = 'ADMIN_USERNAME'; // Optional for WHMCS 7.2 and later
$results = localAPI($command, $postData, $adminUsername);
print_r($results);
Example Response JSON
{
"result": "success",
"credentialId": "1",
"newClientSecret": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
Error Responses
Possible error condition responses include:
- A Credential ID or Client Identifier is required.
- Invalid Credential ID provided.
- Invalid Client Identifier provided.
- The requested grant type “xxxxx” is invalid.
- A name for the Client Credential is required.
- A service ID is required for the single sign-on grant type.
- The requested scope “xxxxxxx” is invalid.
Version History
Version |
Changelog |
6.2.0 |
Initial Version |