# Product BATCH delete

This endpoint allows you to delete multiple products or product variants at once. Batch
delete is processed asynchronously.


See how Asynchronous requests work on our developer's portal.


File with data must be in JSONL (jsonlines) format. Each line must contain one
item in JSON format. Maximum size of file is 100MB.

Each JSON row must contain either guid (to delete a whole product) or code (to delete a single variant).
If a product has only one variant, providing code deletes the whole product.


Asynchronous job processes the jsonl file row by row and tries to validate and delete each item. If there is
any error, the row is skipped and the error is logged, but processing of other rows continues.


In Log, every item is identified by its position in file (starting from 1).


See Product batch delete schema for more details.

Endpoint: DELETE /api/products/batch
Version: 1.0.0
Security: shoptetAccessToken, shoptetPrivateApiToken

## Header parameters:

  - `Content-Type` (string, required)

## Request fields (application/json):

  - `batchFileUrlPath` (string, required)
    Url to batch file with products data. File must be in JSONL format.

## Response 202 fields (application/json):

  - `data` (object, required)

  - `data.jobId` (string, required)
    token of job

  - `errors` (array,null, required)

  - `errors.errorCode` (string, required)
    Short text error identification

  - `errors.message` (string, required)
    Descriptive error message

  - `errors.instance` (string, required)
    Identification of the entity referenced

## Response 409 fields (application/json):

  - `data` (object,null)

  - `errors` (array,null)


## Response 404 fields
