{"openapi":"3.1.0","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"https://api.bring.com","description":"Generated server url"}],"paths":{"/event-cast/batch/api/v1/webhooks":{"post":{"tags":["batch-webhook-controller"],"summary":"Register webhook on multiple tracking numbers","description":"\n            Create a range of new Webhooks based on a list of any parcel or shipment. Webhooks lives for up to 30 days,\n            or until the entity subscribed for is marked as <b>Delivered by Bring</b>.\n            <br><br>\n            <b>Note:</b> Subscription is allowed only on package and shipment numbers, and not on reference number or label free code.\n            ","operationId":"subscribe","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BatchSubscriptionWebhook"},"examples":{"Create multiple webhook":{"description":"Create multiple webhook","value":{"trackingIds":["TESTSWIPBOXBANKIDVERIFICATIONSE","TESTORDERHOMEDELIVERYDK"],"configuration":{"url":"http://localhost:8888/some/random/location","content_type":"application/json","headers":[{"key":"x-protection-header","value":"12345-67890"},{"key":"x-required-company-header","value":"company@identification"}]},"event_groups":["DELIVERED"]}}}}},"required":true},"responses":{"200":{"description":"Created","content":{"application/json":{"schema":{"type":"string"},"examples":{"Success response":{"description":"Success response","value":{"id":"c21b8754-271b-47e9-afd2-31e1b3804c45","authenticator":"abcThis-isAn-Authentication-Combination-123ABC","configuration":{"url":"http://localhost:8888/some/random/location","content_type":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"trackingId":"TESTSWIPBOXBANKIDVERIFICATIONSE","event_groups":["DELIVERED","IN_TRANSIT","DEVIATION"],"expiry":"2022-11-23T07:40:31+0000","created":"2022-10-24T07:40:31+0000"}}}}}},"400":{"description":"Authentication failed. Please set the mybring API login headers (X-MyBring-API-Uid and X-MyBring-API-Key) to a valid combination.","content":{"plain/text, application/json":{}}},"500":{"description":"Internal Server Error","content":{"plain/text":{}}},"409":{"description":"Conflict","content":{"application/json":{"examples":{"Conflict response":{"description":"Conflict response","value":{"uuid":"023036","status":"409","reason":"Webhook Subscription already exists."}}}}}}},"security":[{"apiKey":[]},{"apiUid":[]}]}},"/event-cast/api/v1/webhooks":{"get":{"tags":["webhook-controller"],"summary":"Get all registered tracking subscriptions","operationId":"getWebhooks","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","$ref":"#/components/schemas/SubscriptionWebhook"},"examples":{"Successful response":{"description":"Successful response","value":[{"id":"e9e1d236-15a4-421e-a6d3-05a60901ef34","authenticator":"abcThis-isAn-Authentication-Combination-123ABC","configuration":{"url":"http://localhost:8888/some/random/location","content_type":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"trackingId":"TESTORDERHOMEDELIVERYDK","event_groups":["DELIVERED"],"expiry":"2022-11-25T11:49:30+0000","created":"2022-10-26T11:49:30+0000"},{"id":"712dbcdb-2a98-4dda-9452-55150094e995","authenticator":"abcThis-isAn-Authentication-Combination-123ABC","configuration":{"url":"http://localhost:8888/some/random/location","content_type":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"trackingId":"TESTSWIPBOXBANKIDVERIFICATIONSE","event_groups":["DELIVERED"],"expiry":"2022-11-25T11:49:30+0000","created":"2022-10-26T11:49:30+0000"}]}}}}},"400":{"description":"Authentication failed. Please set the mybring API login headers (X-MyBring-API-Uid and X-MyBring-API-Key) to a valid combination.","content":{"plain/text, application/json":{}}},"500":{"description":"Internal Server Error","content":{"plain/text":{}}}},"security":[{"apiKey":[]},{"apiUid":[]}]},"post":{"tags":["webhook-controller"],"summary":"Register a webhook on tracking number","description":"\n        Create a new subscription for a Webhook. Webhooks lives for up to 30 days, or until the entity\n        subscribed for is marked as <b>Delivered by Bring</b>.\n        <br><br>\n        <b>Note:</b> Subscription is allowed only on package and shipment numbers, and not on reference number or label free code.\n        \n        A 409 Conflict response occurs when the same webhook details are submitted multiple times.\n        To avoid this, ensure that the combination of shipment number, event groups, and webhook configuration in your request is unique.\n","operationId":"subscribe_1","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscriptionWebhook"},"examples":{"Create a webhook":{"description":"Create a webhook","value":{"trackingId":"TESTSWIPBOXBANKIDVERIFICATIONSE","configuration":{"url":"http://localhost:8888/your/endpoint/","content_type":"application/json","headers":[{"key":"x-protection-header","value":"12345-67890"},{"key":"x-required-company-header","value":"company@identification"}]},"event_groups":["DELIVERED","IN_TRANSIT","DEVIATION"]}}}}},"required":true},"responses":{"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscriptionWebhook"},"examples":{"Success response":{"description":"Success response","value":{"id":"c21b8754-271b-47e9-afd2-31e1b3804c45","authenticator":"abcThis-isAn-Authentication-Combination-123ABC","configuration":{"url":"http://localhost:8888/some/random/location","content_type":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"trackingId":"TESTSWIPBOXBANKIDVERIFICATIONSE","event_groups":["DELIVERED","IN_TRANSIT","DEVIATION"],"expiry":"2022-11-23T07:40:31+0000","created":"2022-10-24T07:40:31+0000"}}}}}},"400":{"description":"Error creating webhook","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"},"examples":{"Error response":{"description":"Error response","value":{"uuid":"023036","status":"400","reason":"Request failed"}}}}}},"500":{"description":"Internal Server Error","content":{"plain/text":{}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"},"examples":{"Conflict response":{"description":"Conflict response","value":{"uuid":"023036","status":"409","reason":"Webhook Subscription already exists."}}}}}}},"security":[{"apiKey":[]},{"apiUid":[]}]}},"/event-cast/api/v1/webhooks/{webhookSubscriptionId}/test":{"post":{"tags":["webhook-verification-controller"],"summary":"Trigger a webhook test","description":"\n                    Use this endpoint to test your webhook configuration by sending a dummy request to the specified webhook.\n                    <br/>\n                    It supports both tracking and customer number based webhooks.\n                    <br/>\n                    <br/>\n                    <b>Note:</b> ⚠️ This endpoint will return a 200 OK status if the test operation itself is successful, regardless of the webhook's response.\n                    <br/>\n                    The response body will contain the actual result of the test. Please review the response to understand the test outcome.\n                \n                ","operationId":"testWebhook","parameters":[{"name":"webhookSubscriptionId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The test was processed successfully. Check the response for details.","content":{"text/plain":{"schema":{"type":"string"}}}},"400":{"description":"Authentication failed. Please set the mybring API login headers (X-MyBring-API-Uid and X-MyBring-API-Key) to a valid combination.","content":{"text/plain":{"schema":{"type":"string"}}}},"404":{"description":"Webhook not found","content":{"text/plain":{"schema":{"type":"string"}}}}},"security":[{"apiKey":[]},{"apiUid":[]}]}},"/event-cast/api/v1/customer/webhooks":{"get":{"tags":["customer-subscription-controller"],"summary":"Get all registered customer subscriptions for the user","operationId":"getAllSubscriptions","responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CustomerSubscriptionDTO"}},"examples":{"Success response":{"$ref":"#/components/examples/get_all_customer_subscriptions_successful"}}}}},"404":{"description":"No customer webhook subscriptions found"},"500":{"description":"Something went wrong","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"},"examples":{"Internal server error":{"$ref":"#/components/examples/internal_server_error"}}}}}},"security":[{"apiUid":[]},{"apiKey":[]}]},"post":{"tags":["customer-subscription-controller"],"summary":"Register a webhook on customer number","description":"Register a webhook on customer to get notified about events on every consignment & parcel sent by customer. \n\nUse the MyBring customer number upon registration.<br><br>\n<b>Note:</b> Webhooks on customers are active for 1 year (365 days), unless deleted by the user. The subscription can be renewed by calling the <code>/renew/{webhookSubscriptionId}</code> endpoint.","operationId":"subscribe_2","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionRequest"},"examples":{"Create a webhook on customer number":{"$ref":"#/components/examples/register_customer_subscription"}}}},"required":true},"responses":{"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionDTO"},"examples":{"Success response":{"$ref":"#/components/examples/get_customer_subscription_successful"}}}}},"400":{"description":"Error creating webhook","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"},"examples":{"Invalid request parameter value":{"$ref":"#/components/examples/register_invalid_parameter_value"},"Invalid request parameter format":{"$ref":"#/components/examples/register_invalid_parameter_format"}}}}},"401":{"description":"Unauthorized to register webhook on customer number","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"},"examples":{"Customer not accessible":{"$ref":"#/components/examples/customer_not_accessible"}}}}},"500":{"description":"Something went wrong","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"},"examples":{"Internal server error":{"$ref":"#/components/examples/internal_server_error"}}}}}},"security":[{"apiUid":[]},{"apiKey":[]}]}},"/event-cast/api/v1/customer/webhooks/renew/{webhookSubscriptionId}":{"post":{"tags":["customer-subscription-controller"],"summary":"Renew an existing customer webhook subscription","description":"Extend the expiry date of an existing customer webhook subscription. Upon renewal, the expiry date will be set to one year (365 days) from the time of the request.","operationId":"renewSubscription","parameters":[{"name":"webhookSubscriptionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionDTO"},"examples":{"Success response":{"$ref":"#/components/examples/get_customer_subscription_successful"}}}}},"404":{"description":"No customer webhook subscription found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"},"examples":{"Not found":{"$ref":"#/components/examples/customer_subscription_not_found"}}}}},"500":{"description":"Something went wrong","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"},"examples":{"Internal server error":{"$ref":"#/components/examples/internal_server_error"}}}}}},"security":[{"apiUid":[]},{"apiKey":[]}]}},"/event-cast/api/v1/webhooks/{webhookSubscriptionId}":{"get":{"tags":["webhook-controller"],"summary":"Get tracking webhook subscription by id","operationId":"getWebhook","parameters":[{"name":"webhookSubscriptionId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscriptionWebhook"},"examples":{"Successful response":{"description":"Successful response","value":[{"id":"fb50f0b7-9cb4-4279-99e8-67f2d7bc24f9","authenticator":"abcThis-isAn-Authentication-Combination-123ABC","configuration":{"url":"http://localhost:8888/some/random/location","content_type":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"trackingId":"TESTORDERHOMEDELIVERYDK","event_groups":["DELIVERED"],"expiry":"2022-11-23T10:53:26+0000","created":"2022-10-24T10:53:26+0000"}]}}}}},"404":{"description":"Webhook not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscriptionWebhook"}}}},"500":{"description":"Internal Server Error","content":{"plain/text":{}}}},"security":[{"apiKey":[]},{"apiUid":[]}]},"delete":{"tags":["webhook-controller"],"summary":"Delete tracking webhook subscription by id","operationId":"unsubscribe","parameters":[{"name":"webhookSubscriptionId","in":"path","required":true,"schema":{"type":"string"}},{"name":"includeWebhook","in":"query","description":"Include the deleted webhook in the response","required":false,"schema":{"type":"boolean","default":false}}],"responses":{"204":{"description":"No Content","content":{"application/json":{"schema":{"type":"string"}}}},"400":{"description":"Authentication failed. Please set the mybring API login headers (X-MyBring-API-Uid and X-MyBring-API-Key) to a valid combination.","content":{"application/json":{"schema":{"type":"string"}}}},"404":{"description":"Webhook not found","content":{"application/json":{"schema":{"type":"string"}}}},"500":{"description":"Internal Server Error","content":{"plain/text":{}}}},"security":[{"apiKey":[]},{"apiUid":[]}]}},"/event-cast/api/v1/customer/webhooks/{webhookSubscriptionId}":{"get":{"tags":["customer-subscription-controller"],"summary":"Get customer webhook subscription by id","operationId":"getSubscription","parameters":[{"name":"webhookSubscriptionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionDTO"},"examples":{"Success response":{"$ref":"#/components/examples/get_customer_subscription_successful"}}}}},"404":{"description":"No customer webhook subscription found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"},"examples":{"Not found":{"$ref":"#/components/examples/customer_subscription_not_found"}}}}},"500":{"description":"Something went wrong","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"},"examples":{"Internal server error":{"$ref":"#/components/examples/internal_server_error"}}}}}},"security":[{"apiUid":[]},{"apiKey":[]}]},"delete":{"tags":["customer-subscription-controller"],"summary":"Delete customer webhook subscription by id","operationId":"deleteSubscription","parameters":[{"name":"webhookSubscriptionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"description":"No content"},"404":{"description":"No customer webhook subscription found"},"500":{"description":"Something went wrong","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionError"}}}}},"security":[{"apiUid":[]},{"apiKey":[]}]}},"/event-cast/api/v1/customer/webhooks/all":{"get":{"tags":["customer-subscription-controller"],"summary":"Get all webhooks on customer numbers a user has access to","description":"Returns all registered webhooks on the customer numbers that is connected to the user accessing the endpoint.","operationId":"getAllSubscriptionsAccessibleByUser","responses":{"200":{"description":"Successfully returned a list of webhooks","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionWithEmailDto"},"examples":{"Success response":{"$ref":"#/components/examples/get_all_webhooks_on_customer_successful"}}}}},"401":{"description":"Unauthorized: Either the user is not authorized to access the customer number, or not authorized to access the API.","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/CustomerSubscriptionError"},{"$ref":"#/components/schemas/UserNotApiOrWebUserException"}]},"examples":{"Customer not accessible by user":{"$ref":"#/components/examples/customer_not_accessible"}}}}},"404":{"description":"No webhooks found on customer number","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerSubscriptionException"}}}},"500":{"description":"Something went wrong","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/CustomerSubscriptionError"},{"$ref":"#/components/schemas/ErrorFetchingAdminDetailsForUser"}]},"examples":{"Internal server error":{"$ref":"#/components/examples/internal_server_error"}}}}}},"security":[{"apiUid":[]},{"apiKey":[]}]}}},"components":{"schemas":{"BatchSubscriptionWebhook":{"type":"object","properties":{"authenticator":{"type":"string","maxLength":40,"minLength":0},"configuration":{"$ref":"#/components/schemas/configuration"},"event_groups":{"type":"array","items":{"type":"string"}},"created":{"type":"string","format":"date-time"},"trackingIds":{"type":"array","items":{"type":"string"}},"expiry":{"type":"string","format":"date-time"}}},"configuration":{"type":"object","properties":{"url":{"type":"string","maxLength":250,"minLength":0},"content_type":{"type":"string","maxLength":40,"minLength":0},"headers":{"type":"array","items":{"$ref":"#/components/schemas/header"}}}},"header":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":"string","writeOnly":true}}},"SubscriptionWebhook":{"type":"object","properties":{"authenticator":{"type":"string","maxLength":40,"minLength":0},"configuration":{"$ref":"#/components/schemas/configuration"},"trackingId":{"type":"string"},"id":{"type":"string"},"event_groups":{"type":"array","items":{"type":"string"}},"created":{"type":"string","format":"date-time"},"expiry":{"type":"string","format":"date-time"}}},"ErrorResponse":{"type":"object","properties":{"uuid":{"type":"string"},"status":{"type":"string"},"reason":{"type":"string"}}},"CustomerSubscriptionRequest":{"type":"object","properties":{"customerNumber":{"type":"string"},"eventSet":{"type":"array","items":{"type":"string"},"uniqueItems":true},"webhookConfiguration":{"$ref":"#/components/schemas/WebhookConfiguration"}}},"KeyValue":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":["string","null"]}}},"WebhookConfiguration":{"type":"object","properties":{"webhookUrl":{"type":"string"},"contentType":{"type":"string"},"headers":{"type":"array","items":{"$ref":"#/components/schemas/KeyValue"}}}},"CustomerSubscriptionDTO":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"customerNumber":{"type":"string"},"eventSet":{"type":"array","items":{"type":"string"},"uniqueItems":true},"webhookConfiguration":{"$ref":"#/components/schemas/WebhookConfiguration"},"created":{"type":"string","format":"date-time"},"expiry":{"type":"string","format":"date-time"}}},"CustomerSubscriptionError":{"type":"object","properties":{"reason":{"type":"string"},"status":{"type":"integer","format":"int32"}}},"CustomerSubscriptionWithEmailDto":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"customerNumber":{"type":"string"},"eventSet":{"type":"array","items":{"type":"string"},"uniqueItems":true},"webhookConfiguration":{"$ref":"#/components/schemas/WebhookConfiguration"},"created":{"type":"string","format":"date-time"},"expiry":{"type":"string","format":"date-time"},"createdBy":{"type":"string"}}},"UserNotApiOrWebUserException":{"type":"object","properties":{"message":{"type":"string"},"clientMessage":{"type":"string"},"status":{"type":"string","enum":["100 CONTINUE","101 SWITCHING_PROTOCOLS","102 PROCESSING","103 EARLY_HINTS","200 OK","201 CREATED","202 ACCEPTED","203 NON_AUTHORITATIVE_INFORMATION","204 NO_CONTENT","205 RESET_CONTENT","206 PARTIAL_CONTENT","207 MULTI_STATUS","208 ALREADY_REPORTED","226 IM_USED","300 MULTIPLE_CHOICES","301 MOVED_PERMANENTLY","302 FOUND","303 SEE_OTHER","304 NOT_MODIFIED","307 TEMPORARY_REDIRECT","308 PERMANENT_REDIRECT","400 BAD_REQUEST","401 UNAUTHORIZED","402 PAYMENT_REQUIRED","403 FORBIDDEN","404 NOT_FOUND","405 METHOD_NOT_ALLOWED","406 NOT_ACCEPTABLE","407 PROXY_AUTHENTICATION_REQUIRED","408 REQUEST_TIMEOUT","409 CONFLICT","410 GONE","411 LENGTH_REQUIRED","412 PRECONDITION_FAILED","413 CONTENT_TOO_LARGE","413 PAYLOAD_TOO_LARGE","414 URI_TOO_LONG","415 UNSUPPORTED_MEDIA_TYPE","416 REQUESTED_RANGE_NOT_SATISFIABLE","417 EXPECTATION_FAILED","418 I_AM_A_TEAPOT","421 MISDIRECTED_REQUEST","422 UNPROCESSABLE_CONTENT","422 UNPROCESSABLE_ENTITY","423 LOCKED","424 FAILED_DEPENDENCY","425 TOO_EARLY","426 UPGRADE_REQUIRED","428 PRECONDITION_REQUIRED","429 TOO_MANY_REQUESTS","431 REQUEST_HEADER_FIELDS_TOO_LARGE","451 UNAVAILABLE_FOR_LEGAL_REASONS","500 INTERNAL_SERVER_ERROR","501 NOT_IMPLEMENTED","502 BAD_GATEWAY","503 SERVICE_UNAVAILABLE","504 GATEWAY_TIMEOUT","505 HTTP_VERSION_NOT_SUPPORTED","506 VARIANT_ALSO_NEGOTIATES","507 INSUFFICIENT_STORAGE","508 LOOP_DETECTED","509 BANDWIDTH_LIMIT_EXCEEDED","510 NOT_EXTENDED","511 NETWORK_AUTHENTICATION_REQUIRED"]},"severity":{"type":"string","enum":["ERROR","WARNING","INFO"]},"shouldLog":{"type":"boolean"}}},"CustomerSubscriptionException":{"type":"object","properties":{"message":{"type":"string"},"clientMessage":{"type":"string"},"status":{"type":"string","enum":["100 CONTINUE","101 SWITCHING_PROTOCOLS","102 PROCESSING","103 EARLY_HINTS","200 OK","201 CREATED","202 ACCEPTED","203 NON_AUTHORITATIVE_INFORMATION","204 NO_CONTENT","205 RESET_CONTENT","206 PARTIAL_CONTENT","207 MULTI_STATUS","208 ALREADY_REPORTED","226 IM_USED","300 MULTIPLE_CHOICES","301 MOVED_PERMANENTLY","302 FOUND","303 SEE_OTHER","304 NOT_MODIFIED","307 TEMPORARY_REDIRECT","308 PERMANENT_REDIRECT","400 BAD_REQUEST","401 UNAUTHORIZED","402 PAYMENT_REQUIRED","403 FORBIDDEN","404 NOT_FOUND","405 METHOD_NOT_ALLOWED","406 NOT_ACCEPTABLE","407 PROXY_AUTHENTICATION_REQUIRED","408 REQUEST_TIMEOUT","409 CONFLICT","410 GONE","411 LENGTH_REQUIRED","412 PRECONDITION_FAILED","413 CONTENT_TOO_LARGE","413 PAYLOAD_TOO_LARGE","414 URI_TOO_LONG","415 UNSUPPORTED_MEDIA_TYPE","416 REQUESTED_RANGE_NOT_SATISFIABLE","417 EXPECTATION_FAILED","418 I_AM_A_TEAPOT","421 MISDIRECTED_REQUEST","422 UNPROCESSABLE_CONTENT","422 UNPROCESSABLE_ENTITY","423 LOCKED","424 FAILED_DEPENDENCY","425 TOO_EARLY","426 UPGRADE_REQUIRED","428 PRECONDITION_REQUIRED","429 TOO_MANY_REQUESTS","431 REQUEST_HEADER_FIELDS_TOO_LARGE","451 UNAVAILABLE_FOR_LEGAL_REASONS","500 INTERNAL_SERVER_ERROR","501 NOT_IMPLEMENTED","502 BAD_GATEWAY","503 SERVICE_UNAVAILABLE","504 GATEWAY_TIMEOUT","505 HTTP_VERSION_NOT_SUPPORTED","506 VARIANT_ALSO_NEGOTIATES","507 INSUFFICIENT_STORAGE","508 LOOP_DETECTED","509 BANDWIDTH_LIMIT_EXCEEDED","510 NOT_EXTENDED","511 NETWORK_AUTHENTICATION_REQUIRED"]},"severity":{"type":"string","enum":["ERROR","WARNING","INFO"]},"shouldLog":{"type":"boolean"}}},"ErrorFetchingAdminDetailsForUser":{"type":"object","properties":{"message":{"type":"string"},"clientMessage":{"type":"string"},"status":{"type":"string","enum":["100 CONTINUE","101 SWITCHING_PROTOCOLS","102 PROCESSING","103 EARLY_HINTS","200 OK","201 CREATED","202 ACCEPTED","203 NON_AUTHORITATIVE_INFORMATION","204 NO_CONTENT","205 RESET_CONTENT","206 PARTIAL_CONTENT","207 MULTI_STATUS","208 ALREADY_REPORTED","226 IM_USED","300 MULTIPLE_CHOICES","301 MOVED_PERMANENTLY","302 FOUND","303 SEE_OTHER","304 NOT_MODIFIED","307 TEMPORARY_REDIRECT","308 PERMANENT_REDIRECT","400 BAD_REQUEST","401 UNAUTHORIZED","402 PAYMENT_REQUIRED","403 FORBIDDEN","404 NOT_FOUND","405 METHOD_NOT_ALLOWED","406 NOT_ACCEPTABLE","407 PROXY_AUTHENTICATION_REQUIRED","408 REQUEST_TIMEOUT","409 CONFLICT","410 GONE","411 LENGTH_REQUIRED","412 PRECONDITION_FAILED","413 CONTENT_TOO_LARGE","413 PAYLOAD_TOO_LARGE","414 URI_TOO_LONG","415 UNSUPPORTED_MEDIA_TYPE","416 REQUESTED_RANGE_NOT_SATISFIABLE","417 EXPECTATION_FAILED","418 I_AM_A_TEAPOT","421 MISDIRECTED_REQUEST","422 UNPROCESSABLE_CONTENT","422 UNPROCESSABLE_ENTITY","423 LOCKED","424 FAILED_DEPENDENCY","425 TOO_EARLY","426 UPGRADE_REQUIRED","428 PRECONDITION_REQUIRED","429 TOO_MANY_REQUESTS","431 REQUEST_HEADER_FIELDS_TOO_LARGE","451 UNAVAILABLE_FOR_LEGAL_REASONS","500 INTERNAL_SERVER_ERROR","501 NOT_IMPLEMENTED","502 BAD_GATEWAY","503 SERVICE_UNAVAILABLE","504 GATEWAY_TIMEOUT","505 HTTP_VERSION_NOT_SUPPORTED","506 VARIANT_ALSO_NEGOTIATES","507 INSUFFICIENT_STORAGE","508 LOOP_DETECTED","509 BANDWIDTH_LIMIT_EXCEEDED","510 NOT_EXTENDED","511 NETWORK_AUTHENTICATION_REQUIRED"]},"severity":{"type":"string","enum":["ERROR","WARNING","INFO"]},"shouldLog":{"type":"boolean"},"userId":{"type":"string"},"cause":{"type":"object","properties":{"stackTrace":{"type":"array","items":{"type":"object","properties":{"classLoaderName":{"type":"string"},"moduleName":{"type":"string"},"moduleVersion":{"type":"string"},"methodName":{"type":"string"},"fileName":{"type":"string"},"lineNumber":{"type":"integer","format":"int32"},"className":{"type":"string"},"nativeMethod":{"type":"boolean"}}}},"message":{"type":"string"},"suppressed":{"type":"array","items":{"type":"object","properties":{"stackTrace":{"type":"array","items":{"type":"object","properties":{"classLoaderName":{"type":"string"},"moduleName":{"type":"string"},"moduleVersion":{"type":"string"},"methodName":{"type":"string"},"fileName":{"type":"string"},"lineNumber":{"type":"integer","format":"int32"},"className":{"type":"string"},"nativeMethod":{"type":"boolean"}}}},"message":{"type":"string"},"localizedMessage":{"type":"string"}}}},"localizedMessage":{"type":"string"}}}}}},"examples":{"register_customer_subscription":{"value":{"customerNumber":"123456789","eventSet":["DELIVERED","DELIVERY_CHANGED","PRE_NOTIFIED"],"webhookConfiguration":{"webhookUrl":"https://example.com","contentType":"application/json","headers":[{"key":"x-protection-header","value":"12345-67890"},{"key":"x-required-company-header","value":"company@identification"}]}}},"get_customer_subscription_successful":{"value":{"id":"6e5ee30a-1419-4cdf-b63d-e75fbd83720f","customerNumber":"123456789","eventSet":["DELIVERED","DELIVERY_CHANGED","PRE_NOTIFIED"],"webhookConfiguration":{"webhookUrl":"https://example.com","contentType":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"created":"2024-05-22T07:42:13.86645","expiry":"2025-05-22T07:42:13.86645"}},"register_invalid_parameter_format":{"value":{"uuid":"3e6dd5","status":"400"}},"register_invalid_parameter_value":{"value":{"reason":"Invalid webhook Url","status":400}},"internal_server_error":{"value":{"reason":"Something went wrong. Please try again later.","status":500}},"customer_not_accessible":{"value":{"reason":"User does not have access rights on customer number","status":401}},"customer_subscription_not_found":{"value":{"reason":"No Customer Subscription found","status":404}},"get_all_customer_subscriptions_successful":{"value":[{"id":"6e5ee30a-1419-4cdf-b63d-e75fbd83720f","customerNumber":"123456789","eventSet":["DELIVERED","DELIVERY_CHANGED","PRE_NOTIFIED"],"webhookConfiguration":{"webhookUrl":"https://example.com","contentType":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"created":"2024-05-22T07:42:13.86645","expiry":"2025-05-22T07:42:13.86645"},{"id":"51b32bdf-b5f7-422a-a4da-e75fbd83720a","customerNumber":"987654321","eventSet":["DELIVERED","PRE_NOTIFIED"],"webhookConfiguration":{"webhookUrl":"https://example.com/other","contentType":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"created":"2024-07-21T07:42:13.86645","expiry":"2025-07-21T07:42:13.86645"}]},"get_all_webhooks_on_customer_successful":{"value":[{"id":"6e5ee30a-1419-4cdf-b63d-e75fbd83720f","customerNumber":"example-customer-number","eventSet":["DELIVERED","DELIVERED_SENDER","DELIVERY_CANCELLED","RETURN","TERMINAL"],"webhookConfiguration":{"webhookUrl":"example-webhook-url-1","contentType":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"created":"2025-06-23T10:50:28.329749","expiry":"2026-08-12T17:13:21.597011","createdBy":"employee-1@mailservice.com"},{"id":"6e5ee30a-1419-4cdf-b63d-e75fbd83720a","customerNumber":"example-customer-number","eventSet":["DELIVERED","PRE_NOTIFIED"],"webhookConfiguration":{"webhookUrl":"example-webhook-url-2","contentType":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-required-company-header"}]},"created":"2025-09-09T11:20:33.864513","expiry":"2026-09-09T11:20:33.864519","createdBy":"employee-2@mailservice.com"},{"id":"6e5ee30a-1419-4cdf-b63d-e75fbd83720b","customerNumber":"example-customer-number","eventSet":["DELIVERED","DELIVERED_SENDER","DELIVERY_CANCELLED","DELIVERY_CHANGED","IN_TRANSIT","PRE_NOTIFIED","READY_FOR_PICKUP"],"webhookConfiguration":{"webhookUrl":"example-webhook-url-3","contentType":"application/json","headers":[{"key":"x-protection-header"},{"key":"x-auth-key"}]},"created":"2025-08-26T09:03:21.205615","expiry":"2026-08-26T09:03:21.214897","createdBy":"employee-1@mailservice.com"}]}}}}