Exports

Exports let you download your entire catalog or a filtered subset in multiple formats. All exports are processed asynchronously — the API returns a job ID immediately and you poll for completion.


POST/exports/csv/products

Export to CSV

Creates a CSV export job.

Body parameters

  • Name
    filters
    Type
    object
    Description

    Optional filters (e.g. {"is_active": true, "supplier_id": "uuid"}).

  • Name
    include_fields
    Type
    array
    Description

    List of fields to include. Exports all fields if omitted.

  • Name
    exclude_fields
    Type
    array
    Description

    Fields to exclude from the output.

  • Name
    utf8_bom
    Type
    boolean
    Description

    Prepend UTF-8 BOM for Excel compatibility (default: true).

Request

POST
/exports/csv/products
curl -X POST https://api.pixeepim.com/api/v1/exports/csv/products \
  -H "Authorization: Bearer {api_key}" \
  -H "Content-Type: application/json" \
  -d '{
    "filters": {"is_active": true},
    "include_fields": ["ean", "name", "price", "cost_price"]
  }'

Response

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "processing",
  "format": "csv",
  "created_at": "2026-03-15T09:00:00Z"
}

POST/exports/json/products

Export to JSON

Creates a JSON export job.

Body parameters

  • Name
    filters
    Type
    object
    Description

    Optional filters.

  • Name
    pretty
    Type
    boolean
    Description

    Pretty-print the JSON output (default: true).

  • Name
    json_lines
    Type
    boolean
    Description

    Output one JSON object per line (NDJSON) for streaming (default: false).

Request

POST
/exports/json/products
curl -X POST https://api.pixeepim.com/api/v1/exports/json/products \
  -H "Authorization: Bearer {api_key}" \
  -H "Content-Type: application/json" \
  -d '{"filters": {"is_active": true}, "pretty": false}'

Response

{
  "id": "550e8400-e29b-41d4-a716-446655440001",
  "status": "processing",
  "format": "json",
  "created_at": "2026-03-15T09:00:00Z"
}

POST/exports/excel/products

Export to Excel

Creates an Excel (.xlsx) export job. Supports multiple sheets.

Body parameters

  • Name
    filters
    Type
    object
    Description

    Optional filters.

  • Name
    include_sheets
    Type
    array
    Description

    Sheets to include: products, suppliers. Default: ["products"].

  • Name
    formatting
    Type
    boolean
    Description

    Apply header formatting and column auto-width (default: true).

Request

POST
/exports/excel/products
curl -X POST https://api.pixeepim.com/api/v1/exports/excel/products \
  -H "Authorization: Bearer {api_key}" \
  -H "Content-Type: application/json" \
  -d '{"include_sheets": ["products", "suppliers"]}'

Response

{
  "id": "550e8400-e29b-41d4-a716-446655440002",
  "status": "processing",
  "format": "excel",
  "created_at": "2026-03-15T09:00:00Z"
}

POST/exports/zip/products

Export to ZIP

Creates a ZIP export that splits very large catalogs into multiple CSV files.

Body parameters

  • Name
    filters
    Type
    object
    Description

    Optional filters.

  • Name
    max_rows_per_file
    Type
    integer
    Description

    Maximum rows per CSV file inside the ZIP (default: 30 000).

Request

POST
/exports/zip/products
curl -X POST https://api.pixeepim.com/api/v1/exports/zip/products \
  -H "Authorization: Bearer {api_key}" \
  -H "Content-Type: application/json" \
  -d '{"max_rows_per_file": 50000}'

Response

{
  "id": "550e8400-e29b-41d4-a716-446655440003",
  "status": "processing",
  "format": "zip",
  "created_at": "2026-03-15T09:00:00Z"
}

GET/exports/jobs/{id}

Get export status

Returns the status of an export job.

Path parameters

  • Name
    id
    Type
    string
    Description

    The export job UUID.

Request

GET
/exports/jobs/{id}
curl https://api.pixeepim.com/api/v1/exports/jobs/550e8400-e29b-41d4-a716-446655440000 \
  -H "Authorization: Bearer {api_key}"

Response

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "completed",
  "format": "csv",
  "total_records": 5000,
  "file_url": "https://storage.pixeepim.com/exports/...",
  "created_at": "2026-03-15T09:00:00Z",
  "completed_at": "2026-03-15T09:01:12Z"
}

GET/exports/jobs/{id}/download

Download export

Downloads the completed export file as a binary stream.

Path parameters

  • Name
    id
    Type
    string
    Description

    The export job UUID.

Request

GET
/exports/jobs/{id}/download
curl https://api.pixeepim.com/api/v1/exports/jobs/550e8400-e29b-41d4-a716-446655440000/download \
  -H "Authorization: Bearer {api_key}" \
  -o catalog_export.csv

POST/exports/platforms

Export platforms

Register a remote destination where completed exports are automatically uploaded.

Body parameters

  • Name
    name
    Type
    string
    Description

    Descriptive name for the platform.

  • Name
    platform_type
    Type
    string
    Description

    Destination type: gdrive, minio, ftp, sftp, or s3.

  • Name
    config
    Type
    object
    Description

    Platform-specific credentials and configuration.

  • Name
    is_active
    Type
    boolean
    Description

    Enable the platform immediately (default: true).

Request

POST
/exports/platforms
curl -X POST https://api.pixeepim.com/api/v1/exports/platforms \
  -H "Authorization: Bearer {api_key}" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Google Drive – Exports",
    "platform_type": "gdrive",
    "config": {
      "credentials": "...",
      "folder_id": "1abc123xyz"
    }
  }'

Response

{
  "id": "550e8400-e29b-41d4-a716-446655440010",
  "name": "Google Drive – Exports",
  "platform_type": "gdrive",
  "is_active": true,
  "created_at": "2026-03-15T09:00:00Z"
}

POST/exports/schedules

Scheduled exports

Create a recurring export that runs automatically and uploads to a registered platform.

Body parameters

  • Name
    platform_id
    Type
    string
    Description

    UUID of a registered export platform.

  • Name
    schedule_name
    Type
    string
    Description

    Descriptive name for the schedule.

  • Name
    cron_expression
    Type
    string
    Description

    Cron expression (e.g. 0 9 * * 1 for Mondays at 9 AM).

  • Name
    timezone
    Type
    string
    Description

    IANA timezone (default: UTC).

  • Name
    is_active
    Type
    boolean
    Description

    Enable immediately (default: true).

Request

POST
/exports/schedules
curl -X POST https://api.pixeepim.com/api/v1/exports/schedules \
  -H "Authorization: Bearer {api_key}" \
  -H "Content-Type: application/json" \
  -d '{
    "platform_id": "550e8400-e29b-41d4-a716-446655440010",
    "schedule_name": "Weekly Products Export",
    "cron_expression": "0 9 * * 1",
    "timezone": "Europe/Paris"
  }'

Response

{
  "id": "550e8400-e29b-41d4-a716-446655440020",
  "schedule_name": "Weekly Products Export",
  "cron_expression": "0 9 * * 1",
  "timezone": "Europe/Paris",
  "is_active": true,
  "created_at": "2026-03-15T09:00:00Z"
}

Was this page helpful?