# Models

## The AbstractWebhookConfig object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"AbstractWebhookConfig":{"type":"object","properties":{"active":{"type":"boolean","description":"Indicates whether a given configuration is active. Only one configuration can be active."},"provider":{"$ref":"#/components/schemas/Provider","description":"Indicates which provider should be used."}}},"Provider":{"type":"string","enum":["SVIX_SHARED","SVIX","HTTP"]}}}}
```

## The EmptyConfiguration object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"EmptyConfiguration":{"type":"object","description":"SVIX_SHARED config"}}}}
```

## The SvixConfig object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"SvixConfig":{"type":"object","properties":{"apiKey":{"type":"string","description":"API Key for connecting to SVIX. This API Key will be then used in `Authorization` header while sending requests to SVIX, so the value should include `Bearer` prefix if necessary."}},"description":"SVIX config"}}}}
```

## The EventConfiguration object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"EventConfiguration":{"type":"object","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request. It has higher priority than `secretKey` on root level. Each event can have defined a separated secret key."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent. It has higher priority than `destinationUrl` on root level. Each event can have defined a separated destination url."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`. It has higher priority than `headers` on root level. Each event can have defined a separated headers."}}},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}}}}}
```

## The EventsConfiguration object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"EventsConfiguration":{"type":"array","items":{"$ref":"#/components/schemas/EventConfiguration"}},"EventConfiguration":{"type":"object","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request. It has higher priority than `secretKey` on root level. Each event can have defined a separated secret key."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent. It has higher priority than `destinationUrl` on root level. Each event can have defined a separated destination url."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`. It has higher priority than `headers` on root level. Each event can have defined a separated headers."}}},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}}}}}
```

## The HttpHeaderConfigValue object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}}}}}
```

## The HttpHeadersConfig object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}}}}}
```

## The HttpConfig object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"HttpConfig":{"type":"object","properties":{"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`."},"eventsConfiguration":{"$ref":"#/components/schemas/EventConfiguration"}},"description":"HTTP config"},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}},"EventConfiguration":{"type":"object","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request. It has higher priority than `secretKey` on root level. Each event can have defined a separated secret key."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent. It has higher priority than `destinationUrl` on root level. Each event can have defined a separated destination url."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`. It has higher priority than `headers` on root level. Each event can have defined a separated headers."}}}}}}
```

## The Configuration object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"Configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/EmptyConfiguration"},{"$ref":"#/components/schemas/SvixConfig"},{"$ref":"#/components/schemas/HttpConfig"}]},"EmptyConfiguration":{"type":"object","description":"SVIX_SHARED config"},"SvixConfig":{"type":"object","properties":{"apiKey":{"type":"string","description":"API Key for connecting to SVIX. This API Key will be then used in `Authorization` header while sending requests to SVIX, so the value should include `Bearer` prefix if necessary."}},"description":"SVIX config"},"HttpConfig":{"type":"object","properties":{"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`."},"eventsConfiguration":{"$ref":"#/components/schemas/EventConfiguration"}},"description":"HTTP config"},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}},"EventConfiguration":{"type":"object","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request. It has higher priority than `secretKey` on root level. Each event can have defined a separated secret key."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent. It has higher priority than `destinationUrl` on root level. Each event can have defined a separated destination url."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`. It has higher priority than `headers` on root level. Each event can have defined a separated headers."}}}}}}
```

## The WebhookConfigPartialUpdates object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookConfigPartialUpdates":{"type":"array","items":{"$ref":"#/components/schemas/WebhookConfigPartialUpdate"}},"WebhookConfigPartialUpdate":{"type":"object","properties":{"op":{"type":"string","enum":["REMOVE","UPSERT"],"description":"Kind of the update operation"},"path":{"type":"string","enum":["/active","/configuration","/configuration/svix/apiKey","/configuration/http/headers","/configuration/http/destinationUrl","/configuration/http/secretKey","/configuration/http/eventsConfiguration","/configuration/http/eventsConfiguration/{eventType}","/configuration/http/eventsConfiguration/{eventType}/destinationUrl","/configuration/http/eventsConfiguration/{eventType}/secretKey","/configuration/http/eventsConfiguration/{eventType}/headers"],"description":"Path for identyifing which properties should be updated"},"value":{"type":"object","anyOf":[{"$ref":"#/components/schemas/SvixConfig"},{"$ref":"#/components/schemas/HttpConfig"},{"type":"string","description":"Svix Api Key"},{"type":"boolean","description":"Active flag"},{"type":"string","description":"Destination URL where event should be sent"},{"type":"string","description":"Secret key needed to sign messages sent via HTTP requests."},{"$ref":"#/components/schemas/EventsConfiguration"},{"$ref":"#/components/schemas/EventConfiguration"}]}},"required":["op","path"]},"SvixConfig":{"type":"object","properties":{"apiKey":{"type":"string","description":"API Key for connecting to SVIX. This API Key will be then used in `Authorization` header while sending requests to SVIX, so the value should include `Bearer` prefix if necessary."}},"description":"SVIX config"},"HttpConfig":{"type":"object","properties":{"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`."},"eventsConfiguration":{"$ref":"#/components/schemas/EventConfiguration"}},"description":"HTTP config"},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}},"EventConfiguration":{"type":"object","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request. It has higher priority than `secretKey` on root level. Each event can have defined a separated secret key."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent. It has higher priority than `destinationUrl` on root level. Each event can have defined a separated destination url."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`. It has higher priority than `headers` on root level. Each event can have defined a separated headers."}}},"EventsConfiguration":{"type":"array","items":{"$ref":"#/components/schemas/EventConfiguration"}}}}}
```

## The WebhookConfigPartialUpdate object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookConfigPartialUpdate":{"type":"object","properties":{"op":{"type":"string","enum":["REMOVE","UPSERT"],"description":"Kind of the update operation"},"path":{"type":"string","enum":["/active","/configuration","/configuration/svix/apiKey","/configuration/http/headers","/configuration/http/destinationUrl","/configuration/http/secretKey","/configuration/http/eventsConfiguration","/configuration/http/eventsConfiguration/{eventType}","/configuration/http/eventsConfiguration/{eventType}/destinationUrl","/configuration/http/eventsConfiguration/{eventType}/secretKey","/configuration/http/eventsConfiguration/{eventType}/headers"],"description":"Path for identyifing which properties should be updated"},"value":{"type":"object","anyOf":[{"$ref":"#/components/schemas/SvixConfig"},{"$ref":"#/components/schemas/HttpConfig"},{"type":"string","description":"Svix Api Key"},{"type":"boolean","description":"Active flag"},{"type":"string","description":"Destination URL where event should be sent"},{"type":"string","description":"Secret key needed to sign messages sent via HTTP requests."},{"$ref":"#/components/schemas/EventsConfiguration"},{"$ref":"#/components/schemas/EventConfiguration"}]}},"required":["op","path"]},"SvixConfig":{"type":"object","properties":{"apiKey":{"type":"string","description":"API Key for connecting to SVIX. This API Key will be then used in `Authorization` header while sending requests to SVIX, so the value should include `Bearer` prefix if necessary."}},"description":"SVIX config"},"HttpConfig":{"type":"object","properties":{"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`."},"eventsConfiguration":{"$ref":"#/components/schemas/EventConfiguration"}},"description":"HTTP config"},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}},"EventConfiguration":{"type":"object","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request. It has higher priority than `secretKey` on root level. Each event can have defined a separated secret key."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent. It has higher priority than `destinationUrl` on root level. Each event can have defined a separated destination url."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`. It has higher priority than `headers` on root level. Each event can have defined a separated headers."}}},"EventsConfiguration":{"type":"array","items":{"$ref":"#/components/schemas/EventConfiguration"}}}}}
```

## The ConfigurationGet object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"ConfigurationGet":{"oneOf":[{"type":"object","properties":{"destinationUrl":{"type":"string","description":"Destination URL where event should be sent."},"secretKeyExists":{"type":"boolean","description":"Information if secret key for securing the messages has been provided."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers."},"eventsConfiguration":{"type":"array","items":{"type":"object","properties":{"eventType":{"type":"string","description":"Type of the event."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent."},"secretKeyExists":{"type":"boolean","description":"Information if secret key for securing the messages has been provided."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers."}}}}}}]},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}}}}}
```

## The ConfigCode object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"ConfigCode":{"type":"string","description":"Unique identifier of webhook configuration."}}}}
```

## The Provider object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"Provider":{"type":"string","enum":["SVIX_SHARED","SVIX","HTTP"]}}}}
```

## The WebhookConfigUpdate object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookConfigUpdate":{"allOf":[{"$ref":"#/components/schemas/AbstractWebhookConfig"},{"type":"object","required":["provider"],"properties":{"configuration":{"$ref":"#/components/schemas/Configuration"}}}]},"AbstractWebhookConfig":{"type":"object","properties":{"active":{"type":"boolean","description":"Indicates whether a given configuration is active. Only one configuration can be active."},"provider":{"$ref":"#/components/schemas/Provider","description":"Indicates which provider should be used."}}},"Provider":{"type":"string","enum":["SVIX_SHARED","SVIX","HTTP"]},"Configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/EmptyConfiguration"},{"$ref":"#/components/schemas/SvixConfig"},{"$ref":"#/components/schemas/HttpConfig"}]},"EmptyConfiguration":{"type":"object","description":"SVIX_SHARED config"},"SvixConfig":{"type":"object","properties":{"apiKey":{"type":"string","description":"API Key for connecting to SVIX. This API Key will be then used in `Authorization` header while sending requests to SVIX, so the value should include `Bearer` prefix if necessary."}},"description":"SVIX config"},"HttpConfig":{"type":"object","properties":{"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`."},"eventsConfiguration":{"$ref":"#/components/schemas/EventConfiguration"}},"description":"HTTP config"},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}},"EventConfiguration":{"type":"object","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request. It has higher priority than `secretKey` on root level. Each event can have defined a separated secret key."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent. It has higher priority than `destinationUrl` on root level. Each event can have defined a separated destination url."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`. It has higher priority than `headers` on root level. Each event can have defined a separated headers."}}}}}}
```

## The WebhookConfigCreation object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookConfigCreation":{"allOf":[{"$ref":"#/components/schemas/WebhookConfigUpdate"},{"type":"object","required":["code"],"properties":{"code":{"allOf":[{"$ref":"#/components/schemas/ConfigCode"}]}}}]},"WebhookConfigUpdate":{"allOf":[{"$ref":"#/components/schemas/AbstractWebhookConfig"},{"type":"object","required":["provider"],"properties":{"configuration":{"$ref":"#/components/schemas/Configuration"}}}]},"AbstractWebhookConfig":{"type":"object","properties":{"active":{"type":"boolean","description":"Indicates whether a given configuration is active. Only one configuration can be active."},"provider":{"$ref":"#/components/schemas/Provider","description":"Indicates which provider should be used."}}},"Provider":{"type":"string","enum":["SVIX_SHARED","SVIX","HTTP"]},"Configuration":{"type":"object","oneOf":[{"$ref":"#/components/schemas/EmptyConfiguration"},{"$ref":"#/components/schemas/SvixConfig"},{"$ref":"#/components/schemas/HttpConfig"}]},"EmptyConfiguration":{"type":"object","description":"SVIX_SHARED config"},"SvixConfig":{"type":"object","properties":{"apiKey":{"type":"string","description":"API Key for connecting to SVIX. This API Key will be then used in `Authorization` header while sending requests to SVIX, so the value should include `Bearer` prefix if necessary."}},"description":"SVIX config"},"HttpConfig":{"type":"object","properties":{"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`."},"eventsConfiguration":{"$ref":"#/components/schemas/EventConfiguration"}},"description":"HTTP config"},"HttpHeadersConfig":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/HttpHeaderConfigValue"}},"HttpHeaderConfigValue":{"type":"object","properties":{"value":{"type":"string"}}},"EventConfiguration":{"type":"object","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"secretKey":{"type":"string","description":"Optional secret key which could be used to sign the message. This secret is used in `HMAC SHA 256` algorithm which encrypts the payload. Then this value is encoded to `BASE256` and included in `emporix-event-signature` header of HTTP request. It has higher priority than `secretKey` on root level. Each event can have defined a separated secret key."},"destinationUrl":{"type":"string","description":"Destination URL where event should be sent. It has higher priority than `destinationUrl` on root level. Each event can have defined a separated destination url."},"headers":{"allOf":[{"$ref":"#/components/schemas/HttpHeadersConfig"}],"description":"List of key-value pairs which can decorate outgoing HTTP POST request as headers. The size limit for this list is `10`. It has higher priority than `headers` on root level. Each event can have defined a separated headers."}}},"ConfigCode":{"type":"string","description":"Unique identifier of webhook configuration."}}}}
```

## The WebhookEvent object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookEvent":{"title":"Webhook event","type":"object","description":"Events that you can subscribe to.","properties":{"type":{"type":"string","description":"Unique identifier of the event."},"description":{"type":"object","description":"Map of key-value pairs containing localized descriptions of the event, which includes information on when the event is emitted.","additionalProperties":{"type":"string"}},"eventSchema":{"type":"object","description":"Schema of the event."},"name":{"type":"object","description":"Map of key-value pairs containing localized names of the event.","additionalProperties":{"type":"string"}},"group":{"type":"object","description":"Map of key-value pairs containing the localized name of a group the event belongs to.","additionalProperties":{"type":"string"}}}}}}}
```

## The WebhookSubscriptions object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookSubscriptions":{"title":"Webhook subscriptions","type":"array","description":"Details of the event subscription.","items":{"$ref":"#/components/schemas/WebhookSubscription"}},"WebhookSubscription":{"title":"Webhook subscription","type":"object","description":"Subscription per event.","properties":{"event":{"$ref":"#/components/schemas/WebhookEvent"},"metadata":{"$ref":"#/components/schemas/Metadata"},"subscription":{"type":"string","description":"Status of the subscription.","enum":["SUBSCRIBED","UNSUBSCRIBED","NONE"]},"excludedFields":{"type":"array","description":"If `subscription` is of type `SUBSCRIBED`, `excludedFields` will contain the list of keys from the \"event.eventSchema\" that the user has previously unsubscribed from. Note: Only root level fields are supported.","items":{"type":"string"}}}},"WebhookEvent":{"title":"Webhook event","type":"object","description":"Events that you can subscribe to.","properties":{"type":{"type":"string","description":"Unique identifier of the event."},"description":{"type":"object","description":"Map of key-value pairs containing localized descriptions of the event, which includes information on when the event is emitted.","additionalProperties":{"type":"string"}},"eventSchema":{"type":"object","description":"Schema of the event."},"name":{"type":"object","description":"Map of key-value pairs containing localized names of the event.","additionalProperties":{"type":"string"}},"group":{"type":"object","description":"Map of key-value pairs containing the localized name of a group the event belongs to.","additionalProperties":{"type":"string"}}}},"Metadata":{"title":"Metadata","description":"Auditing details.","type":"object","properties":{"createdAt":{"type":"string","description":"Date and time when the document was created.","format":"date-time"},"modifiedAt":{"type":"string","description":"Date and time when the document was last modified.","format":"date-time"},"version":{"type":"integer","description":"Version of the document.","minimum":1}}}}}}
```

## The WebhookSubscription object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookSubscription":{"title":"Webhook subscription","type":"object","description":"Subscription per event.","properties":{"event":{"$ref":"#/components/schemas/WebhookEvent"},"metadata":{"$ref":"#/components/schemas/Metadata"},"subscription":{"type":"string","description":"Status of the subscription.","enum":["SUBSCRIBED","UNSUBSCRIBED","NONE"]},"excludedFields":{"type":"array","description":"If `subscription` is of type `SUBSCRIBED`, `excludedFields` will contain the list of keys from the \"event.eventSchema\" that the user has previously unsubscribed from. Note: Only root level fields are supported.","items":{"type":"string"}}}},"WebhookEvent":{"title":"Webhook event","type":"object","description":"Events that you can subscribe to.","properties":{"type":{"type":"string","description":"Unique identifier of the event."},"description":{"type":"object","description":"Map of key-value pairs containing localized descriptions of the event, which includes information on when the event is emitted.","additionalProperties":{"type":"string"}},"eventSchema":{"type":"object","description":"Schema of the event."},"name":{"type":"object","description":"Map of key-value pairs containing localized names of the event.","additionalProperties":{"type":"string"}},"group":{"type":"object","description":"Map of key-value pairs containing the localized name of a group the event belongs to.","additionalProperties":{"type":"string"}}}},"Metadata":{"title":"Metadata","description":"Auditing details.","type":"object","properties":{"createdAt":{"type":"string","description":"Date and time when the document was created.","format":"date-time"},"modifiedAt":{"type":"string","description":"Date and time when the document was last modified.","format":"date-time"},"version":{"type":"integer","description":"Version of the document.","minimum":1}}}}}}
```

## The WebhookSubscriptionUpdate object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookSubscriptionUpdate":{"title":"Webhook subscription update","type":"array","description":"Subscription changes.","items":{"$ref":"#/components/schemas/WebhookSubscriptionUpdateItem"}},"WebhookSubscriptionUpdateItem":{"title":"Webhook subscription update item","type":"object","description":"Object used to subscribe to/unsubscribe from an event. ","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"action":{"type":"string","enum":["SUBSCRIBE","UNSUBSCRIBE"],"description":"Indicates whether the event should be subscribed to or unsubscribed from."},"metadata":{"$ref":"#/components/schemas/MetadataForUpdate"},"fieldsToUnsubscribe":{"type":"array","description":"Fields to exclude from notification.","items":{"type":"string"}},"fieldsToSubscribe":{"type":"array","description":"Fields to re-include in the notification. To be used when user wants to subscribe to previously unsubscribed fields.","items":{"type":"string"}}},"required":["eventType"]},"MetadataForUpdate":{"title":"Metadata for update","description":"Auditing details.","type":"object","properties":{"version":{"type":"integer","description":"Version of the document.","minimum":1}}}}}}
```

## The WebhookSubscriptionUpdateItem object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookSubscriptionUpdateItem":{"title":"Webhook subscription update item","type":"object","description":"Object used to subscribe to/unsubscribe from an event. ","properties":{"eventType":{"type":"string","description":"Unique identifier of the event."},"action":{"type":"string","enum":["SUBSCRIBE","UNSUBSCRIBE"],"description":"Indicates whether the event should be subscribed to or unsubscribed from."},"metadata":{"$ref":"#/components/schemas/MetadataForUpdate"},"fieldsToUnsubscribe":{"type":"array","description":"Fields to exclude from notification.","items":{"type":"string"}},"fieldsToSubscribe":{"type":"array","description":"Fields to re-include in the notification. To be used when user wants to subscribe to previously unsubscribed fields.","items":{"type":"string"}}},"required":["eventType"]},"MetadataForUpdate":{"title":"Metadata for update","description":"Auditing details.","type":"object","properties":{"version":{"type":"integer","description":"Version of the document.","minimum":1}}}}}}
```

## The ErrorMessage object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"ErrorMessage":{"title":"Error message","description":"Object returned in error responses.","type":"object","properties":{"code":{"description":"Original HTTP error code. Must be consistent with the response HTTP code.","type":"integer"},"status":{"type":"string"},"message":{"description":"Descriptive error message for debugging.","type":"string"},"details":{"description":"List of problems causing the error.","type":"array","items":{"type":"string"}}},"required":["code","status"]}}}}
```

## The Metadata object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"Metadata":{"title":"Metadata","description":"Auditing details.","type":"object","properties":{"createdAt":{"type":"string","description":"Date and time when the document was created.","format":"date-time"},"modifiedAt":{"type":"string","description":"Date and time when the document was last modified.","format":"date-time"},"version":{"type":"integer","description":"Version of the document.","minimum":1}}}}}}
```

## The MetadataForUpdate object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"MetadataForUpdate":{"title":"Metadata for update","description":"Auditing details.","type":"object","properties":{"version":{"type":"integer","description":"Version of the document.","minimum":1}}}}}}
```

## The UpdateSubscriptionResponse object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"UpdateSubscriptionResponse":{"title":"Update subscription result response","type":"object","description":"Object containing the result of event subscription.","properties":{"eventType":{"type":"string"},"code":{"type":"integer"},"status":{"type":"string"},"message":{"type":"string"}}}}}}
```

## The DashboardAccess object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"DashboardAccess":{"type":"object","properties":{"url":{"type":"string","description":"Svix application dashboard access URL with embedded authentication."},"token":{"type":"string","description":"Authentication token for accessing the Svix application dashboard."}}}}}}
```

## The MonthStatistics object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"MonthStatistics":{"title":"Webhook monthly statistics","type":"object","properties":{"statisticsMonth":{"type":"string","description":"Month for which statistics should be retrieved, provided in the \"YYYY-MM\" format."},"succesfullySentWebhooks":{"type":"integer","description":"Number of events sent successfully to the customer's configured endpoints."}}}}}}
```

## The WebhookStatistics object

```json
{"openapi":"3.0.0","info":{"title":"Webhook Service","version":"0.0.1"},"components":{"schemas":{"WebhookStatistics":{"title":"Webhooks limit statistics","type":"object","properties":{"monthStatistics":{"type":"array","items":{"$ref":"#/components/schemas/MonthStatistics"}},"webhooksLimit":{"type":"integer","description":"Maximum number of events that the tenant is allowed to send in a specified month."}}},"MonthStatistics":{"title":"Webhook monthly statistics","type":"object","properties":{"statisticsMonth":{"type":"string","description":"Month for which statistics should be retrieved, provided in the \"YYYY-MM\" format."},"succesfullySentWebhooks":{"type":"integer","description":"Number of events sent successfully to the customer's configured endpoints."}}}}}}
```
