Requesting a Digital Signature Key
A digital signature key is required before you can subscribe to webhooks notifications. The API
request to generate the digital signature key is documented in this section. We use the
digital signature key to add a unique signature to each notification. You can use the digital
signature key to validate the integrity of webhooks notifications and prevent replay attacks.
To verify the integrity of a notification payload using the digital signature key, see Notification Validation.
To request the service, use the endpoint specified below. After you send the request, check the
response message to verify that the request was successful. A 200-level response code
indicates success.
For information about response codes, see
Transaction Response Codes
.Endpoint
- Test:POSTapitest.cybersource.com/kms/egress/v2/keys-sym
- Production:POSTapi.cybersource.com/kms/egress/v2/keys-sym
- Productionin India:POST api.in.cybersource.com/kms/egress/v2/keys-sym
Required Fields for Requesting a Digital Signature Key
-
clientRequestAction
-
Set the value toCREATE.
-
keyInformation.expiryDuration
-
keyInformation.keyType
-
Set the value tosharedSecret.
-
keyInformation.organizationId
-
Set the value to the organization ID of the organization requesting the key.
-
keyInformation.provider
-
Set the value tonrtd.
-
keyInformation.tenant
-
Set the value to the organization ID of the organization requesting the key.
Required Headers
-
v-c-permissions
-
v-c-sender-organization-id
Example: Requesting a Digital Signature Key
Create Webhook Symmetric Key
{ "clientRequestAction": "CREATE", "keyInformation": { "provider": "nrtd", "tenant": "merchantName", "keyType": "sharedSecret", "organizationId": "merchantName" } }
{ "submitTimeUtc": "2021-03-17T06:53:06+0000", "status": "SUCCESS", "keyInformation": { "provider": "NRTD", "tenant": "merchantName", "organizationId": "merchantName", "keyId": "bdc0fe52-091e-b0d6-e053-34b8d30a0504", //ID associated with the key in the key field "key": "u3qgvoaJ73rLJdPLTU3moxrXyNZA4eo5dklKtIXhsAE=", //Base64 encoded key "keyType": "sharedSecret", "status": "Active", "expirationDate": "2022-03-17T06:53:06+0000" }