# Receive Authorization Status Change Notification This endpoint should be implemented by Software Services to receive authorization status change notifications from Keeta system. > This is an endpoint you need to implement on your server. You can log in to the Developer Portal, where there is a webhook configuration section. You can configure webhooks there. Please focus only on the webhook configuration for Formal Store. 1301 represents the webhook for new authorization notifications, and 1302 represents the webhook for authorization cancellation notifications. - Merchant adds new store authorization - Merchant cancels store authorization - HTTP POST - application/json - Recommended within 5 seconds - Must return 200 for success - JSON with code and message fields - Use authId and opType to ensure operation idempotency - Respond quickly, process business logic asynchronously - Log all received notifications for troubleshooting - Set up monitoring and alerting for webhook reception HOST: DIRECTION: Endpoint: POST /webhook/authorization Version: v.1.0.6 ## Header parameters: - `X-App-Signature` (string, required) SHA256 hash of the request body, using the client secret as the key ## Request fields (application/json): - `clientId` (integer, required) Application ID identifying the Software Services application Example: 2666245991 - `authId` (string, required) Authorization ID that uniquely identifies a specific authorization session. Each authorization generates a unique authId. There are two ways to obtain the authId: 1. Merchant authorization redirect - the authId is included in the redirect URL 2. Keeta Authorization Webhook - the authId is provided in the webhook payload Please refer to the following for the specific workflow:[Merchant Self-serve Authorization](#tag/Merchant-Self-serve-Authorization) Example: "41008" - `opType` (integer, required) Operation type: 1 = Add authorization, 2 = Cancel authorization Enum: 1, 2 - `shopId` (integer, required) Store ID Example: 478268 - `shopName` (string, required) Store name Example: "10 Shanghai" - `createTime` (integer, required) Event timestamp in milliseconds Example: 1753151456973 ## Response 400 fields (application/json): - `status` (integer, required) Response code, 0 indicates success - `title` (string, required) Response message Example: "success" ## Response 500 fields (application/json): - `status` (integer, required) Response code, 0 indicates success - `title` (string, required) Response message Example: "success"