> ## Documentation Index
> Fetch the complete documentation index at: https://docs.voucherify.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Async Action

> Check the result of a scheduled asynchronous operation.  

The table below lists the possible types of async actions. The types are different for each endpoint generating the async action. 

| **Types by Context** | **Endpoint** |
|:---|:---|
| **CAMPAIGN** |  |
| CAMPAIGN.VOUCHERS_IMPORT | **POST**   [`/campaigns/{campaignId}/import`](/api-reference/campaigns/import-vouchers-to-campaign) |
| CAMPAIGN.VOUCHERS_IMPORT_CSV | **POST**   [`/campaigns/{campaignId}/importCSV`](/api-reference/campaigns/import-vouchers-to-campaign-by-csv) |
| CAMPAIGN.VOUCHERS_UPDATE | **PUT** [`/campaigns/{campaignId}`](/api-reference/campaigns/update-campaign) |
| CAMPAIGN.VOUCHERS_DELETE | **DELETE** [`/campaigns/{campaignId}`](/api-reference/campaigns/delete-campaign) |
| CAMPAIGN.VOUCHERS_GENERATE | <ul><li>**POST** [`/campaigns`](/api-reference/campaigns/create-campaign): asynchronous for campaigns with more than 1 voucher, synchronous for campaign with 1 voucher</li><li>**POST**    [`/campaigns/{campaignId}/vouchers`](/api-reference/campaigns/add-vouchers-to-campaign)</li></ul> |
| **CUSTOMERS** |  |
| CUSTOMERS.IMPORT_CSV | **POST** [`/customers/importCSV`](/api-reference/customers/import-and-update-customers-using-csv) |
| CUSTOMERS.BULK_UPDATE | **POST** [`/customers/bulk/async`](/api-reference/customers/update-customers-in-bulk) |
| CUSTOMERS.METADATA_UPDATE | **POST** [`/customers/metadata/async`](/api-reference/customers/update-customers-metadata-in-bulk) |
| **PRODUCTS** |  |
| PRODUCTS.BULK_UPDATE | **POST** [`/products/bulk/async`](/api-reference/products/update-products-in-bulk)<br /> |
| PRODUCTS.METADATA_UPDATE | **POST** [`/products/metadata/async`](/api-reference/products/update-products-metadata-in-bulk) |
| PRODUCTS.IMPORT_CSV | **POST** [`/products/importCSV`](/api-reference/products/import-products-using-csv) |
| SKUS.IMPORT_CSV | **POST** [`/skus/importCSV`](/api-reference/products/import-skus-using-csv) |
| **VOUCHERS** |  |
| VOUCHERS.IMPORT | **POST** [`/vouchers/import`](/api-reference/vouchers/import-vouchers) |
| VOUCHERS.IMPORT_CSV | **POST** [`/vouchers/importCSV`](/api-reference/vouchers/import-vouchers-using-csv) |
| VOUCHERS.BULK_UPDATE | **POST** [`/vouchers/bulk/async`](/api-reference/vouchers/update-vouchers-in-bulk)<br /> |
| VOUCHERS.METADATA_UPDATE | **POST** [`/vouchers/metadata/async`](/api-reference/vouchers/update-vouchers-metadata-in-bulk) | 
| **ORDERS** |  |
| ORDERS.IMPORT | **POST** [`/orders/import`](/api-reference/orders/import-orders) |
| **METADATA KEY PURGE** |  |
| CAMPAIGNS.METADATA_KEY_PURGE<br />CUSTOMERS.METADATA_KEY_PURGE<br />PRODUCTS.METADATA_KEY_PURGE<br />VOUCHERS.METADATA_KEY_PURGE<br />ORDERS.METADATA_KEY_PURGE | No API endpoint equivalent. You can perform this action through the Dashboard. See Dashboard documentation: Dashboard > [Project Settings](/prepare/metadata#maintenance) |



## OpenAPI

````yaml /openapi/async-actions.json get /v1/async-actions/{asyncActionId}
openapi: 3.0.1
info:
  title: Voucherify API - Async Actions
  version: v2018-08-01
  description: >-
    Voucherify promotion engine REST API. Please see
    https://docs.voucherify.io/docs for more details.
  contact:
    name: Voucherify Team
    url: https://www.voucherify.io/contact-support
    email: support@voucherify.io
  termsOfService: https://www.voucherify.io/legal/subscription-agreement
  license:
    name: MIT
    url: https://github.com/voucherifyio/voucherify-js-sdk/blob/main/LICENSE
servers:
  - url: https://{cluster}.voucherify.io
    description: Base URL
    variables:
      cluster:
        default: api
        enum:
          - api
          - us1.api
          - as1.api
          - download
          - us1.download
          - as1.download
security: []
paths:
  /v1/async-actions/{asyncActionId}:
    parameters:
      - schema:
          $ref: '#/components/schemas/ParameterAsyncActionId'
        name: asyncActionId
        in: path
        required: true
        description: Unique ID of the asynchronous operation.
    get:
      tags:
        - Async Actions
      summary: Get Async Action
      description: >-
        Check the result of a scheduled asynchronous operation.  


        The table below lists the possible types of async actions. The types are
        different for each endpoint generating the async action. 


        | **Types by Context** | **Endpoint** |

        |:---|:---|

        | **CAMPAIGN** |  |

        | CAMPAIGN.VOUCHERS_IMPORT | **POST**  
        [`/campaigns/{campaignId}/import`](/api-reference/campaigns/import-vouchers-to-campaign)
        |

        | CAMPAIGN.VOUCHERS_IMPORT_CSV | **POST**  
        [`/campaigns/{campaignId}/importCSV`](/api-reference/campaigns/import-vouchers-to-campaign-by-csv)
        |

        | CAMPAIGN.VOUCHERS_UPDATE | **PUT**
        [`/campaigns/{campaignId}`](/api-reference/campaigns/update-campaign) |

        | CAMPAIGN.VOUCHERS_DELETE | **DELETE**
        [`/campaigns/{campaignId}`](/api-reference/campaigns/delete-campaign) |

        | CAMPAIGN.VOUCHERS_GENERATE | <ul><li>**POST**
        [`/campaigns`](/api-reference/campaigns/create-campaign): asynchronous
        for campaigns with more than 1 voucher, synchronous for campaign with 1
        voucher</li><li>**POST**   
        [`/campaigns/{campaignId}/vouchers`](/api-reference/campaigns/add-vouchers-to-campaign)</li></ul>
        |

        | **CUSTOMERS** |  |

        | CUSTOMERS.IMPORT_CSV | **POST**
        [`/customers/importCSV`](/api-reference/customers/import-and-update-customers-using-csv)
        |

        | CUSTOMERS.BULK_UPDATE | **POST**
        [`/customers/bulk/async`](/api-reference/customers/update-customers-in-bulk)
        |

        | CUSTOMERS.METADATA_UPDATE | **POST**
        [`/customers/metadata/async`](/api-reference/customers/update-customers-metadata-in-bulk)
        |

        | **PRODUCTS** |  |

        | PRODUCTS.BULK_UPDATE | **POST**
        [`/products/bulk/async`](/api-reference/products/update-products-in-bulk)<br
        /> |

        | PRODUCTS.METADATA_UPDATE | **POST**
        [`/products/metadata/async`](/api-reference/products/update-products-metadata-in-bulk)
        |

        | PRODUCTS.IMPORT_CSV | **POST**
        [`/products/importCSV`](/api-reference/products/import-products-using-csv)
        |

        | SKUS.IMPORT_CSV | **POST**
        [`/skus/importCSV`](/api-reference/products/import-skus-using-csv) |

        | **VOUCHERS** |  |

        | VOUCHERS.IMPORT | **POST**
        [`/vouchers/import`](/api-reference/vouchers/import-vouchers) |

        | VOUCHERS.IMPORT_CSV | **POST**
        [`/vouchers/importCSV`](/api-reference/vouchers/import-vouchers-using-csv)
        |

        | VOUCHERS.BULK_UPDATE | **POST**
        [`/vouchers/bulk/async`](/api-reference/vouchers/update-vouchers-in-bulk)<br
        /> |

        | VOUCHERS.METADATA_UPDATE | **POST**
        [`/vouchers/metadata/async`](/api-reference/vouchers/update-vouchers-metadata-in-bulk)
        | 

        | **ORDERS** |  |

        | ORDERS.IMPORT | **POST**
        [`/orders/import`](/api-reference/orders/import-orders) |

        | **METADATA KEY PURGE** |  |

        | CAMPAIGNS.METADATA_KEY_PURGE<br />CUSTOMERS.METADATA_KEY_PURGE<br
        />PRODUCTS.METADATA_KEY_PURGE<br />VOUCHERS.METADATA_KEY_PURGE<br
        />ORDERS.METADATA_KEY_PURGE | No API endpoint equivalent. You can
        perform this action through the Dashboard. See Dashboard documentation:
        Dashboard > [Project Settings](/prepare/metadata#maintenance) |
      operationId: get-async-action
      parameters: []
      responses:
        '200':
          description: Returns detailed information about the async action result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncActionGetResponseBody'
              examples:
                CAMPAIGN.VOUCHERS_IMPORT:
                  value:
                    id: aa_0af9b22296cf473a10
                    type: CAMPAIGN.VOUCHERS_IMPORT
                    status: DONE
                    result:
                      message: 0 voucher(s) imported successfully, 3 failed.
                      failed:
                        - code: CODE9
                          reason: >-
                            unit: must be a number, property is required (actual
                            value is 'EUR')
                        - code: CODE8
                          reason: >-
                            unit: must be a number, property is required (actual
                            value is 'EUR')
                        - code: CODE7
                          reason: >-
                            unit: must be a number, property is required (actual
                            value is 'EUR')
                      done_count: 0
                      failed_count: 3
                    created_at: '2023-01-20T07:23:43.289Z'
                    updated_at: '2023-01-20T07:23:44.044Z'
                    request_id: v-0c553fdb325688d510
                    progress: 100
                    processing_time: 755
                    object: async_action
                CAMPAIGN.VOUCHERS_IMPORT_CSV:
                  value:
                    id: aa_0c5543f00797b6113f
                    type: CUSTOMERS.IMPORT_CSV
                    status: DONE
                    result:
                      message: 0 customer(s) imported successfully, 2 failed.
                      failed:
                        - source_id: test-user@voucherify.io
                          row: 1
                          reason: >-
                            acquisition_channel: must be a string, property is
                            required, must be equal to one of
                            Facebook,Twitter,Website (actual value is 'snap')
                        - source_id: ''
                          row: 2
                          reason: >-
                            acquisition_channel: must be a string, property is
                            required, must be equal to one of
                            Facebook,Twitter,Website (actual value is 'insta')
                      done_count: 0
                      failed_count: 2
                    created_at: '2023-01-20T07:41:33.086Z'
                    updated_at: '2023-01-20T07:41:33.216Z'
                    request_id: v-0c5543eff2cb0f547f
                    progress: 100
                    processing_time: 130
                    object: async_action
                CAMPAIGN.VOUCHERS_DELETE:
                  value:
                    id: aa_0c553853d957b67bd4
                    type: CAMPAIGN.VOUCHERS_DELETE
                    status: DONE
                    result:
                      message: Deleted 2 vouchers.
                      done_count: 2
                    created_at: '2023-01-20T06:50:49.573Z'
                    updated_at: '2023-01-20T06:50:50.053Z'
                    request_id: v-0c553853b5c418c826
                    progress: 100
                    processing_time: 480
                    object: async_action
                CAMPAIGN.VOUCHERS_UPDATE:
                  value:
                    id: aa_0c5440c25c0e5728d0
                    type: CAMPAIGN.VOUCHERS_UPDATE
                    status: DONE
                    result:
                      message: Updated 1 vouchers.
                      done_count: 1
                    created_at: '2023-01-19T12:49:11.024Z'
                    updated_at: '2023-01-19T12:49:11.852Z'
                    request_id: v-0c5440c24304189e44
                    progress: 100
                    processing_time: 828
                    object: async_action
                CAMPAIGN.VOUCHERS_GENERATE:
                  value:
                    id: aa_0c54441d14d7b60014
                    type: CAMPAIGN.VOUCHERS_GENERATE
                    status: DONE
                    result:
                      message: Generated 2 vouchers.
                      done_count: 2
                    created_at: '2023-01-19T13:03:50.355Z'
                    updated_at: '2023-01-19T13:03:51.030Z'
                    request_id: v-0c54441d0e4418b647
                    progress: 100
                    processing_time: 675
                    object: async_action
                CAMPAIGNS.METADATA_KEY_PURGE:
                  value:
                    id: aa_0c554b22664a0eb5fc
                    type: CAMPAIGNS.METADATA_KEY_PURGE
                    status: DONE
                    result:
                      message: Updated 0 campaigns.
                      done_count: 0
                    created_at: '2023-01-20T08:12:59.673Z'
                    updated_at: '2023-01-20T08:13:00.638Z'
                    request_id: w-0c554b225f8a0eb5fb
                    progress: 100
                    processing_time: 965
                    object: async_action
                CUSTOMERS.IMPORT_CSV:
                  value:
                    id: aa_0c5543f00797b6113f
                    type: CUSTOMERS.IMPORT_CSV
                    status: DONE
                    result:
                      message: 0 customer(s) imported successfully, 2 failed.
                      failed:
                        - source_id: test-user@voucherify.io
                          row: 1
                          reason: >-
                            acquisition_channel: must be a string, property is
                            required, must be equal to one of
                            Facebook,Twitter,Website (actual value is 'snap')
                        - source_id: ''
                          row: 2
                          reason: >-
                            acquisition_channel: must be a string, property is
                            required, must be equal to one of
                            Facebook,Twitter,Website (actual value is 'insta')
                      done_count: 0
                      failed_count: 2
                    created_at: '2023-01-20T07:41:33.086Z'
                    updated_at: '2023-01-20T07:41:33.216Z'
                    request_id: v-0c5543eff2cb0f547f
                    progress: 100
                    processing_time: 130
                    object: async_action
                CUSTOMERS.BULK_UPDATE:
                  value:
                    id: aa_0c5547cc5e17b617b6
                    type: CUSTOMERS.BULK_UPDATE
                    status: DONE
                    operation_status: SUCCESS
                    result:
                      done_count: 3
                      failed_count: 0
                      reports:
                        - '{{voucherify-link-to-report}}'
                      reports_available_till: '2024-11-06T08:26:13.304Z'
                      errors: []
                    created_at: '2023-01-20T07:58:25.144Z'
                    updated_at: '2023-01-20T07:58:25.869Z'
                    request_id: v-0c5547cc4d8b0f5be4
                    progress: 100
                    processing_time: 725
                    object: async_action
                CUSTOMERS.METADATA_UPDATE:
                  value:
                    id: aa_0c554a92030e576181
                    type: CUSTOMERS.METADATA_UPDATE
                    status: DONE
                    operation_status: SUCCESS
                    result:
                      done_count: 3
                      failed_count: 0
                      reports:
                        - '{{voucherify-link-to-report}}'
                      reports_available_till: '2024-11-06T08:26:13.304Z'
                      errors: []
                    created_at: '2023-01-20T08:10:31.821Z'
                    updated_at: '2023-01-20T08:10:32.564Z'
                    request_id: v-0c554a91fb4b0f61a2
                    progress: 100
                    processing_time: 743
                    object: async_action
                CUSTOMERS.METADATA_KEY_PURGE:
                  value:
                    id: aa_0c5551f2ab0a0ebf0e
                    type: CUSTOMERS.METADATA_KEY_PURGE
                    status: DONE
                    result:
                      message: Updated 0 customers.
                      done_count: 0
                    created_at: '2023-01-20T08:42:45.804Z'
                    updated_at: '2023-01-20T08:42:46.079Z'
                    request_id: w-0c5551f2a38a0ebf0d
                    progress: 100
                    processing_time: 275
                    object: async_action
                PRODUCTS.BULK_UPDATE:
                  value:
                    id: aa_0c5553f0f457b6328e
                    type: PRODUCTS.BULK_UPDATE
                    status: DONE
                    operation_status: SUCCESS
                    result:
                      done_count: 3
                      failed_count: 0
                      reports:
                        - '{{voucherify-link-to-report}}'
                      reports_available_till: '2024-11-06T08:26:13.304Z'
                      errors: []
                    created_at: '2023-01-20T08:51:28.337Z'
                    updated_at: '2023-01-20T08:51:28.439Z'
                    request_id: v-0c5553f0e94b0f7502
                    progress: 100
                    processing_time: 102
                    object: async_action
                PRODUCTS.METADATA_UPDATE:
                  value:
                    id: aa_0c5554869b97b633b4
                    type: PRODUCTS.METADATA_UPDATE
                    status: DONE
                    operation_status: SUCCESS
                    result:
                      done_count: 3
                      failed_count: 0
                      reports:
                        - '{{voucherify-link-to-report}}'
                      reports_available_till: '2024-11-06T08:26:13.304Z'
                      errors: []
                    created_at: '2023-01-20T08:54:01.582Z'
                    updated_at: '2023-01-20T08:54:02.436Z'
                    request_id: v-0c55548694c418f9dd
                    progress: 100
                    processing_time: 854
                    object: async_action
                PRODUCTS.METADATA_KEY_PURGE:
                  value:
                    id: aa_0c5552d997ca0ec03a
                    type: PRODUCTS.METADATA_KEY_PURGE
                    status: DONE
                    result:
                      message: Updated 2 products.
                      done_count: 2
                    created_at: '2023-01-20T08:46:42.271Z'
                    updated_at: '2023-01-20T08:46:43.240Z'
                    request_id: w-0c5552d98e8a0ec039
                    progress: 100
                    processing_time: 969
                    object: async_action
                VOUCHERS.IMPORT:
                  value:
                    id: aa_0c5559be44d7b63c06
                    type: VOUCHERS.IMPORT
                    status: DONE
                    result:
                      message: 0 voucher(s) imported successfully, 3 failed.
                      failed:
                        - code: PROMO-CODE31
                          reason: >-
                            unit: must be a number, must be equal to one of 1,2
                            (actual value is 'EUR')
                        - code: PROMO-CODE21
                          reason: >-
                            unit: must be a number, must be equal to one of 1,2
                            (actual value is 'EUR')
                        - code: GIFT-CARD-100-1
                          reason: >-
                            unit: must be a number, must be equal to one of 1,2
                            (actual value is 'EUR')
                      done_count: 0
                      failed_count: 3
                    created_at: '2023-01-20T09:16:49.299Z'
                    updated_at: '2023-01-20T09:16:50.238Z'
                    request_id: v-0c5559be25c418824a
                    progress: 100
                    processing_time: 939
                    object: async_action
                VOUCHERS.IMPORT_CSV:
                  value:
                    id: aa_0c555db3d697b643e1
                    type: VOUCHERS.IMPORT_CSV
                    status: DONE
                    result:
                      message: 0 voucher(s) imported successfully, 2 failed.
                      failed:
                        - code: FALL2023
                          row: 1
                          reason: Voucher Type is required
                        - code: FALL2024
                          row: 2
                          reason: Voucher Type is required
                      done_count: 0
                      failed_count: 2
                    created_at: '2023-01-20T09:34:07.194Z'
                    updated_at: '2023-01-20T09:34:07.367Z'
                    request_id: v-0c555db3ba8b0f0767
                    progress: 100
                    processing_time: 173
                    object: async_action
                VOUCHERS.BULK_UPDATE:
                  value:
                    id: aa_0c555e8115d7b64504
                    type: VOUCHERS.BULK_UPDATE
                    status: DONE
                    operation_status: SUCCESS
                    result:
                      done_count: 3
                      failed_count: 0
                      reports:
                        - '{{voucherify-link-to-report}}'
                      reports_available_till: '2024-11-06T08:26:13.304Z'
                      errors: []
                    created_at: '2023-01-20T09:37:37.367Z'
                    updated_at: '2023-01-20T09:37:37.520Z'
                    request_id: v-0c555e810904188aa4
                    progress: 100
                    processing_time: 153
                    object: async_action
                VOUCHERS.METADATA_UPDATE:
                  value:
                    id: aa_0c555ed40857b6463a
                    type: VOUCHERS.METADATA_UPDATE
                    status: DONE
                    operation_status: SUCCESS
                    result:
                      done_count: 3
                      failed_count: 0
                      reports:
                        - '{{voucherify-link-to-report}}'
                      reports_available_till: '2024-11-06T08:26:13.304Z'
                      errors: []
                    created_at: '2023-01-20T09:39:02.305Z'
                    updated_at: '2023-01-20T09:39:02.640Z'
                    request_id: v-0c555ed40084188b55
                    progress: 100
                    processing_time: 335
                    object: async_action
                VOUCHERS.METADATA_KEY_PURGE:
                  value:
                    id: aa_0c55534bd64a0ec0e0
                    type: VOUCHERS.METADATA_KEY_PURGE
                    status: DONE
                    result:
                      message: Updated 9 vouchers.
                      done_count: 9
                    created_at: '2023-01-20T08:48:39.257Z'
                    updated_at: '2023-01-20T08:48:40.503Z'
                    request_id: w-0c55534bcfca0ec0df
                    progress: 100
                    processing_time: 1246
                    object: async_action
                SKUS.IMPORT_CSV:
                  value:
                    id: aa_0c5558728d0e577e67
                    type: SKUS.IMPORT_CSV
                    status: DONE
                    result:
                      message: 4 sku(s) imported successfully, 0 failed.
                      failed: []
                      done_count: 4
                      failed_count: 0
                    created_at: '2023-01-20T09:11:09.620Z'
                    updated_at: '2023-01-20T09:11:10.270Z'
                    request_id: v-0c5558726f0b0f7d82
                    progress: 100
                    processing_time: 650
                    object: async_action
                PRODUCTS.IMPORT_CSV:
                  value:
                    id: aa_0c55578e914e577cf1
                    type: PRODUCTS.IMPORT_CSV
                    status: DONE
                    result:
                      message: 1 product(s) imported successfully, 1 failed.
                      failed:
                        - row: 1
                          reason: >-
                            vendor: must be a string, property is required, must
                            be equal to one of Vendor 1,Vendor 2 (actual value
                            is 'Vendor 3')
                      done_count: 1
                      failed_count: 1
                    created_at: '2023-01-20T09:07:16.165Z'
                    updated_at: '2023-01-20T09:07:17.025Z'
                    request_id: v-0c55578e7a0418fef5
                    progress: 100
                    processing_time: 860
                    object: async_action
                ORDERS.METADATA_KEY_PURGE:
                  value:
                    id: aa_0c555fda50472c83a8
                    type: ORDERS.METADATA_KEY_PURGE
                    status: DONE
                    result:
                      message: Updated 1 orders.
                      done_count: 1
                    created_at: '2023-01-20T09:43:30.881Z'
                    updated_at: '2023-01-20T09:43:31.217Z'
                    request_id: w-0c555fda45c72c83a7
                    progress: 100
                    processing_time: 336
                    object: async_action
                ORDERS.IMPORT:
                  value:
                    id: aa_0c5564b67d0e571534
                    type: ORDERS.IMPORT
                    status: DONE
                    result:
                      message: 1 order(s) imported successfully, 1 failed.
                      failed:
                        - source_id: null
                          reason: Internal error
                      done_count: 1
                      failed_count: 1
                    created_at: '2023-01-20T10:04:44.916Z'
                    updated_at: '2023-01-20T10:04:46.102Z'
                    request_id: v-0c5564b6688b0f155d
                    progress: 100
                    processing_time: 1186
                    object: async_action
        '404':
          description: >-
            Returns an error indicating that the async action with given ID was
            not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                Async-Action-Not-Found:
                  value:
                    code: 404
                    key: not_found
                    message: Resource not found
                    details: Cannot find async_action with id aa_0aeb82bd55d5beffb
                    request_id: v-0aeb88df54c82af560
                    resource_id: aa_0aeb82bd55d5beffb
                    resource_type: async_action
      security:
        - X-App-Id: []
          X-App-Token: []
        - X-Voucherify-OAuth:
            - api
            - async-actions
components:
  schemas:
    ParameterAsyncActionId:
      type: string
      example: aa_0afb3d009a55814a48
    AsyncActionGetResponseBody:
      title: Async Action Get Response Body
      description: Response body schema for **GET** `v1/async-actions/{asyncActionId}`.
      allOf:
        - $ref: '#/components/schemas/AsyncAction'
    Error:
      title: Error Object
      type: object
      description: Error details
      properties:
        code:
          type: integer
          description: Error's HTTP status code.
        key:
          type: string
          description: Short string describing the kind of error which occurred.
        message:
          type: string
          description: A human-readable message providing a short description of the error.
        details:
          type: string
          description: A human-readable message providing more details about the error.
        request_id:
          type: string
          example: v-0a885062c80375740f
          description: >-
            This ID is useful when troubleshooting and/or finding the root cause
            of an error response by our support team.
        resource_id:
          type: string
          description: >-
            Unique resource ID that can be used in another endpoint to get more
            details.
          example: rf_0c5d710a87c8a31f86
        resource_type:
          type: string
          description: The resource type.
          example: voucher
        error:
          type: object
          description: Includes additional information about the error.
          properties:
            message:
              type: string
              description: The message configured by the user in a validation rule.
      required:
        - code
        - message
    AsyncAction:
      title: Async Action
      description: This is an object representing an asynchronous action.
      allOf:
        - $ref: '#/components/schemas/AsyncActionBase'
        - type: object
          properties:
            result:
              oneOf:
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_campaign_vouchers_import
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_campaign_vouchers_import_csv
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_campaign_vouchers_update
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_campaign_vouchers_delete
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_campaign_vouchers_generate
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_campaign_metadata_key_purge
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_customers_import_csv
                - $ref: >-
                    #/components/schemas/AsyncActionResultCustomersBulkUpdateResponseBody
                - $ref: >-
                    #/components/schemas/AsyncActionResultCustomersMetadataUpdateResponseBody
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_customers_metadata_key_purge
                - $ref: >-
                    #/components/schemas/AsyncActionResultProductsBulkUpdateResponseBody
                - $ref: >-
                    #/components/schemas/AsyncActionResultProductsMetadataUpdateResponseBody
                - $ref: '#/components/schemas/AsyncActionResultProductsImportCSV'
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_skus_import_csv
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_products_metadata_key_purge
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_vouchers_import
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_vouchers_import_csv
                - $ref: >-
                    #/components/schemas/AsyncActionResultVouchersBulkUpdateResponseBody
                - $ref: >-
                    #/components/schemas/AsyncActionResultVouchersMetadataUpdateResponseBody
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_vouchers_metadata_key_purge
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_orders_import
                - $ref: >-
                    #/components/schemas/17_res_obj_get_async_action_result_orders_metadata_key_purge
    AsyncActionBase:
      title: Async Action Base
      type: object
      description: This is an object representing an asynchronous action.
      properties:
        id:
          type: string
          example: aa_0adad13d6f057f088e
          description: Async action unique ID.
        type:
          type: string
          description: Type of async action.
          enum:
            - CAMPAIGN.VOUCHERS_IMPORT
            - CAMPAIGN.VOUCHERS_IMPORT_CSV
            - CAMPAIGN.VOUCHERS_UPDATE
            - CAMPAIGN.VOUCHERS_DELETE
            - CAMPAIGN.VOUCHERS_GENERATE
            - CAMPAIGNS.METADATA_KEY_PURGE
            - CUSTOMERS.IMPORT_CSV
            - CUSTOMERS.BULK_UPDATE
            - CUSTOMERS.METADATA_UPDATE
            - CUSTOMERS.METADATA_KEY_PURGE
            - PRODUCTS.BULK_UPDATE
            - PRODUCTS.METADATA_UPDATE
            - PRODUCTS.METADATA_KEY_PURGE
            - PRODUCTS.IMPORT_CSV
            - SKUS.IMPORT_CSV
            - VOUCHERS.IMPORT
            - VOUCHERS.IMPORT_CSV
            - VOUCHERS.BULK_UPDATE
            - VOUCHERS.METADATA_UPDATE
            - VOUCHERS.METADATA_KEY_PURGE
            - ORDERS.IMPORT
            - ORDERS.METADATA_KEY_PURGE
        status:
          type: string
          description: >-
            Status of the async action. Informs you whether the async action has
            already been completed.
          enum:
            - DONE
            - ENQUEUED
            - FAILED
            - IN_PROGRESS
        operation_status:
          type: string
          description: >-
            Status of async action processing. Informs about the async action
            status, whether it failed, succeeded, or the status is unknown.
          enum:
            - FAILED
            - SUCCESS
            - UNKNOWN
        created_at:
          type: string
          description: >-
            Timestamp representing the date and time when the async action was
            scheduled in ISO 8601 format.
          example: '2022-06-23T11:21:45.578Z'
          format: date-time
        updated_at:
          type: string
          example: '2022-06-23T11:21:46.795Z'
          description: >-
            Timestamp representing the date and time when the async action was
            updated. The value is shown in the ISO 8601 format.
          format: date-time
        request_id:
          type: string
          example: v-0b45cee140c3c9b5ca
          description: Unique request ID.
        processing_time:
          type: integer
          example: 1217
          description: The length of time it took to process the request in milliseconds.
        progress:
          type: integer
          description: '% progress to completion of the asynchronous action.'
          minimum: 0
          maximum: 100
        object:
          type: string
          default: async_action
          description: >-
            The type of the object represented by JSON. This object stores
            information about the `async_action`.
          enum:
            - async_action
    17_res_obj_get_async_action_result_campaign_vouchers_import:
      title: CAMPAIGN.VOUCHERS_IMPORT
      type: object
      description: Result schema for a `CAMPAIGN.VOUCHERS_IMPORT` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        failed:
          type: array
          description: >-
            If any records failed during the process, this array shows the
            failure details.
          items:
            type: object
            properties:
              code:
                type: string
                description: Unique voucher code.
              reason:
                type: string
                description: Detailed failure cause for the voucher code import.
        done_count:
          type: integer
          description: Number of resources processed successfully.
        failed_count:
          type: integer
          description: Number of resources failed to process.
    17_res_obj_get_async_action_result_campaign_vouchers_import_csv:
      title: CAMPAIGN.VOUCHERS_IMPORT_CSV
      type: object
      description: Result schema for a `CAMPAIGN.VOUCHERS_IMPORT_CSV` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        failed:
          type: array
          description: >-
            If any records failed during the process, this array shows the
            failure details.
          items:
            type: object
            properties:
              code:
                type: string
                description: Unique voucher code.
              row:
                type: integer
                description: >-
                  The CSV file row number where the code definition is recorded.
                  The row counter excludes the file headers row.
              reason:
                type: string
                description: Detailed failure cause for the voucher code import.
        done_count:
          type: integer
          description: Number of resources processed successfully.
        failed_count:
          type: integer
          description: Number of resources failed to process.
    17_res_obj_get_async_action_result_campaign_vouchers_update:
      title: CAMPAIGN.VOUCHERS_UPDATE
      type: object
      description: Result schema for a `CAMPAIGN.VOUCHERS_UPDATE` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        done_count:
          type: integer
          description: Number of resources processed successfully.
    17_res_obj_get_async_action_result_campaign_vouchers_delete:
      title: CAMPAIGN.VOUCHERS_DELETE
      type: object
      description: Result schema for a `CAMPAIGN.VOUCHERS_DELETE` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        done_count:
          type: integer
          description: Number of resources processed successfully.
    17_res_obj_get_async_action_result_campaign_vouchers_generate:
      title: CAMPAIGN.VOUCHERS_GENERATE
      type: object
      description: Result schema for a `CAMPAIGN.VOUCHERS_GENERATE` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        done_count:
          type: integer
          description: Number of resources processed successfully.
    17_res_obj_get_async_action_result_campaign_metadata_key_purge:
      title: CAMPAIGNS.METADATA_KEY_PURGE
      type: object
      description: Result schema for a `CAMPAIGNS.METADATA_KEY_PURGE` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        done_count:
          type: integer
          description: Number of resources processed successfully.
    17_res_obj_get_async_action_result_customers_import_csv:
      title: CUSTOMERS.IMPORT_CSV
      type: object
      description: Result schema for a `CUSTOMERS.IMPORT_CSV` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        failed:
          type: array
          description: >-
            If any records failed during the process, this array shows the
            failure details.
          items:
            type: object
            properties:
              source_id:
                type: string
                description: >-
                  Unique customer ID from your inventory system as indicated in
                  the CSV file.
              row:
                type: integer
                description: >-
                  The CSV file row number where the customer is recorded. The
                  row counter excludes the file headers row.
              reason:
                type: string
                description: Detailed failure cause for the customer import.
        done_count:
          type: integer
          description: Number of resources processed successfully.
        failed_count:
          type: integer
          description: Number of resources failed to process.
    AsyncActionResultCustomersBulkUpdateResponseBody:
      title: CUSTOMERS.BULK_UPDATE
      allOf:
        - $ref: >-
            #/components/schemas/AsyncActionsVoucherCustomerProductBulkUpdateResult
        - description: Result schema for a `CUSTOMERS.BULK_UPDATE` async action type.
        - type: object
          properties:
            errors:
              type: array
              description: List of errors encountered during processing.
              items:
                type: object
                properties:
                  message:
                    type: string
                    description: >-
                      A human-readable message providing a short description of
                      the error.
                  details:
                    type: string
                    description: >-
                      A human-readable message providing more details about the
                      error.
                  key:
                    type: string
                    description: Short string describing the kind of error which occurred.
                  source_id:
                    type: string
                    description: >-
                      Source identifier of the customer for which the error
                      occurred.
                required:
                  - message
                  - details
                  - key
                  - source_id
          required:
            - errors
    AsyncActionResultCustomersMetadataUpdateResponseBody:
      title: CUSTOMERS.METADATA_UPDATE
      description: Result schema for a `CUSTOMERS.METADATA_UPDATE` async action type.
      type: object
      properties:
        errors:
          type: array
          description: List of errors encountered during processing.
          items:
            type: object
            properties:
              message:
                type: string
                description: >-
                  A human-readable message providing a short description of the
                  error.
              details:
                type: string
                description: >-
                  A human-readable message providing more details about the
                  error.
              key:
                type: string
                description: Short string describing the kind of error which occurred.
            required:
              - message
              - details
              - key
      required:
        - errors
    17_res_obj_get_async_action_result_customers_metadata_key_purge:
      title: CUSTOMERS.METADATA_KEY_PURGE
      type: object
      description: Result schema for a `CUSTOMERS.METADATA_KEY_PURGE` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        done_count:
          type: integer
          description: Number of resources processed successfully.
    AsyncActionResultProductsBulkUpdateResponseBody:
      title: PRODUCTS.BULK_UPDATE
      allOf:
        - $ref: >-
            #/components/schemas/AsyncActionsVoucherCustomerProductBulkUpdateResult
        - description: '`Result schema for a PRODUCTS.BULK_UPDATE` async action type.'
        - type: object
          properties:
            errors:
              type: array
              description: List of errors encountered during processing.
              items:
                type: object
                properties:
                  message:
                    type: string
                    description: >-
                      A human-readable message providing a short description of
                      the error.
                  details:
                    type: string
                    description: >-
                      A human-readable message providing more details about the
                      error.
                  key:
                    type: string
                    description: Short string describing the kind of error which occurred.
                  source_id:
                    type: string
                    description: >-
                      Source identifier of the product for which the error
                      occurred.
                required:
                  - message
                  - details
                  - key
                  - source_id
          required:
            - errors
    AsyncActionResultProductsMetadataUpdateResponseBody:
      title: PRODUCTS.METADATA_UPDATE
      description: Result schema for a `PRODUCTS.METADATA_UPDATE` async action type.
      type: object
      properties:
        errors:
          type: array
          description: List of errors encountered during processing.
          items:
            type: object
            properties:
              message:
                type: string
                description: >-
                  A human-readable message providing a short description of the
                  error.
              details:
                type: string
                description: >-
                  A human-readable message providing more details about the
                  error.
              key:
                type: string
                description: Short string describing the kind of error which occurred.
            required:
              - message
              - details
              - key
      required:
        - errors
    AsyncActionResultProductsImportCSV:
      title: PRODUCTS.IMPORT_CSV
      type: object
      description: Result schema for a `PRODUCTS.IMPORT_CSV` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        failed:
          type: array
          description: >-
            If any records failed during the process, this array shows the
            failure details.
          items:
            type: object
            description: Contains the details regarding a CSV file line item failed import.
            properties:
              row:
                type: integer
                description: >-
                  The CSV file row number where the product definition is
                  recorded. The row counter excludes the file headers row.
              source_id:
                type: string
                description: The source identifier of the product that caused the error.
              reason:
                type: string
                description: Detailed failure cause for the product import.
        done_count:
          type: integer
          description: Number of resources processed successfully.
        failed_count:
          type: integer
          description: Number of resources failed to process.
    17_res_obj_get_async_action_result_skus_import_csv:
      title: SKUS.IMPORT_CSV
      type: object
      description: Result schema for a `SKUS.IMPORT_CSV` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
          example: 2 sku(s) imported successfully, 6 failed.
        failed:
          type: array
          description: >-
            If any records failed during the process, this array shows the
            failure details.
          items:
            type: object
            description: Contains the details regarding a CSV file line item failed import.
            properties:
              row:
                type: integer
                description: >-
                  The CSV file row number where the SKU definition is recorded.
                  The row counter excludes the file headers row.
                example: 2
              reason:
                type: string
                description: Detailed failure cause for the SKU import.
                example: >-
                  Resource sku with id size-small is in use by products with ids
                  [prod_0b0e3441c2462eff2c]
        done_count:
          type: integer
          description: Number of resources processed successfully.
        failed_count:
          type: integer
          description: Number of resources failed to process.
    17_res_obj_get_async_action_result_products_metadata_key_purge:
      title: PRODUCTS.METADATA_KEY_PURGE
      type: object
      description: Result schema for a `PRODUCTS.METADATA_KEY_PURGE` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        done_count:
          type: integer
          description: Number of resources updated successfully.
    17_res_obj_get_async_action_result_vouchers_import:
      title: VOUCHERS.IMPORT
      type: object
      description: Result schema for a `VOUCHERS.IMPORT` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        failed:
          description: >-
            If any records failed during the process, this array shows the
            failure details.
          type: object
          properties:
            code:
              type: string
              description: Unique voucher code.
            reason:
              type: string
              description: Detailed failure cause for the voucher code import.
        done_count:
          type: integer
          description: Number of resources processed successfully.
        failed_count:
          type: integer
          description: Number of resources failed to process.
    17_res_obj_get_async_action_result_vouchers_import_csv:
      title: VOUCHERS.IMPORT_CSV
      type: object
      description: Result schema for a `VOUCHERS.IMPORT_CSV` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        failed:
          type: array
          description: >-
            If any records failed during the process, this array shows the
            failure details.
          items:
            type: object
            properties:
              code:
                type: string
                description: Unique voucher code.
              row:
                type: integer
                description: >-
                  The CSV file row number where the code definition is recorded.
                  The row counter excludes the file headers row.
              reason:
                type: string
                description: Detailed failure cause for the voucher code import.
        done_count:
          type: integer
          description: Number of resources processed successfully.
        failed_count:
          type: integer
          description: Number of resources failed to process.
    AsyncActionResultVouchersBulkUpdateResponseBody:
      title: VOUCHERS.BULK_UPDATE
      allOf:
        - $ref: >-
            #/components/schemas/AsyncActionsVoucherCustomerProductBulkUpdateResult
        - description: Result schema for a `VOUCHERS.BULK_UPDATE` async action type.
        - type: object
          properties:
            errors:
              type: array
              description: List of errors encountered during processing.
              items:
                type: object
                properties:
                  message:
                    type: string
                    description: >-
                      A human-readable message providing a short description of
                      the error.
                  details:
                    type: string
                    description: >-
                      A human-readable message providing more details about the
                      error.
                  key:
                    type: string
                    description: Short string describing the kind of error which occurred.
                  code:
                    type: string
                    description: Code of the voucher for which the error occurred.
                required:
                  - message
                  - details
                  - key
                  - code
          required:
            - errors
    AsyncActionResultVouchersMetadataUpdateResponseBody:
      title: VOUCHERS.METADATA_UPDATE
      description: Result schema for a `VOUCHERS.METADATA_UPDATE` async action type.
      type: object
      properties:
        errors:
          type: array
          description: List of errors encountered during processing.
          items:
            type: object
            properties:
              message:
                type: string
                description: >-
                  A human-readable message providing a short description of the
                  error.
              details:
                type: string
                description: >-
                  A human-readable message providing more details about the
                  error.
              key:
                type: string
                description: Short string describing the kind of error which occurred.
            required:
              - message
              - details
              - key
      required:
        - errors
    17_res_obj_get_async_action_result_vouchers_metadata_key_purge:
      title: VOUCHERS.METADATA_KEY_PURGE
      type: object
      description: Result schema for a `VOUCHERS.METADATA_KEY_PURGE` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        done_count:
          type: integer
          description: Number of resources processed successfully.
    17_res_obj_get_async_action_result_orders_import:
      title: ORDERS.IMPORT
      type: object
      description: Result schema for a `ORDERS.IMPORT` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        failed:
          description: >-
            If any records failed during the process, this array shows the
            failure details.
          type: object
          properties:
            source_id:
              type: string
              description: Unique order source ID.
            reason:
              type: string
              description: Detailed failure cause for the voucher code import.
        done_count:
          type: integer
          description: Number of resources processed successfully.
        failed_count:
          type: integer
          description: Number of resources failed to process.
    17_res_obj_get_async_action_result_orders_metadata_key_purge:
      title: ORDERS.METADATA_KEY_PURGE
      type: object
      description: Result schema for a `ORDERS.METADATA_KEY_PURGE` async action type.
      properties:
        message:
          type: string
          description: >-
            A human-readable message providing a short description about the
            result.
        done_count:
          type: integer
          description: Number of resources processed successfully.
    AsyncActionsVoucherCustomerProductBulkUpdateResult:
      type: object
      title: Async Action Voucher Customer Product Bulk Update Result
      description: Result details of the async action.
      properties:
        done_count:
          type: integer
          description: Number of items successfully processed.
        failed_count:
          type: integer
          description: Number of items that failed to be processed.
        reports:
          type: array
          description: List of URLs to report files.
          items:
            type: string
            description: URL to the report file.
        reports_available_till:
          type: string
          format: date-time
          description: Timestamp until the reports are available.
      required:
        - done_count
        - failed_count
        - reports
        - reports_available_till
  securitySchemes:
    X-App-Id:
      type: apiKey
      name: X-App-Id
      in: header
    X-App-Token:
      type: apiKey
      name: X-App-Token
      in: header
    X-Voucherify-OAuth:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: https://api.voucherify.io/v1/oauth/token
          scopes:
            api: Gives access to whole server-side API.
            vouchers: >-
              Gives access to all endpoints and methods starting with
              `v1/vouchers`.
            client_api: Gives access to whole client-side API.
            client_vouchers: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/vouchers`.
            promotions: >-
              Gives access to all endpoints and methods starting with
              `/v1/promotions`.
            client_promotions: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/promotions`
            campaigns: >-
              Gives access to all endpoints and methods starting with
              `v1/campaigns`.
            client_publish: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/publish`.
            exports: >-
              Gives access to all endpoints and methods starting with
              `/v1/exports`.
            publications: >-
              Gives access to all endpoints and methods starting with
              `/v1/publications`.
            client_validate: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/validate`.
            validations: >-
              Gives access to all endpoints and methods starting with
              `/v1/validations`.
            client_validations: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/validations`.
            qualifications: >-
              Gives access to all endpoints and methods starting with
              `/v1/qualifications`.
            client_qualifications: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/qualifications`.
            client_redeem: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/redeem
            redemptions: >-
              Gives access to all endpoints and methods starting with
              `/v1/redemptions`.
            client_redemptions: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/redemptions`
            customers: >-
              Gives access to all endpoints and methods starting with
              `/v1/customers`.
            client_customers: >-
              Gives access to all endpoints and methods starting with
              `/client/v1/customers`.
            orders: >-
              Gives access to all endpoints and methods starting with
              `/v1/orders`.
            products: >-
              Gives access to all endpoints and methods starting with
              `/v1/products`.
            skus: >-
              Gives access to all endpoints and methods starting with
              `/v1/SKUs`.
            validation-rules: >-
              Gives access to all endpoints and methods starting with
              `/v1/validation-rules`.
            validation-rules-assignments: >-
              Gives access to all endpoints and methods starting with
              `/v1/validation-rules-assignments
            segments: >-
              Gives access to all endpoints and methods starting with
              `/v1/segments`.
            events: >-
              Gives access to all endpoints and methods starting with
              `/v1/events`.
            client_events: >-
              Gives access to all endpoints and methods starting with
              `client/v1/events`.
            rewards: >-
              Gives access to all endpoints and methods starting with
              `/v1/rewards`.
            assets: >-
              Gives access to all endpoints and methods starting with
              `/v1/assets`.
            task-results: >-
              Gives access to all endpoints and methods starting with
              `/v1/task-results`.
            loyalties: >-
              Gives access to all endpoints and methods starting with
              `/v1/loyalties`.
            client_consents: >-
              Gives access to all endpoints and methods starting with
              `client/v1/consents`.
            consents: >-
              Gives access to all endpoints and methods starting with
              `/v1/consents`.
            async-actions: >-
              Gives access to all endpoints and methods starting with
              `/v1/async-actions`.
            product-collections: >-
              Gives access to all endpoints and methods starting with
              `/v1/product-collections`.
            categories: >-
              Gives access to all endpoints and methods starting with
              `/v1/categories`.
            metadata-schemas: >-
              Gives access to all endpoints and methods starting with
              `/v1/metadata-schemas`.
            locations: >-
              Gives access to all endpoints and methods starting with
              `/v1/locations`.
            referrals: >-
              Gives access to all endpoints and methods starting with
              `/v1/referrals`.
            trash-bin: >-
              Gives access to all endpoints and methods starting with
              `/v1/trash-bin`.
            templates: >-
              Gives access to all endpoints and methods starting with
              `/v1/templates`.

````