Export Products
POSThttps://euwest.api.elasticpath.com/pcm/products/export
The Export API is available to make bulk updates to products in Product Experience Manager. You might also export products for your personal requirements.
The Export API builds a CSV file containing the product entries. A CSV file can contain up to 50,000 product entries. If you have more than 50,000 product entries, then another CSV file is created and so on, until all your products are exported.
The Job endpoint response specifies the location where the CSV file is stored. See Characteristics of CSV Files.
Exporting Selected Columns
Product exports support the ability to select a subset of columns to be included in the generated .csv file. This allows you to export only the data you need, making it easier to work with smaller, more focused datasets.
To specify the columns you want to include in the export, use the columns.include parameter in the request body of this endpoint. This parameter accepts an array of strings, where each string represents the name of a product attribute or a flow field.
Specifying Flow Field Columns:
The format for specifying flow field columns depends on the useTemplateSlugs setting:
- useTemplateSlugs:
true
: Specify flow field columns using the format:products(<flow_slug>):<field_name>
. For example:products(my_flow):my_field
. - useTemplateSlugs:
false
(default): Specify flow field columns using the format:template:<flow_id>:<field_name>
. For example:template:82c10a02-1851-4992-8ecb-d44f2782d09b:my_field
.
Mandatory Fields:
To ensure successful re-importing of product data, the following fields are always included in the export, regardless of the columns.include parameter:
- id
- name
- sku
- external_ref
- commodity_type
If the columns.include
parameter is not provided in the request, the system will export all available product fields.
Filtering
The following attributes and operators are supported.
Operator | Attribute | Description | Example |
---|---|---|---|
eq | id , sku , slug , upc_ean , manufacturer_part_num , name , templates , commodity_type , owner , product_types , parent_id , tags , status , has_nodes (false only) , created_at , updated_at , external_ref , description | Equals. Checks if the values of two operands are equal. If they are, the condition is true. For product_types , you can only specify one product type. Note: has_nodes can only be filtered as false . | ?filter=eq(name,some-name) |
like | sku , slug , upc_ean , manufacturer_part_num , name , tags , description , external_ref | Like. Checks if the operand contains the specified string. Wildcards are supported. | ?filter=like(name,*some-name*) |
in | id , name , sku , slug , upc_ean , manufacturer_part_num , product_types , parent_id , tags , external_ref | Checks if the values are included in the specified list. If they are, the condition is true. For product_types , you can specify more than one product type. | ?filter=in(id,some-id) |
gt | id , created_at , updated_at , external_ref | Greater than. Checks if the value of the field is greater than the given value. | ?filter=gt(updated_at,2024-01-01T00:00:00Z) |
ge | id , created_at , updated_at , external_ref | Greater than or equal to. Checks if the value of the field is greater than or equal to the given value. | ?filter=ge(created_at,2023-01-01T00:00:00Z) |
lt | id , created_at , updated_at , external_ref | Less than. Checks if the value of the field is less than the given value. | ?filter=lt(updated_at,2025-01-01T00:00:00Z) |
le | id , created_at , updated_at , external_ref | Less than or equal to. Checks if the value of the field is less than or equal to the given value. | ?filter=le(created_at,2022-01-01T00:00:00Z) |
eq (extensions) | extensions.book.isbn | Filters using a nested extension field. | ?filter=eq(extensions.book.isbn,1765426) |
Request
Responses
- 201
- 400
- 422
- 500
Export started
Bad request. The request failed validation.
Bad request. The request failed validation.
Internal server error. There was a system failure in the platform.
Authorization: http
name: bearerAuthtype: httpscheme: bearer
- csharp
- curl
- dart
- go
- http
- java
- javascript
- kotlin
- c
- nodejs
- objective-c
- ocaml
- php
- powershell
- python
- r
- ruby
- rust
- shell
- swift
- HTTPCLIENT
- RESTSHARP