Exporting Offers CSV
This topic provides developers with step-by-step instructions for exporting product pricing data in CSV format using Offers export API endpoints. It includes initiating an export request and downloading a CSV file containing product prices, enabling seamless integration with pricing analytics, inventory management, or external reporting tools.
Exporting product pricing data as a CSV file involves three main steps:
- Initiate an export request: Send a request to generate an
exportId
and configure filters to target specific data. - Retrieve the export details: Use the
exportId
to check the progress and retrieve thefileId
after the export is complete. - Download the CSV File: With the
fileId
, obtain a download link to retrieve the CSV file.
Export parameters
You can the refine the data included in your export by specifying filters in the filters
array. If you leave the array empty, all data is included. The following table describes the parameters for filtering and the functions of each parameter:
Parameter | Description |
---|---|
field | Specifies the data type used to search. Use priceType to set it as the search criteria. |
value | Specifies the exact value for the selected field . If priceType is used as field , you must enter the corresponding priceType value for this parameter. |
operator | Specifies how the value is applied to the field . If the field is priceType and the operator is set to EQUAL , all products with the specified value are included in the search result. |
The following table provides detailed information for the two different data types:
-
CALCULATED_PRICE
: If the data type you want to export isCALCULATED_PRICE
, use the followingfield
,operator
, andvalue
:field
operator
value
priceType
EQUAL
Filter your data by BASE
orSALE
price. If thefilters
array in the request body is empty, both prices are included in the CSV export.priceListIds
IN
Filter your data by a list of priceListIds
by including them in an array in the request body. If thefilters
array is empty, the data is based on the defaultpriceList
.calculationTime
EQUAL
Filter your data by an ISO timestamp to specify when the price should be calculated. The provided timestamp is used for price determination. If the filters
array is empty, the price is based on the CSV execution time. -
REDEMPTION
: If the data type you want to export isREDEMPTION
, use the followingfield
,operator
, andvalue
:field
operator
value
promoCode
EQUAL
Filter your data by redeemed promotion code. userId
EQUAL
Filter your data by provided user ID. email
EQUAL
Filter your data by provided email. orderId
EQUAL
Filter your data by provided order ID. redeemedAt
EQUAL
GREATER_THAN_OR_EQUAL_TO
LESS_THAN
Filter data based on the provided redemption date. If the operator is: EQUAL
: Redemptions on the provided date.GREATER_THAN_OR_EQUAL_TO
: Redemptions on and after the provided date.LESS_THAN
: Redemptions before the provided date.
storeId
EQUAL
Filter data based on case-insensitive promotion titles. promotionStatus
EQUAL
Filter data based on the specified promotion status: ACTIVE
EXPIRED
DISABLED
We recommend not to seach for all the
REDEMPTION
data by leaving thefilters
array empty.
Prerequisites
- Ensure that you have Offers editor or administrator privileges to fabric Offers. For more information, see the Role-Based Access Control section.
- Ensure that you have added one or more products using one of the following methods:
- Ensure that you have added price to the products using one of the following methods:
- Ensure that you have created a redemption for the products using the create a redemption endpoint.
Procedure
Step 1: Initiating an export request
-
Submit a POST request including the
type
, such asCALCULATED_PRICE
orREDEMPTION
with any requiredfilters
. The duration for this process increases with the amount of data being exported. The initiate offers export endpoint initiates a CSV export request and generates anexportId
. The following example shows a POST request with the request body set totype
asREDEMPTION
, searching forstoreId
with the valuestore001
:A successful request returns the following response:
Step 2: Retrieve the fileId
After initiating the export request, use the exportId
generated in step 1 to retrieve details of the request. You can view the export details, such as startedAt
and endedAt
times, as well as the totalDataExported
. The export request might take up to 10 hours.
1.Submit a GET request using the exportId
endpoint to check the export status to retrieve the fileId
.
- When the
status
isCOMPLETE
, use thefileId
in the download the exported CSV file step to download the CSV file.
Use the following GET request to retrieve the details of an export request, including its status and fileId
:
A successful request returns the following response:
status: COMPLETED
before moving to the next step. If you don’t receive a status
of COMPLETED
, you won’t get a complete export file.Step 3: Downloading the exported CSV file
-
After retrieving
fileId
from step 2, include it in the request body of the download exported CSV file endpoint to generate a temporary URL for downloading the file as shown in the following request:A successful request returns the following response with a URL used to download your file:
You can copy and paste the URL from the response into your browser’s address bar to download your file.
Common Variations
Searching with multiple fields
You can include more than one field
in the filters
array as long as you are filtering single data type. Using more than one field
allows you to refine the search results to meet all of the specified search conditions.
You can expand the following example of a POST request to initiate an export request with more than one field
. In the following example, the request filters CALCULATED_PRICE
by both priceType
and priceListIds
:
A successful request returns the following response:
Retrieving all export requests
If you have initiated multiple export requests, you can retrieve details of all export requests using the Get all export requests endpoint. A successful request returns an array containing details of all export request details, including the respective fieldId
values. You can expand the following example to see the GET response:
Troubleshooting
EXPORT_CALCULATED_PRICE_ERROR
If you get the EXPORT_CALCULATED_PRICE_ERROR
error after initiating an export request, resubmit the request. If the problem persists, contact fabric support.
Exported file is incomplete
If your exported CSV is incomplete, use the get export request endpoint and ensure that the status
is marked as COMPLETE
. If the status
remains IN_PROGRESS
after the 10-hours, try the request again or contact fabric support.
CSV file download link not working
The download link is valid for only 5 minutes. If the link has expired, generate the link again using the download exported CSV file endpoint. If the problem persists, contact fabric support.
Related Topics
Was this page helpful?