# Add-ons

## The Add-on object

Add-ons define features or top-ups that can be used to extend the functionality offered to the end user through their subscription's plan.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `addon`. |
| `id` | string | Yes | Unique identifier for the add-on. |
| `metadata` | object | Yes | A set of key-value pairs, to store [metadata](https://developers.gigs.com/docs/core/metadata) related to the resource. |
| `activationTrigger` | creation | networkLatch | usageStarted | Yes | Indicates when a subscription add-on will take effect.  - `creation`: As soon as it is created. The user does not need to take any further action. - `networkLatch`: When the user's data session ends, which can be forced by power cycling the device. - `usageStarted`: When the user starts using add-on allowance on their device.  |
| `allowances` | object | Yes | The allowances included in the add-on. |
| `coverage` | mixed | Yes | The geographic coverage of the add-on. A value of `null` indicates that coverage is not applicable for this add-on. |
| `createdAt` | string | Yes | Time when the add-on was created . |
| `description` | string,null | Yes | The description of the add-on. |
| `name` | string | Yes | Name for the add-on. |
| `plans` | string[] | Yes | The plans this add-on is compatible with. |
| `price` | object | Yes | The price of the add-on. |
| `provider` | string | Yes | The ID of the network provider supported by this add-on. |
| `recurrenceType` | string | Yes | The recurrence type the add-on. |
| `status` | draft | available | archived | Yes | The current status of the add-on. |
| `type` | topUp | other | Yes | The type of the add-on. |
| `validity` | object,null | Yes | The validity period of the add-on. When the add-on is activated, it will expire after this         duration. Not all add-ons have a validity period. |
| `data` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The data allowance in bytes included in this add-on. A value of `-1` indicates unlimited data. |
| `dataUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the data value is always `byte`. |
| `sms` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The sms allowance included in this add-on. A value of `-1` indicates unlimited sms. |
| `smsUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the sms value is always `sms`. |
| `voice` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The voice call allowance in seconds included in this add-on. A value of `-1` indicates unlimited voice calls. |
| `voiceUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the voice value is always `second`. |

---

## List all add-ons

`GET /projects/{project}/addons`

List add-ons. By default only add-ons with a status of 'available' are returned.

### Path Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `project` | string | Yes | The unique identifier for the [project](https://developers.gigs.com/core/projects#the-project-resource). |

### Query Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `after` | string | No | A cursor for use in pagination. The `after` parameter takes an object ID that defines the position in the list, only items immediately following the item with that ID will be returned. |
| `before` | string | No | A cursor for use in pagination. The `before` parameter takes an object ID that defines the position in the list, only items immediately preceding the item with that ID will be returned. |
| `limit` | integer | No | The limit of items to be returned in the list, between 0 and 200. |
| `coverageCountry` | string[] | No | The ISO3166 alpha-2 country code to filter the add-ons by. |
| `provider` | string | No | The provider of the add-on to be filtered by. |
| `plan` | string | No | Limit the list of add-ons to those compatible with the given plan id. |
| `status` | string | No | The status of the add-on to be filtered by. |
| `type` | string | No | The type of the add-on to be filtered by. |
| `recurrenceType` | string | No | The recurrence type of the add-on to be filtered by. |

### Responses

#### 200 — Returns a dictionary with an items property that contains an array of add-ons.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `list`. |
| `items` | object[] | Yes | List of objects of type `addon`. |
| `moreItemsAfter` | string,null | Yes | A unique identifier to be used as `after` pagination parameter if more items are available sorted after the current batch of items. |
| `moreItemsBefore` | string,null | Yes | A unique identifier to be used as `before` pagination parameter if more items are available sorted before the current batch of items. |

#### 403 — The authenticated user doesn't have permissions to perform the request.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

---

## Retrieve an add-on

`GET /projects/{project}/addons/{addon}`

Retrieves the details of an existing add-on.

### Path Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `project` | string | Yes | The unique identifier for the [project](https://developers.gigs.com/core/projects#the-project-resource). |
| `addon` | string | Yes | The unique identifier for the add-on. |

### Responses

#### 200 — Returns the add-on object if it exists.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `addon`. |
| `id` | string | Yes | Unique identifier for the add-on. |
| `metadata` | object | Yes | A set of key-value pairs, to store [metadata](https://developers.gigs.com/docs/core/metadata) related to the resource. |
| `activationTrigger` | creation | networkLatch | usageStarted | Yes | Indicates when a subscription add-on will take effect.  - `creation`: As soon as it is created. The user does not need to take any further action. - `networkLatch`: When the user's data session ends, which can be forced by power cycling the device. - `usageStarted`: When the user starts using add-on allowance on their device.  |
| `allowances` | object | Yes | The allowances included in the add-on. |
| `coverage` | mixed | Yes | The geographic coverage of the add-on. A value of `null` indicates that coverage is not applicable for this add-on. |
| `createdAt` | string | Yes | Time when the add-on was created . |
| `description` | string,null | Yes | The description of the add-on. |
| `name` | string | Yes | Name for the add-on. |
| `plans` | string[] | Yes | The plans this add-on is compatible with. |
| `price` | object | Yes | The price of the add-on. |
| `provider` | string | Yes | The ID of the network provider supported by this add-on. |
| `recurrenceType` | string | Yes | The recurrence type the add-on. |
| `status` | draft | available | archived | Yes | The current status of the add-on. |
| `type` | topUp | other | Yes | The type of the add-on. |
| `validity` | object,null | Yes | The validity period of the add-on. When the add-on is activated, it will expire after this         duration. Not all add-ons have a validity period. |
| `data` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The data allowance in bytes included in this add-on. A value of `-1` indicates unlimited data. |
| `dataUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the data value is always `byte`. |
| `sms` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The sms allowance included in this add-on. A value of `-1` indicates unlimited sms. |
| `smsUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the sms value is always `sms`. |
| `voice` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The voice call allowance in seconds included in this add-on. A value of `-1` indicates unlimited voice calls. |
| `voiceUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the voice value is always `second`. |

#### 403 — The authenticated user doesn't have permissions to perform the request.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

#### 404 — The requested resource doesn't exist.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

---

## Update an add-on

`PATCH /projects/{project}/addons/{addon}`

Updates an add-on's name and description.

### Body

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `name` | string,null | No | The name of the add-on, meant to be displayable to users. |
| `description` | string,null | No | The description of the add-on. |
| `validity` | object,null | No | The custom validity for this add-on. Set to `null` to remove custom validity and fall back to network add-on validity.                 If provided, must not exceed the network add-on's validity period. |
| `metadata` | object | No | A set of key-value pairs, to store [metadata](https://developers.gigs.com/docs/core/metadata) related to the resource. |

### Path Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `project` | string | Yes | The unique identifier for the [project](https://developers.gigs.com/core/projects#the-project-resource). |
| `addon` | string | Yes | The unique identifier for the add-on. |

### Responses

#### 200 — Returns the updated add-on.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `addon`. |
| `id` | string | Yes | Unique identifier for the add-on. |
| `metadata` | object | Yes | A set of key-value pairs, to store [metadata](https://developers.gigs.com/docs/core/metadata) related to the resource. |
| `activationTrigger` | creation | networkLatch | usageStarted | Yes | Indicates when a subscription add-on will take effect.  - `creation`: As soon as it is created. The user does not need to take any further action. - `networkLatch`: When the user's data session ends, which can be forced by power cycling the device. - `usageStarted`: When the user starts using add-on allowance on their device.  |
| `allowances` | object | Yes | The allowances included in the add-on. |
| `coverage` | mixed | Yes | The geographic coverage of the add-on. A value of `null` indicates that coverage is not applicable for this add-on. |
| `createdAt` | string | Yes | Time when the add-on was created . |
| `description` | string,null | Yes | The description of the add-on. |
| `name` | string | Yes | Name for the add-on. |
| `plans` | string[] | Yes | The plans this add-on is compatible with. |
| `price` | object | Yes | The price of the add-on. |
| `provider` | string | Yes | The ID of the network provider supported by this add-on. |
| `recurrenceType` | string | Yes | The recurrence type the add-on. |
| `status` | draft | available | archived | Yes | The current status of the add-on. |
| `type` | topUp | other | Yes | The type of the add-on. |
| `validity` | object,null | Yes | The validity period of the add-on. When the add-on is activated, it will expire after this         duration. Not all add-ons have a validity period. |
| `data` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The data allowance in bytes included in this add-on. A value of `-1` indicates unlimited data. |
| `dataUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the data value is always `byte`. |
| `sms` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The sms allowance included in this add-on. A value of `-1` indicates unlimited sms. |
| `smsUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the sms value is always `sms`. |
| `voice` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The voice call allowance in seconds included in this add-on. A value of `-1` indicates unlimited voice calls. |
| `voiceUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the voice value is always `second`. |

#### 403 — The authenticated user doesn't have permissions to perform the request.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

#### 404 — The requested resource doesn't exist.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

#### 422 — The request can't be processed, often due to an invalid parameter or incompatible system state.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

---

## Archive an add-on

`POST /projects/{project}/addons/{addon}/archive`

Set the status of an add-on to archived. An archived add-on can not be added to subscriptions.

### Path Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `project` | string | Yes | The unique identifier for the [project](https://developers.gigs.com/core/projects#the-project-resource). |
| `addon` | string | Yes | The unique identifier for the add-on. |

### Responses

#### 200 — Returns the archived add-on.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `addon`. |
| `id` | string | Yes | Unique identifier for the add-on. |
| `metadata` | object | Yes | A set of key-value pairs, to store [metadata](https://developers.gigs.com/docs/core/metadata) related to the resource. |
| `activationTrigger` | creation | networkLatch | usageStarted | Yes | Indicates when a subscription add-on will take effect.  - `creation`: As soon as it is created. The user does not need to take any further action. - `networkLatch`: When the user's data session ends, which can be forced by power cycling the device. - `usageStarted`: When the user starts using add-on allowance on their device.  |
| `allowances` | object | Yes | The allowances included in the add-on. |
| `coverage` | mixed | Yes | The geographic coverage of the add-on. A value of `null` indicates that coverage is not applicable for this add-on. |
| `createdAt` | string | Yes | Time when the add-on was created . |
| `description` | string,null | Yes | The description of the add-on. |
| `name` | string | Yes | Name for the add-on. |
| `plans` | string[] | Yes | The plans this add-on is compatible with. |
| `price` | object | Yes | The price of the add-on. |
| `provider` | string | Yes | The ID of the network provider supported by this add-on. |
| `recurrenceType` | string | Yes | The recurrence type the add-on. |
| `status` | draft | available | archived | Yes | The current status of the add-on. |
| `type` | topUp | other | Yes | The type of the add-on. |
| `validity` | object,null | Yes | The validity period of the add-on. When the add-on is activated, it will expire after this         duration. Not all add-ons have a validity period. |
| `data` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The data allowance in bytes included in this add-on. A value of `-1` indicates unlimited data. |
| `dataUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the data value is always `byte`. |
| `sms` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The sms allowance included in this add-on. A value of `-1` indicates unlimited sms. |
| `smsUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the sms value is always `sms`. |
| `voice` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The voice call allowance in seconds included in this add-on. A value of `-1` indicates unlimited voice calls. |
| `voiceUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the voice value is always `second`. |

#### 403 — The authenticated user doesn't have permissions to perform the request.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

#### 404 — The requested resource doesn't exist.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

#### 422 — The request can't be processed, often due to an invalid parameter or incompatible system state.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

---

## Publish an add-on

`POST /projects/{project}/addons/{addon}/publish`

Set the status of an add-on to available. Available add-ons can be added to subscriptions.

### Path Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `project` | string | Yes | The unique identifier for the [project](https://developers.gigs.com/core/projects#the-project-resource). |
| `addon` | string | Yes | The unique identifier for the add-on. |

### Responses

#### 200 — Returns the available add-on.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `addon`. |
| `id` | string | Yes | Unique identifier for the add-on. |
| `metadata` | object | Yes | A set of key-value pairs, to store [metadata](https://developers.gigs.com/docs/core/metadata) related to the resource. |
| `activationTrigger` | creation | networkLatch | usageStarted | Yes | Indicates when a subscription add-on will take effect.  - `creation`: As soon as it is created. The user does not need to take any further action. - `networkLatch`: When the user's data session ends, which can be forced by power cycling the device. - `usageStarted`: When the user starts using add-on allowance on their device.  |
| `allowances` | object | Yes | The allowances included in the add-on. |
| `coverage` | mixed | Yes | The geographic coverage of the add-on. A value of `null` indicates that coverage is not applicable for this add-on. |
| `createdAt` | string | Yes | Time when the add-on was created . |
| `description` | string,null | Yes | The description of the add-on. |
| `name` | string | Yes | Name for the add-on. |
| `plans` | string[] | Yes | The plans this add-on is compatible with. |
| `price` | object | Yes | The price of the add-on. |
| `provider` | string | Yes | The ID of the network provider supported by this add-on. |
| `recurrenceType` | string | Yes | The recurrence type the add-on. |
| `status` | draft | available | archived | Yes | The current status of the add-on. |
| `type` | topUp | other | Yes | The type of the add-on. |
| `validity` | object,null | Yes | The validity period of the add-on. When the add-on is activated, it will expire after this         duration. Not all add-ons have a validity period. |
| `data` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The data allowance in bytes included in this add-on. A value of `-1` indicates unlimited data. |
| `dataUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the data value is always `byte`. |
| `sms` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The sms allowance included in this add-on. A value of `-1` indicates unlimited sms. |
| `smsUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the sms value is always `sms`. |
| `voice` | integer | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The voice call allowance in seconds included in this add-on. A value of `-1` indicates unlimited voice calls. |
| `voiceUnit` | string | Yes | <!-- theme: warning --> > #### Deprecated > > This property is deprecated and will be removed in the future. > Use `allowances` instead.   The unit of the voice value is always `second`. |

#### 403 — The authenticated user doesn't have permissions to perform the request.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

#### 404 — The requested resource doesn't exist.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

#### 422 — The request can't be processed, often due to an invalid parameter or incompatible system state.

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `object` | string | Yes | Type of object is always `error`. |
| `code` | string | No | An optional machine-readable description of the error. Present for errors that could be handled programmatically. |
| `details` | object[] | No | Optional array containing specific information for the current error.  <!-- theme: info --> > #### Preview > > This property is currently in preview and might change in the future. > > We’re excited to hear your feedback and ideas. Please send an email > to [support@gigs.com](mailto:support@gigs.com) to share your thoughts.  |
| `documentation` | string[] | No | An optional list of URLs providing further information to resolve the error. |
| `hint` | string | No | An optional explanation how to resolve the error. |
| `message` | string | Yes | A human readable description of the error. |
| `type` | string | Yes | The type of [error](https://developers.gigs.com/api/error-handling) returned. |

---
