Organization Status Update Notification
WEBHOOK: POSThttps://<YOUR_WEBHOOK_URI> event_type: organization_management.status_updated
Event indicating that an organization’s status is updated.
¶ Retry Attempts
If for some reason the Uber API cannot reach the webhook URL you specified either due to networking issues or application issues on your end, the webhooks service will retry to make a request.
We have implemented an exponential back-off algorithm with a back-off multiplier of 30 seconds which will make up to 7 attempts. This means we will attempt to request your webhook URL up to 7 times across roughly 1 hour.
¶ Webhook Headers
The Uber API will insert specialized headers for all requests made to your webhook URL to help your application utilize them appropriately.
Header | Description |
---|---|
X-Environment |
Indicates if this request is coming from the production or sandbox API. |
X-Uber-Signature |
SHA256 hash of the request body, computed using the app’s signing key as the key. |
¶ Webhook Security
Webhook messages are signed so that your app can verify that the sender is Uber. Webhooks requests contain an X-Uber-Signature
header. The value of this field is a hexadecimal HMAC signature of the webhook HTTP request body, using signing key of primary webhook url as a key and SHA256 as the hash function.
Python Example
digester = hmac.new(signing_key, webhook_body, hashlib.sha256)
return digester.hexdigest()
¶ Polling
For critical applications, we recommend complementing your webhook’s implementation with regular polling in case webhook notifications are lost.
¶ Webhook Event Structure
Name | Type | Description |
---|---|---|
event_type |
string |
The type of event that occurred. |
organization_id |
string |
The unique identifier of the organization. |
status |
string |
The current status of the organization. Below are the possible values:ACTIVE INACTIVE |
webhook_meta |
object |
The object containing additional information that is specific to the webhook . |
webhook_meta.client_id |
string |
Client ID of the developer application |
webhook_meta.webhook_config_id |
string |
Unique identifier of the webhook type. |
webhook_meta.webhook_msg_timestamp |
integer |
Unix timestamp of the time the webhook event was pushed. |
webhook_meta.webhook_msg_uuid |
string |
Unique identifier, which can be used to ensure that the webhooks are digested only once. |
organization_name |
string |
The name of the organization |
action |
string |
Action Taken on the Organization. Below are the possible values:CREATED UPDATED DELETED |
reason |
string (optional) |
Optional Reason for event being triggered. Below are the possible values: CARD_PENDING DELETED ADMIN_LIMITED_ACCESS_ORG_ROLE ADMIN_FULL_ACCESS_ORG_ROLE |
¶ Example Webhook
{
"event_type": "organization_management.status_updated",
"organization_id": "21ab5812-9435-4883-a320-dfb09dabcefg",
"status": "ACTIVE",
"organization_name":"Organization Name",
"action":"UPDATED",
"reason":"ADMIN_FULL_ACCESS_ORG_ROLE",
"webhook_meta": {
"client_id": "uDfYYQXG8GKuc47JVIwxyzspOB_AbcDe",
"webhook_config_id": "u4b-business.organization-status-updated",
"webhook_msg_timestamp": 1676458033,
"webhook_msg_uuid": "f543d5e2-ea44-41e5-a395-e7fc9344a0e7"
}
}