Download OpenAPI specification:
Connectors, connections, and channel export/import.
Get all category mappings for a given connection and channel. Both connection_id and channel_code are required query parameters.
| connection_id required | string Connection ID |
| channel_code required | string Channel code |
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Items per page |
{- "data": {
- "items": [
- {
- "category_code": "string",
- "category_id": "string",
- "category_path": "string",
- "channel_code": "string",
- "connection_id": "string",
- "created_at": "string",
- "external_collection_id": "string",
- "external_handle": "string",
- "id": "string",
- "last_synced_at": "string",
- "modified_at": "string",
- "status": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Map an internal category to an external channel category for a connection
Category mapping details
| category_code required | string |
| category_id required | string |
| category_path required | string |
| channel_code required | string |
| connection_id required | string |
| external_collection_id required | string |
| external_handle required | string |
{- "category_code": "string",
- "category_id": "string",
- "category_path": "string",
- "channel_code": "string",
- "connection_id": "string",
- "external_collection_id": "string",
- "external_handle": "string"
}{- "data": {
- "category_code": "string",
- "category_id": "string",
- "category_path": "string",
- "channel_code": "string",
- "connection_id": "string",
- "created_at": "string",
- "external_collection_id": "string",
- "external_handle": "string",
- "id": "string",
- "last_synced_at": "string",
- "modified_at": "string",
- "status": "string"
}, - "success": true
}Retrieve a single category mapping by ID
| id required | string Category mapping ID |
{- "data": {
- "category_code": "string",
- "category_id": "string",
- "category_path": "string",
- "channel_code": "string",
- "connection_id": "string",
- "created_at": "string",
- "external_collection_id": "string",
- "external_handle": "string",
- "id": "string",
- "last_synced_at": "string",
- "modified_at": "string",
- "status": "string"
}, - "success": true
}Permanently delete a category mapping
| id required | string Category mapping ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update the external category identifier or other fields of an existing category mapping
| id required | string Category mapping ID |
Updated mapping fields
| external_collection_id | string |
| external_handle | string |
{- "external_collection_id": "string",
- "external_handle": "string"
}{- "data": {
- "category_code": "string",
- "category_id": "string",
- "category_path": "string",
- "channel_code": "string",
- "connection_id": "string",
- "created_at": "string",
- "external_collection_id": "string",
- "external_handle": "string",
- "id": "string",
- "last_synced_at": "string",
- "modified_at": "string",
- "status": "string"
}, - "success": true
}Retrieve all category mappings for a connection, scoped to a specific channel code. Used to populate the channel category tree.
| id required | string Connection ID |
| channel_code required | string Channel code |
{- "data": {
- "items": [
- {
- "category_code": "string",
- "category_id": "string",
- "category_path": "string",
- "channel_code": "string",
- "connection_id": "string",
- "created_at": "string",
- "external_collection_id": "string",
- "external_handle": "string",
- "id": "string",
- "last_synced_at": "string",
- "modified_at": "string",
- "status": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Get a paginated list of tenant connection instances
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Page size |
| status | string Enum: "active" "inactive" Filter by status |
| search | string Search term |
{- "data": {
- "items": [
- {
- "code": "shopify-us",
- "connection_type": "api",
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3",
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify US Store",
- "status": "active"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new tenant connection instance from a connector definition
Connection request
| code required | string |
| connection_type required | string |
| connector_id required | string |
object | |
| endpoint_url | string |
| name required | string |
{- "code": "shopify-us",
- "connection_type": "api",
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "credentials": { },
- "name": "Shopify US Store"
}{- "data": {
- "code": "shopify-us",
- "concurrency_limit": 1,
- "connection_type": "api",
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "credentials": { },
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3",
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify US Store",
- "rate_limit_per_sec": 10,
- "status": "active"
}, - "success": true
}Get a single tenant connection instance by ID
| id required | string Connection ID |
{- "data": {
- "code": "shopify-us",
- "concurrency_limit": 1,
- "connection_type": "api",
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "credentials": { },
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3",
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify US Store",
- "rate_limit_per_sec": 10,
- "status": "active"
}, - "success": true
}Soft-delete a tenant connection instance
| id required | string Connection ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update an existing tenant connection instance
| id required | string Connection ID |
Connection update request
| concurrency_limit | integer |
object | |
| endpoint_url | string |
| name | string |
| rate_limit_per_sec | integer |
{- "concurrency_limit": 2,
- "credentials": { },
- "name": "Shopify US Store (Updated)",
- "rate_limit_per_sec": 10
}{- "data": {
- "code": "shopify-us",
- "concurrency_limit": 1,
- "connection_type": "api",
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "credentials": { },
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3",
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify US Store",
- "rate_limit_per_sec": 10,
- "status": "active"
}, - "success": true
}Activate or deactivate a connection
| id required | string Connection ID |
Status request
| status required | string Enum: "active" "inactive" |
{- "status": "active"
}{- "data": {
- "code": "shopify-us",
- "concurrency_limit": 1,
- "connection_type": "api",
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "credentials": { },
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d3",
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify US Store",
- "rate_limit_per_sec": 10,
- "status": "active"
}, - "success": true
}Get a paginated list of available connector types in the platform catalog
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Page size |
| connector_type | string Enum: "api" "ftp" "sftp" "storage" "marketplace" Filter by connector type |
| is_active | boolean Filter by active status |
| search | string Search by name or code |
{- "data": {
- "items": [
- {
- "auth_type": "oauth2",
- "code": "shopify",
- "config_schema": { },
- "connector_type": "api",
- "created_at": "2026-01-18T10:30:00Z",
- "description": "Shopify e-commerce platform connector",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "name": "Shopify",
- "sort_order": 1,
- "supported_content_types": [
- "products"
]
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new connector type in the platform catalog (e.g., Shopify, Amazon)
Connector definition request
| auth_type required | string |
| code required | string |
object | |
| connector_type required | string |
| description | string |
| logo_url | string |
| name required | string |
| supported_content_types | Array of strings |
{- "auth_type": "oauth2",
- "code": "shopify",
- "config_schema": { },
- "connector_type": "api",
- "description": "Shopify e-commerce platform connector",
- "name": "Shopify",
- "supported_content_types": [
- "products"
]
}{- "data": {
- "auth_type": "oauth2",
- "code": "shopify",
- "config_schema": { },
- "connector_type": "api",
- "created_at": "2026-01-18T10:30:00Z",
- "description": "Shopify e-commerce platform connector",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "name": "Shopify",
- "sort_order": 1,
- "supported_content_types": [
- "products"
]
}, - "success": true
}Get a single connector type from the platform catalog by ID
| id required | string Connector ID |
{- "data": {
- "auth_type": "oauth2",
- "code": "shopify",
- "config_schema": { },
- "connector_type": "api",
- "created_at": "2026-01-18T10:30:00Z",
- "description": "Shopify e-commerce platform connector",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "name": "Shopify",
- "sort_order": 1,
- "supported_content_types": [
- "products"
]
}, - "success": true
}Update an existing connector type in the platform catalog
| id required | string Connector ID |
Connector update request
object | |
| description | string |
| logo_url | string |
| name | string |
{- "config_schema": { },
- "description": "Updated Shopify connector description",
- "name": "Shopify Plus"
}{- "data": {
- "auth_type": "oauth2",
- "code": "shopify",
- "config_schema": { },
- "connector_type": "api",
- "created_at": "2026-01-18T10:30:00Z",
- "description": "Shopify e-commerce platform connector",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "name": "Shopify",
- "sort_order": 1,
- "supported_content_types": [
- "products"
]
}, - "success": true
}Activate or deactivate a connector
| id required | string Connector ID |
Status request
| status required | string Enum: "active" "inactive" |
{- "status": "active"
}{- "data": {
- "auth_type": "oauth2",
- "code": "shopify",
- "config_schema": { },
- "connector_type": "api",
- "created_at": "2026-01-18T10:30:00Z",
- "description": "Shopify e-commerce platform connector",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "name": "Shopify",
- "sort_order": 1,
- "supported_content_types": [
- "products"
]
}, - "success": true
}Get the list of attributes from the default schema for a connector
| connectorId required | string Connector ID |
{- "data": {
- "items": [
- {
- "attribute_code": "body_html",
- "constraints": { },
- "data_type": "string",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d8",
- "is_required": true,
- "mapping_scope": "product",
- "name": "Product Description (HTML)",
- "sort_order": 1
}
]
}, - "success": true
}Get a paginated list of connector schemas for a connector
| connectorId required | string Connector ID |
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Page size |
| status | string Enum: "draft" "active" "deprecated" Filter by status |
| search | string Search term |
{- "data": {
- "items": [
- {
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Standard Shopify product data structure",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d7",
- "is_default": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify Product Schema",
- "schema_definition": { },
- "status": "active",
- "version": "1.0"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new connector schema defining expected data structure
| connectorId required | string Connector ID |
Connector schema request
| description | string |
| is_default | boolean |
| name required | string |
object | |
| version | string |
{- "description": "Standard Shopify product data structure",
- "is_default": true,
- "name": "Shopify Product Schema",
- "schema_definition": { },
- "version": "1.0"
}{- "data": {
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Standard Shopify product data structure",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d7",
- "is_default": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify Product Schema",
- "schema_definition": { },
- "status": "active",
- "version": "1.0"
}, - "success": true
}Get a single connector schema by ID
| connectorId required | string Connector ID |
| id required | string Connector Schema ID |
{- "data": {
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Standard Shopify product data structure",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d7",
- "is_default": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify Product Schema",
- "schema_definition": { },
- "status": "active",
- "version": "1.0"
}, - "success": true
}Soft-delete a connector schema
| connectorId required | string Connector ID |
| id required | string Connector Schema ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update an existing connector schema
| connectorId required | string Connector ID |
| id required | string Connector Schema ID |
Connector schema update request
| description | string |
| is_default | boolean |
| name | string |
object | |
| version | string |
{- "description": "Updated Shopify product schema",
- "is_default": true,
- "name": "Shopify Product Schema v2",
- "schema_definition": { },
- "version": "2.0"
}{- "data": {
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Standard Shopify product data structure",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d7",
- "is_default": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify Product Schema",
- "schema_definition": { },
- "status": "active",
- "version": "1.0"
}, - "success": true
}Get the list of attributes for a connector schema
| connectorId required | string Connector ID |
| id required | string Connector Schema ID |
{- "data": {
- "items": [
- {
- "attribute_code": "body_html",
- "constraints": { },
- "data_type": "string",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d8",
- "is_required": true,
- "mapping_scope": "product",
- "name": "Product Description (HTML)",
- "sort_order": 1
}
]
}, - "success": true
}Save (replace) the attributes for a connector schema
| connectorId required | string Connector ID |
| id required | string Connector Schema ID |
Schema attributes request
Array of objects (SchemaAttributeRequest) |
{- "attributes": [
- {
- "attribute_code": "body_html",
- "constraints": { },
- "data_type": "string",
- "is_required": true,
- "mapping_scope": "product",
- "name": "Product Description (HTML)",
- "sort_order": 1
}
]
}{- "data": {
- "items": [
- {
- "attribute_code": "body_html",
- "constraints": { },
- "data_type": "string",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d8",
- "is_required": true,
- "mapping_scope": "product",
- "name": "Product Description (HTML)",
- "sort_order": 1
}
]
}, - "success": true
}Set the status of a connector schema (active or deprecated)
| connectorId required | string Connector ID |
| id required | string Connector Schema ID |
Status request
| status required | string Enum: "active" "deprecated" |
{- "status": "active"
}{- "data": {
- "connector_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Standard Shopify product data structure",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d7",
- "is_default": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "Shopify Product Schema",
- "schema_definition": { },
- "status": "active",
- "version": "1.0"
}, - "success": true
}Get a paginated list of export jobs with optional status and profile filters
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Items per page |
| export_profile_id | string Filter by export profile ID |
| status | string Enum: "queued" "running" "completed" "failed" "cancelled" Filter by status |
{- "data": {
- "items": [
- {
- "completed_at": "string",
- "connection_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_summary": { },
- "execution_mode": "string",
- "export_profile_id": "string",
- "failed_items": 0,
- "id": "string",
- "processed_items": 0,
- "publish_type": "string",
- "published_feed_url": "string",
- "skipped_items": 0,
- "started_at": "string",
- "status": "string",
- "successful_items": 0,
- "total_items": 0,
- "trigger_type": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Enqueue a new export job for a given profile. Use execution_mode=full for a complete sync or delta for an incremental sync. Use product_ids for selective publishing.
Export job details
| connection_id | string |
| execution_mode | string |
| export_profile_id required | string |
| product_ids | Array of strings |
| publish_type | string |
| trigger_type | string |
{- "connection_id": "string",
- "execution_mode": "string",
- "export_profile_id": "string",
- "product_ids": [
- "string"
], - "publish_type": "string",
- "trigger_type": "string"
}{- "data": {
- "completed_at": "string",
- "connection_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_summary": { },
- "execution_mode": "string",
- "export_profile_id": "string",
- "failed_items": 0,
- "id": "string",
- "processed_items": 0,
- "publish_type": "string",
- "published_feed_url": "string",
- "skipped_items": 0,
- "started_at": "string",
- "status": "string",
- "successful_items": 0,
- "total_items": 0,
- "trigger_type": "string"
}, - "success": true
}Retrieve a single export job by ID, including progress counters
| id required | string Export job ID |
{- "data": {
- "completed_at": "string",
- "connection_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_summary": { },
- "execution_mode": "string",
- "export_profile_id": "string",
- "failed_items": 0,
- "id": "string",
- "processed_items": 0,
- "publish_type": "string",
- "published_feed_url": "string",
- "skipped_items": 0,
- "started_at": "string",
- "status": "string",
- "successful_items": 0,
- "total_items": 0,
- "trigger_type": "string"
}, - "success": true
}Cancel a queued or running export job
| id required | string Export job ID |
{- "data": {
- "completed_at": "string",
- "connection_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_summary": { },
- "execution_mode": "string",
- "export_profile_id": "string",
- "failed_items": 0,
- "id": "string",
- "processed_items": 0,
- "publish_type": "string",
- "published_feed_url": "string",
- "skipped_items": 0,
- "started_at": "string",
- "status": "string",
- "successful_items": 0,
- "total_items": 0,
- "trigger_type": "string"
}, - "success": true
}Mark a running export job as completed, optionally recording the published feed URL
| id required | string Export job ID |
Optional published feed URL
| published_feed_url | string |
{- "published_feed_url": "string"
}{- "data": {
- "completed_at": "string",
- "connection_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_summary": { },
- "execution_mode": "string",
- "export_profile_id": "string",
- "failed_items": 0,
- "id": "string",
- "processed_items": 0,
- "publish_type": "string",
- "published_feed_url": "string",
- "skipped_items": 0,
- "started_at": "string",
- "status": "string",
- "successful_items": 0,
- "total_items": 0,
- "trigger_type": "string"
}, - "success": true
}Get a paginated list of processed items for an export job, with optional status filter
| id required | string Export job ID |
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Items per page |
| status | Array of strings Filter by status |
{- "data": {
- "items": [
- {
- "created_at": "string",
- "entity_code": "string",
- "entity_id": "string",
- "errors": { },
- "export_job_id": "string",
- "external_id": "string",
- "id": "string",
- "modified_at": "string",
- "stage": "string",
- "status": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Transition a queued export job to running status
| id required | string Export job ID |
{- "data": {
- "completed_at": "string",
- "connection_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_summary": { },
- "execution_mode": "string",
- "export_profile_id": "string",
- "failed_items": 0,
- "id": "string",
- "processed_items": 0,
- "publish_type": "string",
- "published_feed_url": "string",
- "skipped_items": 0,
- "started_at": "string",
- "status": "string",
- "successful_items": 0,
- "total_items": 0,
- "trigger_type": "string"
}, - "success": true
}Get a paginated list of export profiles with optional filters
| page | integer >= 1 Default: 1 Page number |
| page_size | integer [ 1 .. 100 ] Default: 20 Items per page |
| channel_code | string Filter by channel code |
| status | string Enum: "active" "inactive" Filter by status |
| search | string Search by name or code |
{- "data": {
- "items": [
- {
- "code": "string",
- "connector_id": "string",
- "connector_schema_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "status": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Create a new export profile that defines which channel, locales, and filters to use when exporting product data
Export profile details
| batch_size | integer |
| channel_code | string |
| code required | string |
| connection_id | string |
| connector_id | string |
| connector_schema_id | string |
object | |
| locale_codes | Array of strings |
| name required | string |
| with_media | boolean |
{- "batch_size": 0,
- "channel_code": "string",
- "code": "string",
- "connection_id": "string",
- "connector_id": "string",
- "connector_schema_id": "string",
- "filters": { },
- "locale_codes": [
- "string"
], - "name": "string",
- "with_media": true
}{- "data": {
- "code": "string",
- "connector_id": "string",
- "connector_schema_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "status": "string"
}, - "success": true
}Retrieve a single export profile by ID
| id required | string Export profile ID |
{- "data": {
- "code": "string",
- "connector_id": "string",
- "connector_schema_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "status": "string"
}, - "success": true
}Soft-delete an export profile by ID
| id required | string Export profile ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update an existing export profile's name, channel, locales, filters, or batch settings
| id required | string Export profile ID |
Fields to update
| batch_size | integer |
| channel_code | string |
object | |
| locale_codes | Array of strings |
| name | string |
| with_media | boolean |
{- "batch_size": 0,
- "channel_code": "string",
- "filters": { },
- "locale_codes": [
- "string"
], - "name": "string",
- "with_media": true
}{- "data": {
- "code": "string",
- "connector_id": "string",
- "connector_schema_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "status": "string"
}, - "success": true
}Activate or deactivate an export profile
| id required | string Export profile ID |
Target status
| status required | string Enum: "active" "inactive" |
{- "status": "active"
}{- "data": {
- "code": "string",
- "connector_id": "string",
- "connector_schema_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "status": "string"
}, - "success": true
}Get a paginated list of delivery targets for an export profile
| id required | string Export profile ID |
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Items per page |
| delivery_type | string Enum: "channel_push" "file_download" Filter by delivery type |
{- "data": {
- "items": [
- {
- "delivery_type": "string",
- "export_profile_id": "string",
- "id": "string",
- "output_format": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Add a delivery target (channel push or file download) to an export profile
| id required | string Export profile ID |
Export target details
object | |
| connection_id | string |
| delivery_type required | string |
| output_format required | string |
{- "config": { },
- "connection_id": "string",
- "delivery_type": "string",
- "output_format": "string"
}{- "data": {
- "delivery_type": "string",
- "export_profile_id": "string",
- "id": "string",
- "output_format": "string"
}, - "success": true
}Retrieve a single export target by ID
| id required | string Export profile ID |
| targetId required | string Export target ID |
{- "data": {
- "delivery_type": "string",
- "export_profile_id": "string",
- "id": "string",
- "output_format": "string"
}, - "success": true
}Soft-delete an export target by ID
| id required | string Export profile ID |
| targetId required | string Export target ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update delivery type, output format, or configuration of an export target
| id required | string Export profile ID |
| targetId required | string Export target ID |
Fields to update
object | |
| connection_id | string |
| delivery_type | string |
| output_format | string |
{- "config": { },
- "connection_id": "string",
- "delivery_type": "string",
- "output_format": "string"
}{- "data": {
- "delivery_type": "string",
- "export_profile_id": "string",
- "id": "string",
- "output_format": "string"
}, - "success": true
}Get a paginated list of attribute mappings for an export profile
| profileId required | string Export Profile ID |
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Page size |
| search | string Search term |
{- "data": {
- "items": [
- {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "default_value": "N/A",
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d9",
- "is_required": true,
- "mapping_scope": "product",
- "mapping_type": "direct",
- "metadata": { },
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "sort_order": 1,
- "source_attribute_code": "description",
- "target_attribute_code": "body_html",
- "transformation_rule_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new attribute mapping for an export profile
| profileId required | string Export Profile ID |
Attribute mapping request
| default_value | string |
| is_required | boolean |
| mapping_scope | string |
| mapping_type required | string |
object | |
| sort_order | integer |
| source_attribute_code required | string |
| target_attribute_code required | string |
| transformation_rule_id | string |
{- "default_value": "N/A",
- "is_required": true,
- "mapping_scope": "product",
- "mapping_type": "direct",
- "metadata": { },
- "sort_order": 1,
- "source_attribute_code": "description",
- "target_attribute_code": "body_html",
- "transformation_rule_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0"
}{- "data": {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "default_value": "N/A",
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d9",
- "is_required": true,
- "mapping_scope": "product",
- "mapping_type": "direct",
- "metadata": { },
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "sort_order": 1,
- "source_attribute_code": "description",
- "target_attribute_code": "body_html",
- "transformation_rule_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0"
}, - "success": true
}Smart diff-based bulk upsert of attribute mappings for an export profile
| profileId required | string Export Profile ID |
Attribute mappings to save
Array of objects (CreateAttributeMappingRequest) |
{- "mappings": [
- {
- "default_value": "N/A",
- "is_required": true,
- "mapping_scope": "product",
- "mapping_type": "direct",
- "metadata": { },
- "sort_order": 1,
- "source_attribute_code": "description",
- "target_attribute_code": "body_html",
- "transformation_rule_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0"
}
]
}{- "data": {
- "items": [
- {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "default_value": "N/A",
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d9",
- "is_required": true,
- "mapping_scope": "product",
- "mapping_type": "direct",
- "metadata": { },
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "sort_order": 1,
- "source_attribute_code": "description",
- "target_attribute_code": "body_html",
- "transformation_rule_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Get a single attribute mapping by ID
| profileId required | string Export Profile ID |
| id required | string Attribute Mapping ID |
{- "data": {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "default_value": "N/A",
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d9",
- "is_required": true,
- "mapping_scope": "product",
- "mapping_type": "direct",
- "metadata": { },
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "sort_order": 1,
- "source_attribute_code": "description",
- "target_attribute_code": "body_html",
- "transformation_rule_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0"
}, - "success": true
}Soft-delete an attribute mapping
| profileId required | string Export Profile ID |
| id required | string Attribute Mapping ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update an existing attribute mapping
| profileId required | string Export Profile ID |
| id required | string Attribute Mapping ID |
Attribute mapping update request
| default_value | string |
| is_required | boolean |
| mapping_scope | string |
| mapping_type | string |
object | |
| sort_order | integer |
| source_attribute_code | string |
| target_attribute_code | string |
| transformation_rule_id | string |
{- "default_value": "N/A",
- "is_required": true,
- "mapping_scope": "product",
- "mapping_type": "direct",
- "metadata": { },
- "sort_order": 2,
- "source_attribute_code": "short_description",
- "target_attribute_code": "body_html",
- "transformation_rule_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0"
}{- "data": {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "default_value": "N/A",
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d9",
- "is_required": true,
- "mapping_scope": "product",
- "mapping_type": "direct",
- "metadata": { },
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "sort_order": 1,
- "source_attribute_code": "description",
- "target_attribute_code": "body_html",
- "transformation_rule_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0"
}, - "success": true
}Get a paginated list of validation rules for an export profile
| profileId required | string Export Profile ID |
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Page size |
| search | string Search term |
{- "data": {
- "items": [
- {
- "channel_attribute": "title",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_message": "Title is required for Shopify products",
- "execution_order": 1,
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e1",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "severity": "error",
- "stop_on_failure": true,
- "validation_logic": { },
- "validation_type": "required"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new data validation rule for an export profile
| profileId required | string Export Profile ID |
Validation rule request
| channel_attribute required | string |
| error_message required | string |
| execution_order | integer |
| severity | string |
| stop_on_failure | boolean |
object | |
| validation_type required | string |
{- "channel_attribute": "title",
- "error_message": "Title is required for Shopify products",
- "execution_order": 1,
- "severity": "error",
- "stop_on_failure": true,
- "validation_logic": { },
- "validation_type": "required"
}{- "data": {
- "channel_attribute": "title",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_message": "Title is required for Shopify products",
- "execution_order": 1,
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e1",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "severity": "error",
- "stop_on_failure": true,
- "validation_logic": { },
- "validation_type": "required"
}, - "success": true
}Get a single validation rule by ID
| profileId required | string Export Profile ID |
| id required | string Validation Rule ID |
{- "data": {
- "channel_attribute": "title",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_message": "Title is required for Shopify products",
- "execution_order": 1,
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e1",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "severity": "error",
- "stop_on_failure": true,
- "validation_logic": { },
- "validation_type": "required"
}, - "success": true
}Soft-delete a validation rule
| profileId required | string Export Profile ID |
| id required | string Validation Rule ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update an existing validation rule
| profileId required | string Export Profile ID |
| id required | string Validation Rule ID |
Validation rule update request
| channel_attribute | string |
| error_message | string |
| execution_order | integer |
| severity | string |
| stop_on_failure | boolean |
object | |
| validation_type | string |
{- "channel_attribute": "title",
- "error_message": "Title must be less than 255 characters",
- "execution_order": 2,
- "severity": "warning",
- "stop_on_failure": false,
- "validation_logic": { },
- "validation_type": "format"
}{- "data": {
- "channel_attribute": "title",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_message": "Title is required for Shopify products",
- "execution_order": 1,
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e1",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "severity": "error",
- "stop_on_failure": true,
- "validation_logic": { },
- "validation_type": "required"
}, - "success": true
}Activate or deactivate a validation rule
| profileId required | string Export Profile ID |
| id required | string Validation Rule ID |
Status request
| status required | string Enum: "active" "inactive" |
{- "status": "active"
}{- "data": {
- "channel_attribute": "title",
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_message": "Title is required for Shopify products",
- "execution_order": 1,
- "export_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e1",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "severity": "error",
- "stop_on_failure": true,
- "validation_logic": { },
- "validation_type": "required"
}, - "success": true
}Get a paginated list of import profiles
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Page size |
| source_id | string Filter by source connection ID |
| entity_type | string Filter by entity type |
| status | string Enum: "active" "inactive" Filter by status |
| search | string Search term |
{- "data": {
- "items": [
- {
- "batch_size": 0,
- "channel_code": "string",
- "code": "string",
- "comparison_attribute": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "error_handling": { },
- "file_config": { },
- "id": "string",
- "import_mode": "string",
- "input_format": "string",
- "locale_codes": [
- "string"
], - "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "source_id": "string",
- "status": "string",
- "with_media": true
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new import profile for data ingestion
Import profile request
| batch_size | integer |
| channel_code | string |
| code required | string |
| comparison_attribute required | string |
| entity_type required | string |
object | |
object | |
object | |
| import_mode required | string |
| input_format required | string |
| locale_codes | Array of strings |
| name required | string |
| source_id | string |
| with_media | boolean |
{- "batch_size": 100,
- "channel_code": "ecommerce",
- "code": "product-csv-import",
- "comparison_attribute": "sku",
- "entity_type": "products",
- "error_handling": { },
- "file_config": { },
- "filters": { },
- "import_mode": "create_and_update",
- "input_format": "csv",
- "locale_codes": [
- "en_US"
], - "name": "Product CSV Import",
- "source_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d2",
- "with_media": false
}{- "data": {
- "batch_size": 0,
- "channel_code": "string",
- "code": "string",
- "comparison_attribute": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "error_handling": { },
- "file_config": { },
- "id": "string",
- "import_mode": "string",
- "input_format": "string",
- "locale_codes": [
- "string"
], - "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "source_id": "string",
- "status": "string",
- "with_media": true
}, - "success": true
}Get a single import profile by ID
| id required | string Import profile ID |
{- "data": {
- "batch_size": 0,
- "channel_code": "string",
- "code": "string",
- "comparison_attribute": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "error_handling": { },
- "file_config": { },
- "id": "string",
- "import_mode": "string",
- "input_format": "string",
- "locale_codes": [
- "string"
], - "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "source_id": "string",
- "status": "string",
- "with_media": true
}, - "success": true
}Soft-delete an import profile
| id required | string Import profile ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update an existing import profile
| id required | string Import profile ID |
Update request
| batch_size | integer |
| channel_code | string |
| comparison_attribute | string |
object | |
object | |
object | |
| import_mode | string |
| input_format | string |
| locale_codes | Array of strings |
| name | string |
| with_media | boolean |
{- "batch_size": 200,
- "channel_code": "ecommerce",
- "comparison_attribute": "sku",
- "error_handling": { },
- "file_config": { },
- "filters": { },
- "import_mode": "update_only",
- "input_format": "xlsx",
- "locale_codes": [
- "string"
], - "name": "Product CSV Import (Updated)",
- "with_media": true
}{- "data": {
- "batch_size": 0,
- "channel_code": "string",
- "code": "string",
- "comparison_attribute": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "error_handling": { },
- "file_config": { },
- "id": "string",
- "import_mode": "string",
- "input_format": "string",
- "locale_codes": [
- "string"
], - "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "source_id": "string",
- "status": "string",
- "with_media": true
}, - "success": true
}Create a deep copy of the import profile and all its column mappings.
| id required | string Import profile ID to duplicate |
{- "data": {
- "batch_size": 0,
- "channel_code": "string",
- "code": "string",
- "comparison_attribute": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "error_handling": { },
- "file_config": { },
- "id": "string",
- "import_mode": "string",
- "input_format": "string",
- "locale_codes": [
- "string"
], - "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "source_id": "string",
- "status": "string",
- "with_media": true
}, - "success": true
}Activate or deactivate an import profile
| id required | string Import profile ID |
Status request
| status required | string Enum: "active" "inactive" |
{- "status": "active"
}{- "data": {
- "batch_size": 0,
- "channel_code": "string",
- "code": "string",
- "comparison_attribute": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "error_handling": { },
- "file_config": { },
- "id": "string",
- "import_mode": "string",
- "input_format": "string",
- "locale_codes": [
- "string"
], - "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "source_id": "string",
- "status": "string",
- "with_media": true
}, - "success": true
}Fuzzy-match CSV column headers against PIM attribute codes and return mapping suggestions.
| id required | string Import profile ID |
Headers to auto-map
| headers required | Array of strings |
{- "headers": [
- "string"
]
}{- "data": {
- "mappings": [
- {
- "channel_code": "string",
- "confidence": 0,
- "locale_code": "string",
- "source_column": "string",
- "target_attribute_code": "string",
- "target_attribute_name": "string"
}
]
}, - "success": true
}Accepts the S3 file key of a previously uploaded file and creates an import job
| id required | string Import profile ID |
File key and metadata
| file_key required | string |
| original_name required | string |
{- "file_key": "imports/tenant/profile/uuid.csv",
- "original_name": "products.csv"
}{- "data": {
- "job_id": "string",
- "status": "string"
}, - "success": true
}Parse the first N rows of an uploaded CSV/XLSX and return headers + rows.
| id required | string Import profile ID |
| file | string <binary> CSV or XLSX file |
| s3_key | string Previously uploaded S3 key |
| limit | integer Max rows to return (default 10, max 100) |
{- "data": {
- "detected_delimiter": "string",
- "headers": [
- "string"
], - "rows": [
- [
- "string"
]
], - "total_row_count": 0
}, - "success": true
}Returns a presigned PUT URL so the client can upload the CSV/XLSX file directly to S3
| id required | string Import profile ID |
File metadata
| content_type required | string |
| file_name required | string |
{- "content_type": "text/csv",
- "file_name": "products.csv"
}{- "data": {
- "content_type": "string",
- "expires_in": 0,
- "key": "string",
- "upload_url": "string"
}, - "success": true
}Get a paginated list of mappings for an import profile
| id required | string Import profile ID |
| page | integer Default: 1 Page number |
| page_size | integer Default: 50 Page size |
{- "data": {
- "items": [
- {
- "attribute_type": "string",
- "channel_code": "string",
- "created_at": "string",
- "default_value": "string",
- "id": "string",
- "import_profile_id": "string",
- "is_identifier": true,
- "is_required": true,
- "locale_code": "string",
- "modified_at": "string",
- "pim_attribute": "string",
- "sort_order": 0,
- "source_column": "string",
- "transformation": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new column-to-attribute mapping for an import profile
| id required | string Import profile ID |
Mapping request
| attribute_type required | string |
| channel_code | string |
| default_value | string |
| is_identifier | boolean |
| is_required | boolean |
| locale_code | string |
| pim_attribute required | string |
| sort_order | integer |
| source_column required | string |
| transformation | string |
{- "attribute_type": "text",
- "channel_code": "string",
- "default_value": "string",
- "is_identifier": false,
- "is_required": true,
- "locale_code": "string",
- "pim_attribute": "name",
- "sort_order": 1,
- "source_column": "product_name",
- "transformation": "trim"
}{- "data": {
- "attribute_type": "string",
- "channel_code": "string",
- "created_at": "string",
- "default_value": "string",
- "id": "string",
- "import_profile_id": "string",
- "is_identifier": true,
- "is_required": true,
- "locale_code": "string",
- "modified_at": "string",
- "pim_attribute": "string",
- "sort_order": 0,
- "source_column": "string",
- "transformation": "string"
}, - "success": true
}Replace all mappings for an import profile with the provided set
| id required | string Import profile ID |
Bulk mapping request
Array of objects (ImportProfileMappingEntry) |
{- "mappings": [
- {
- "attribute_type": "text",
- "channel_code": "string",
- "default_value": "string",
- "is_identifier": false,
- "is_required": true,
- "locale_code": "string",
- "pim_attribute": "name",
- "sort_order": 1,
- "source_column": "product_name",
- "transformation": "string"
}
]
}{- "data": null,
- "success": true
}Delete a single import profile mapping
| id required | string Import profile ID |
| mappingId required | string Mapping ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update an existing import profile mapping
| id required | string Import profile ID |
| mappingId required | string Mapping ID |
Update request
| attribute_type | string |
| channel_code | string |
| default_value | string |
| is_identifier | boolean |
| is_required | boolean |
| locale_code | string |
| pim_attribute | string |
| sort_order | integer |
| source_column | string |
| transformation | string |
{- "attribute_type": "string",
- "channel_code": "string",
- "default_value": "string",
- "is_identifier": true,
- "is_required": true,
- "locale_code": "string",
- "pim_attribute": "string",
- "sort_order": 0,
- "source_column": "string",
- "transformation": "string"
}{- "data": {
- "attribute_type": "string",
- "channel_code": "string",
- "created_at": "string",
- "default_value": "string",
- "id": "string",
- "import_profile_id": "string",
- "is_identifier": true,
- "is_required": true,
- "locale_code": "string",
- "modified_at": "string",
- "pim_attribute": "string",
- "sort_order": 0,
- "source_column": "string",
- "transformation": "string"
}, - "success": true
}Immediately enqueue an export job for a set of specific products on a given connection, bypassing the scheduled export pipeline
Quick publish request with connection ID and product IDs
| connection_id | string |
| export_profile_id required | string |
| product_ids required | Array of strings |
{- "connection_id": "string",
- "export_profile_id": "string",
- "product_ids": [
- "string"
]
}{- "data": {
- "completed_at": "string",
- "connection_id": "string",
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "error_summary": { },
- "execution_mode": "string",
- "export_profile_id": "string",
- "failed_items": 0,
- "id": "string",
- "processed_items": 0,
- "publish_type": "string",
- "published_feed_url": "string",
- "skipped_items": 0,
- "started_at": "string",
- "status": "string",
- "successful_items": 0,
- "total_items": 0,
- "trigger_type": "string"
}, - "success": true
}Retrieve a paginated list of products that can be selected for quick publishing, with optional search and modification date filter
| page | integer Default: 1 Page number |
| page_size | integer Default: 10 Items per page |
| search | string Search term to filter products by name or SKU |
| modified_since | string ISO 8601 timestamp; return only products modified after this date |
{- "data": {
- "items": [
- {
- "code": "string",
- "id": "string",
- "last_published_at": "string",
- "last_published_by": {
- "id": "string",
- "name": "string"
}, - "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "product_type": "string",
- "status": "string",
- "thumbnail": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Handles the OAuth callback from Shopify, exchanges the authorization code for an access token, and stores it on the connection credentials.
| code required | string Authorization code from Shopify |
| state required | string State parameter (connection_id:tenant_id) |
| shop required | string Shopify shop domain |
| hmac | string HMAC signature for request verification |
Get a paginated list of snapshots, optionally filtered by profile and status
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Items per page |
| export_profile_id | string Filter by export profile ID |
| status | string Enum: "pending" "ready" "stale" Filter by status |
{- "data": {
- "items": [
- {
- "checksum": "string",
- "completed_at": "string",
- "created_at": "string",
- "created_by": "string",
- "execution_mode": "string",
- "expires_at": "string",
- "export_profile_id": "string",
- "id": "string",
- "job_id": "string",
- "mapped_data_ref": "string",
- "previous_snapshot_id": "string",
- "product_count": 0,
- "raw_data_ref": "string",
- "size_bytes": 0,
- "status": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Capture a point-in-time snapshot of the product catalog for a given export profile
Snapshot details
| execution_mode | string |
| export_profile_id required | string |
| job_id required | string |
| previous_snapshot_id | string |
{- "execution_mode": "string",
- "export_profile_id": "string",
- "job_id": "string",
- "previous_snapshot_id": "string"
}{- "data": {
- "checksum": "string",
- "completed_at": "string",
- "created_at": "string",
- "created_by": "string",
- "execution_mode": "string",
- "expires_at": "string",
- "export_profile_id": "string",
- "id": "string",
- "job_id": "string",
- "mapped_data_ref": "string",
- "previous_snapshot_id": "string",
- "product_count": 0,
- "raw_data_ref": "string",
- "size_bytes": 0,
- "status": "string"
}, - "success": true
}Retrieve a single snapshot by ID
| id required | string Snapshot ID |
{- "data": {
- "checksum": "string",
- "completed_at": "string",
- "created_at": "string",
- "created_by": "string",
- "execution_mode": "string",
- "expires_at": "string",
- "export_profile_id": "string",
- "id": "string",
- "job_id": "string",
- "mapped_data_ref": "string",
- "previous_snapshot_id": "string",
- "product_count": 0,
- "raw_data_ref": "string",
- "size_bytes": 0,
- "status": "string"
}, - "success": true
}Get a paginated list of items within a snapshot. Use has_changed=true to return only items that changed since the previous snapshot.
| snapshotId required | string Snapshot ID |
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Items per page |
| has_changed | boolean Filter to items that changed since the previous snapshot |
{- "data": {
- "items": [
- {
- "checksum": "string",
- "created_at": "string",
- "has_changed": true,
- "id": "string",
- "previous_checksum": "string",
- "product_code": "string",
- "product_id": "string",
- "snapshot_id": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "success": true
}Get a paginated list of transformation rules
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Page size |
| rule_type | string Filter by rule type |
| is_active | boolean Filter by active status |
| search | string Search term |
{- "data": {
- "items": [
- {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Converts weight from kilograms to pounds",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "KG to LB Converter",
- "parameters": { },
- "rule_definition": { },
- "rule_type": "calculate",
- "rule_version": 1,
- "source_attributes": [
- "weight"
]
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new data transformation rule
Transformation rule request
| description | string |
| name required | string |
object | |
object | |
| rule_type required | string |
| source_attributes | Array of strings |
{- "description": "Converts weight from kilograms to pounds",
- "name": "KG to LB Converter",
- "parameters": { },
- "rule_definition": { },
- "rule_type": "calculate",
- "source_attributes": [
- "weight"
]
}{- "data": {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Converts weight from kilograms to pounds",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "KG to LB Converter",
- "parameters": { },
- "rule_definition": { },
- "rule_type": "calculate",
- "rule_version": 1,
- "source_attributes": [
- "weight"
]
}, - "success": true
}Get a single transformation rule by ID
| id required | string Transformation Rule ID |
{- "data": {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Converts weight from kilograms to pounds",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "KG to LB Converter",
- "parameters": { },
- "rule_definition": { },
- "rule_type": "calculate",
- "rule_version": 1,
- "source_attributes": [
- "weight"
]
}, - "success": true
}Soft-delete a transformation rule
| id required | string Transformation Rule ID |
{- "errors": [
- {
- "code": "string",
- "field": "string",
- "message": "string"
}
], - "message": "string",
- "success": true
}Update an existing transformation rule
| id required | string Transformation Rule ID |
Transformation rule update request
| description | string |
| name | string |
object | |
object | |
| rule_type | string |
| source_attributes | Array of strings |
{- "description": "Updated weight conversion rule",
- "name": "KG to LB Converter (Updated)",
- "parameters": { },
- "rule_definition": { },
- "rule_type": "calculate",
- "source_attributes": [
- "weight"
]
}{- "data": {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Converts weight from kilograms to pounds",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "KG to LB Converter",
- "parameters": { },
- "rule_definition": { },
- "rule_type": "calculate",
- "rule_version": 1,
- "source_attributes": [
- "weight"
]
}, - "success": true
}Activate or deactivate a transformation rule
| id required | string Transformation Rule ID |
Status request
| status required | string Enum: "active" "inactive" |
{- "status": "active"
}{- "data": {
- "created_at": "2026-01-18T10:30:00Z",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "description": "Converts weight from kilograms to pounds",
- "id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8e0",
- "is_active": true,
- "modified_at": "2026-01-18T15:45:00Z",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "KG to LB Converter",
- "parameters": { },
- "rule_definition": { },
- "rule_type": "calculate",
- "rule_version": 1,
- "source_attributes": [
- "weight"
]
}, - "success": true
}Get a paginated list of webhooks
| page | integer Default: 1 Page number |
| page_size | integer Default: 20 Page size |
| import_profile_id | string Filter by import profile ID |
| status | string Enum: "active" "inactive" Filter by status |
{- "data": {
- "items": [
- {
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "id": "string",
- "import_profile_id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "path": "string",
- "secret": "string",
- "status": "string"
}
], - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}
}, - "pagination": {
- "has_next": true,
- "page": 0,
- "page_size": 0,
- "total_items": 0,
- "total_pages": 0
}, - "success": true
}Create a new webhook endpoint for push-based data import
Webhook request
| entity_type required | string |
| import_profile_id required | string |
| name required | string |
| path required | string |
{- "entity_type": "products",
- "import_profile_id": "0193a5b6-e7c0-7df0-b4b1-c0a1f5e3a8d4",
- "name": "SAP Product Webhook",
- "path": "sap-products"
}{- "data": {
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "id": "string",
- "import_profile_id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "path": "string",
- "secret": "string",
- "status": "string"
}, - "success": true
}Get a single webhook by ID
| id required | string Webhook ID |
{- "data": {
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "id": "string",
- "import_profile_id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "path": "string",
- "secret": "string",
- "status": "string"
}, - "success": true
}Generate a new HMAC secret for a webhook
| id required | string Webhook ID |
{- "data": {
- "created_at": "string",
- "created_by": {
- "id": "string",
- "name": "string"
}, - "entity_type": "string",
- "id": "string",
- "import_profile_id": "string",
- "modified_at": "string",
- "modified_by": {
- "id": "string",
- "name": "string"
}, - "name": "string",
- "path": "string",
- "secret": "string",
- "status": "string"
}, - "success": true
}