What can you do with it?
The Akeneo API allows you to manage product information in a centralized PIM system. You can create, update, and delete products, manage product attributes and families, search and filter products, handle asset media files, and associate assets with products across multiple locales and channels.
How to use it?
Basic Command Structure
/your-akeneo-connection [action] [required-parameters] [optional-parameters]
Parameters
Required:
action
- The action to perform (list, create, search, update, delete, upload, associate)
entity
- The entity type (products, asset-media-files, assets)
identifier
- Product or asset identifier for specific operations
Optional:
family
- Product family code
categories
- Array of category codes
enabled
- Product enabled status
locale
- Locale code (e.g., “en_US”, “fr_FR”)
scope
- Channel scope
search_filter
- JSON search filter for queries
List Products
Retrieve a list of all products from your Akeneo PIM.
Parameters:
limit
(optional) - Number of products to return
page
(optional) - Page number for pagination
Example:
/your-akeneo-connection
action: list
entity: products
limit: 10
page: 1
Response:
{
"_links": {
"self": {
"href": "https://example.com/products?page=1&limit=10&with_count=false"
},
"first": {
"href": "https://example.com/products?page=1&limit=10&with_count=false"
},
"next": {
"href": "https://example.com/products?page=2&limit=10&with_count=false"
}
},
"current_page": 1,
"_embedded": {
"items": [
{
"identifier": "product_1",
"family": "clothing",
"categories": ["summer_collection"],
"enabled": true,
"values": {
"name": [
{
"locale": "en_US",
"scope": null,
"data": "T-Shirt"
}
],
"description": [
{
"locale": "en_US",
"scope": null,
"data": "A comfortable cotton t-shirt."
}
]
}
}
]
}
}
Create Product
Create a new product in your Akeneo PIM.
Parameters:
identifier
(required) - Unique product identifier
family
(required) - Product family code
categories
(optional) - Array of category codes
enabled
(optional) - Product enabled status
values
(optional) - Product attribute values
Example:
/your-akeneo-connection
action: create
entity: product
identifier: new_product
family: accessories
categories: ["new_arrivals"]
enabled: true
values: {
"name": [{"locale": "en_US", "scope": null, "data": "Leather Wallet"}],
"description": [{"locale": "en_US", "scope": null, "data": "A premium leather wallet."}]
}
Response:
{
"identifier": "new_product",
"family": "accessories",
"categories": ["new_arrivals"],
"enabled": true,
"values": {
"name": [
{
"locale": "en_US",
"scope": null,
"data": "Leather Wallet"
}
],
"description": [
{
"locale": "en_US",
"scope": null,
"data": "A premium leather wallet."
}
]
}
}
Search Products
Search for products using advanced filtering criteria.
Parameters:
search_filter
(required) - JSON search filter object
limit
(optional) - Number of results to return
page
(optional) - Page number for pagination
Example:
/your-akeneo-connection
action: search
entity: products
search_filter: {
"name": [{"operator": "CONTAINS", "value": "wallet"}]
}
limit: 10
Response:
{
"_links": {
"self": {
"href": "https://example.com/products?page=1&with_count=false&search=..."
},
"first": {
"href": "https://example.com/products?page=1&with_count=false&search=..."
}
},
"current_page": 1,
"_embedded": {
"items": [
{
"identifier": "001201JA20",
"enabled": true,
"family": "bfa",
"categories": ["bfa_products_kit_kit_subscription"],
"values": {
"name": [
{
"locale": null,
"scope": null,
"data": "Bag201"
}
],
"item_id": [
{
"locale": null,
"scope": null,
"data": "1234"
}
],
"sku": [
{
"locale": null,
"scope": null,
"data": "001201JA20"
}
]
}
}
]
}
}
Update Product
Update an existing product’s information.
Parameters:
identifier
(required) - Product identifier to update
family
(optional) - Updated product family
enabled
(optional) - Updated enabled status
values
(optional) - Updated attribute values
Example:
/your-akeneo-connection
action: update
entity: product
identifier: product_1
family: updated_family
enabled: false
values: {
"description": [{"locale": "en_US", "scope": null, "data": "Updated product description."}]
}
Response:
{
"status": 201,
"message": "Product updated successfully"
}
Delete Product
Delete a product from your Akeneo PIM.
Parameters:
identifier
(required) - Product identifier to delete
Example:
/your-akeneo-connection
action: delete
entity: product
identifier: product_1
Response:
{
"status": 204,
"message": "Product deleted successfully"
}
Upload a media file to create an asset in Akeneo.
Parameters:
file
(required) - Binary file data
content_type
(required) - File content type
Example:
/your-akeneo-connection
action: upload
entity: asset-media-file
file: [binary_file_data]
content_type: multipart/form-data
Response:
{
"status": 204,
"headers": {
"asset-media-file-code": "9cd2e3f5dc37a212b9d04aea523bb5b3ed30743b",
"location": "https://example.com/asset-media-files/9cd2e3f5dc37a212b9d04aea523bb5b3ed30743b"
}
}
Associate Asset to Asset Family
Associate an uploaded media file with an asset in a specific asset family.
Parameters:
asset_family_code
(required) - Asset family code
code
(required) - Asset code
values
(required) - Asset attribute values including media references
Example:
/your-akeneo-connection
action: associate
entity: asset
asset_family_code: product_images
code: Double_Head_Lip_Glaze_Makeup
values: {
"media": [{"locale": null, "channel": null, "data": "9cd2e3f5dc37a212b9d04aea523bb5b3ed30743b_Double_Head_Lip_Glaze_Makeup.jpeg"}],
"media_preview": [{"locale": null, "channel": null, "data": "9cd2e3f5dc37a212b9d04aea523bb5b3ed30743b_Double_Head_Lip_Glaze_Makeup.jpeg"}],
"main_colors": [{"locale": null, "channel": null, "data": ["red", "purple"]}]
}
Response:
{
"status": 201,
"headers": {
"location": "https://example.com/asset-families/product_images/assets/Double_Head_Lip_Glaze_Makeup"
}
}
Add Asset to Product
Add an asset to a product’s asset collection attribute.
Parameters:
identifier
(required) - Product identifier
asset_attribute
(required) - Asset collection attribute code
asset_codes
(required) - Array of asset codes to add
Example:
/your-akeneo-connection
action: add_asset
entity: product
identifier: product_1
asset_attribute: ASSET_PROD
asset_codes: ["Double_Head_Lip_Glaze_Makeup"]
Response:
{
"status": 204,
"headers": {
"location": "https://example.com/products/product_1"
}
}
Notes
Search filters must be JSON encoded and URL encoded for API requests. Products support multilingual attributes with locale and scope specifications. Asset media files require multipart/form-data content type. Product families define the structure and available attributes for products. Categories organize products hierarchically. The system supports complex bundle data for product kits. Supports both PinkConnect and Paragon proxy connections. Asset codes are returned in response headers after upload.