REST API reference for PaaS versions
Complete reference on how to handle Akeneo PIM resources for PaaS versions
Products
Product [identifier]
                                    
                            
                                
                                This API provides two endpoints for interacting with products:
- Product (UUID): We strongly recommend using this endpoint for its reliability and flexibility. UUIDs, or Universally Unique Identifiers, are guaranteed to be unique and never change, even if other product identifiers like SKUs are modified. This ensures consistent product identification regardless of future changes. Additionally, UUIDs allow interaction with products that lack a traditional identifier.
 - Product (Identifier): This endpoint is useful when you already have a product identifier within your systems. This identifier, which could be a SKU or internal code, can be used to directly interact with the corresponding product in our API. This simplifies integration for workflows that rely on existing product identification methods.
 
Get list of products
This endpoint allows you to get a list of products. Products are paginated and they can be filtered. In the Enterprise Edition, since the 2.0, permissions based on your user groups are applied to the set of products you request.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/products
Path parameters
Ø
Query parameters
                                                                search
                                                                (string )
                                                                • Filter products, for more details see the Filters section
                                                            
                                                                scope
                                                                (string )
                                                                • Filter product values to return scopable attributes for the given channel as well as the non localizable/non scopable attributes, for more details see the Filter product values via channel section
                                                            
                                                                locales
                                                                (string )
                                                                • Filter product values to return localizable attributes for the given locales as well as the non localizable/non scopable attributes, for more details see the Filter product values via locale section
                                                            
                                                                attributes
                                                                (string )
                                                                • Filter product values to only return those concerning the given attributes, for more details see the Filter on product values section
                                                            
                                                                pagination_type
                                                                (string  ,
                                                                    page
                                                                     by default )
                                                                    
                                                                    
                                                                • Pagination method type, see Pagination section
                                                            
                                                                page
                                                                (integer  ,
                                                                    1
                                                                     by default )
                                                                • Number of the page to retrieve when using the `page` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                search_after
                                                                (string  ,
                                                                    cursor to the first page
                                                                     by default )
                                                                • Cursor when using the `search_after` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                limit
                                                                (integer  ,
                                                                    10
                                                                     by default )
                                                                    
                                                                • Number of results by page, see Pagination section
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return products paginated
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        self (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the current page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    first (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the first page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    previous (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the previous page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    next (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the next page of resources
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            current_page
                                                                                            (integer)
                                                                                                                                                                                        • Current page number
                                                                                        
                                                                                            _embedded
                                                                                            (object)
                                                                                            : { 
                                                                                                        items (array )
                                                                                                                                                                                                         : [ 
         { 
                                                                                                                              _links (object)
                                                                                                                     : { 
                                                                                                                                          self (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI of the resource
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              identifier (string)
                                                                                                                                                                                                                                        • Product identifier, i.e. the value of the only `pim_catalog_identifier` attribute
                                                                                                                              enabled (boolean)
                                                                                                                                                                                                                                        • Whether the product is enabled
                                                                                                                              family (string)
                                                                                                                                                                                                                                        • Family code from which the product inherits its attributes and attributes requirements.
                                                                                                                              categories (array [string ])
                                                                                                                                                                                                                                        • Codes of the categories in which the product is classified
                                                                                                                              groups (array [string ])
                                                                                                                                                                                                                                        • Codes of the groups to which the product belong
                                                                                                                              values (object)
                                                                                                                                                                                                                                        • Product attributes values, see Product values section for more details
                                                                                                                              associations (object)
                                                                                                                     : { 
                                                                                                                                          associationTypeCode (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    groups
                                                                                                                                    (array [string ] ) • Array of groups codes with which the product is in relation 
 
                                                                                                                                                     
                                                                                                                                    products
                                                                                                                                    (array [string ] ) • Array of product identifiers with which the product is in relation
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              created (string)
                                                                                                                                                                                                                                        • Date of creation
                                                                                                                              updated (string)
                                                                                                                                                                                                                                        • Date of the last update
                                                                                                                 } 
     ] 
                                                                                                    
                                                                                                
   }
                                                                                
}
Example
{
      "_links": {
        "self": {
          "href": "https://demo.akeneo.com/api/rest/v1/products?page=3&limit=3"
        },
        "first": {
          "href": "https://demo.akeneo.com/api/rest/v1/products?page=1&limit=3"
        },
        "previous": {
          "href": "https://demo.akeneo.com/api/rest/v1/products?page=2&limit=3"
        },
        "next": {
          "href": "https://demo.akeneo.com/api/rest/v1/products?page=4&limit=3"
        }
      },
      "current_page": 3,
      "_embedded": {
        "items": [
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/product/top"
              }
            },
            "identifier": "top",
            "family": "tshirt",
            "groups": [],
            "categories": [
              "summer_collection"
            ],
            "enabled": true,
            "values": {
              "name": [
                {
                  "data": "Top",
                  "locale": "en_US",
                  "scope": null
                },
                {
                  "data": "Débardeur",
                  "locale": "fr_FR",
                  "scope": null
                }
              ],
              "description": [
                {
                  "data": "Summer top",
                  "locale": "en_US",
                  "scope": "ecommerce"
                },
                {
                  "data": "Top",
                  "locale": "en_US",
                  "scope": "tablet"
                },
                {
                  "data": "Débardeur pour l'été",
                  "locale": "fr_FR",
                  "scope": "ecommerce"
                },
                {
                  "data": "Débardeur",
                  "locale": "fr_FR",
                  "scope": "tablet"
                }
              ],
              "price": [
                {
                  "locale": null,
                  "scope": null,
                  "data": [
                    {
                      "amount": "15.5",
                      "currency": "EUR"
                    },
                    {
                      "amount": "15",
                      "currency": "USD"
                    }
                  ]
                }
              ],
              "color": [
                {
                  "locale": null,
                  "scope": null,
                  "data": "black"
                }
              ],
              "size": [
                {
                  "locale": null,
                  "scope": null,
                  "data": "m"
                }
              ],
              "collection": [
                {
                  "locale": null,
                  "scope": null,
                  "data": [
                    "winter_2016"
                  ]
                }
              ]
            },
            "created": "2016-06-23T18:24:44+02:00",
            "updated": "2016-06-25T17:56:12+02:00",
            "associations": {
              "PACK": {
                "products": [
                  "sunglasses"
                ],
                "groups": []
              }
            },
            "quantified_associations": {
              "PRODUCT_SET": {
                "products": [
                  {
                    "identifier": "cap",
                    "quantity": 2
                  },
                  {
                    "identifier": "shoes",
                    "quantity": 1
                  }
                ]
              }
            }
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/product/cap"
              }
            },
            "identifier": "cap",
            "family": "caps",
            "groups": [],
            "categories": [
              "summer_collection"
            ],
            "enabled": true,
            "values": {
              "name": [
                {
                  "data": "Cap",
                  "locale": "en_US",
                  "scope": null
                },
                {
                  "data": "Casquette",
                  "locale": "fr_FR",
                  "scope": null
                }
              ],
              "description": [
                {
                  "data": "Cap unisex",
                  "locale": "en_US",
                  "scope": "ecommerce"
                },
                {
                  "data": "Cap unisex",
                  "locale": "en_US",
                  "scope": "tablet"
                },
                {
                  "data": "Casquette unisexe",
                  "locale": "fr_FR",
                  "scope": "ecommerce"
                },
                {
                  "data": "Casquette unisexe",
                  "locale": "fr_FR",
                  "scope": "tablet"
                }
              ],
              "price": [
                {
                  "locale": null,
                  "scope": null,
                  "data": [
                    {
                      "amount": "20",
                      "currency": "EUR"
                    },
                    {
                      "amount": "20",
                      "currency": "USD"
                    }
                  ]
                }
              ],
              "color": [
                {
                  "locale": null,
                  "scope": null,
                  "data": "black"
                }
              ]
            },
            "created": "2016-06-23T18:24:44+02:00",
            "updated": "2016-06-25T17:56:12+02:00",
            "associations": {
              "PACK": {
                "products": [
                  "sunglasses"
                ],
                "groups": []
              }
            },
            "quantified_associations": {}
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/product/sweat"
              }
            },
            "identifier": "sweat",
            "family": null,
            "groups": [],
            "categories": [
              "winter_collection"
            ],
            "enabled": true,
            "values": {},
            "created": "2016-06-23T11:24:44+02:00",
            "updated": "2016-06-23T11:24:44+02:00",
            "associations": {},
            "quantified_associations": {}
          }
        ]
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Create a new product
This endpoint allows you to create a new product. In the Enterprise Edition, since the v2.0, permissions based on your user groups are applied to the product you try to create.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
post /api/rest/v1/products
Path parameters
Ø
Query parameters
                                                                create_missing_options
                                                                (string  ,
                                                                    no value
                                                                     by default )
                                                                • Optional parameter to allow for the creation of missing options for attribute allowing it. (Only available since in Saas version)
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
{
                                                                                    identifier
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                        • Product identifier, i.e. the value of the only `pim_catalog_identifier` attribute
                                                                                
                                                                                    enabled
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        true
                                                                                        by default)
                                                                                        • Whether the product is enabled
                                                                                
                                                                                    family
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    ,
                                                                                        null only in the case of a non variant product
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Family code from which the product inherits its attributes and attributes requirements.
                                                                                
                                                                                    categories
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Codes of the categories in which the product is classified
                                                                                
                                                                                    groups
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Codes of the groups to which the product belong
                                                                                
                                                                                    values
                                                                                    
                                                                                        (object
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Product attributes values, see Product values section for more details
                                                                                
                                                                                    associations
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            associationTypeCode : object
                                                                                                {
                                                                                                groups : array
                                                                                                [string]
                                                                                                 , 
                                                                                                
                                                                                                products : array
                                                                                                [string]
                                                                                                 }
                                                                                            }
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Several associations related to groups, product models and/or other products, grouped by association types
                                                                                
}
Example
{
      "identifier": "top",
      "enabled": true,
      "family": "tshirt",
      "categories": [
        "summer_collection"
      ],
      "groups": [],
      "parent": null,
      "values": {
        "name": [
          {
            "data": "Top",
            "locale": "en_US",
            "scope": null,
            "attribute_type": "pim_catalog_text"
          },
          {
            "data": "Débardeur",
            "locale": "fr_FR",
            "scope": null,
            "attribute_type": "pim_catalog_text"
          }
        ],
        "description": [
          {
            "data": "Summer top",
            "locale": "en_US",
            "scope": "ecommerce",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Top",
            "locale": "en_US",
            "scope": "tablet",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Débardeur pour l'été",
            "locale": "fr_FR",
            "scope": "ecommerce",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Débardeur",
            "locale": "fr_FR",
            "scope": "tablet",
            "attribute_type": "pim_catalog_textarea"
          }
        ],
        "price": [
          {
            "locale": null,
            "scope": null,
            "data": [
              {
                "amount": "15.5",
                "currency": "EUR"
              },
              {
                "amount": "15",
                "currency": "USD"
              }
            ],
            "attribute_type": "pim_catalog_price_collection"
          }
        ],
        "color": [
          {
            "locale": null,
            "scope": null,
            "data": "black",
            "linked_data": {
              "attribute": "color",
              "code": "black",
              "labels": {
                "en_US": "Black",
                "fr_FR": "Noir"
              }
            },
            "attribute_type": "pim_catalog_simpleselect"
          }
        ],
        "size": [
          {
            "locale": null,
            "scope": null,
            "data": "m",
            "linked_data": {
              "attribute": "size",
              "code": "m",
              "labels": {
                "en_US": "M",
                "fr_FR": "M"
              }
            },
            "attribute_type": "pim_catalog_simpleselect"
          }
        ],
        "collection": [
          {
            "locale": null,
            "scope": null,
            "data": [
              "winter_2016"
            ],
            "linked_data": {
              "winter_2016": {
                "attribute": "collection",
                "code": "winter_2016",
                "labels": {
                  "en_US": "Winter 2016",
                  "fr_FR": "Hiver 2016"
                }
              }
            },
            "attribute_type": "pim_catalog_multiselect"
          }
        ]
      },
      "associations": {
        "PACK": {
          "products": [
            "sunglass"
          ],
          "product_models": [],
          "groups": []
        }
      },
      "quantified_associations": {
        "PRODUCT_SET": {
          "products": [
            {
              "identifier": "cap",
              "quantity": 2
            },
            {
              "identifier": "shoes",
              "quantity": 1
            }
          ],
          "product_models": [
            {
              "identifier": "model-biker-jacket-leather",
              "quantity": 2
            }
          ]
        }
      },
      "quality_scores": [
        {
          "scope": "ecommerce",
          "locale": "en_US",
          "data": "A"
        },
        {
          "scope": "ecommerce",
          "locale": "fr_FR",
          "data": "B"
        },
        {
          "scope": "tablet",
          "locale": "en_US",
          "data": "D"
        },
        {
          "scope": "tablet",
          "locale": "fr_FR",
          "data": "E"
        }
      ],
      "completenesses": [
        {
          "scope": "ecommerce",
          "locale": "en_US",
          "data": 10
        },
        {
          "scope": "ecommerce",
          "locale": "fr_FR",
          "data": 20
        },
        {
          "scope": "tablet",
          "locale": "en_US",
          "data": 30
        },
        {
          "scope": "tablet",
          "locale": "fr_FR",
          "data": 40
        }
      ],
      "workflow_execution_statuses": [
        {
          "uuid": "8c0fe59f-4d29-4faa-b4c3-d327e7f3cc52",
          "status": "in_progress",
          "started_at": "2024-02-22T17:31:00Z",
          "completed_at": null,
          "workflow": {
            "uuid": "6f37476a-04c2-46c0-b6d0-e18316959068",
            "code": "enrichment_workflow",
            "labels": {
              "en_US": "Enrichment workflow",
              "fr_FR": "Workflow d'enrichissement"
            }
          },
          "tasks": [
            {
              "uuid": "8f6c2d18-fbd4-4f7e-81df-cb3dc368fe07",
              "status": "in_progress",
              "created_at": "2024-02-22T17:31:00Z",
              "step": {
                "uuid": "f626d0e5-84a5-41fc-8215-65508c253edb",
                "code": "review_step",
                "labels": {
                  "en_US": "Marketing review",
                  "fr_FR": "Revue marketing"
                }
              }
            }
          ]
        },
        {
          "uuid": "59169984-6d6c-4fa7-b925-68b8e9d31ddb",
          "status": "completed",
          "started_at": "2024-02-22T17:31:00Z",
          "completed_at": "2024-02-22T17:31:00Z",
          "workflow": {
            "uuid": "b69ee158-a421-4680-bec0-a71bc73b8e31",
            "code": "compliance_workflow",
            "labels": {}
          },
          "tasks": []
        }
      ]
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Update/create several products
This endpoint allows you to update and/or create several products at once. Learn more about Update behavior. Note that if no product exists for the given identifier, it creates it. In the Enterprise Edition, since the v2.0, permissions based on your user groups are applied to the products you try to update. It may result in the creation of drafts if you only have edit rights through the product's categories.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/products
Path parameters
Ø
Query parameters
                                                                create_missing_options
                                                                (string  ,
                                                                    no value
                                                                     by default )
                                                                • Optional parameter to allow for the creation of missing options for attribute allowing it. (Only available since in Saas version)
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                Content-type
                                                                  
                                                                • Equal to 'application/vnd.akeneo.collection+json', no other value allowed
                                                            
Body
Contains several lines, each line is a product model in JSON standard format. Modifications to existing product models can be specified using additional keys such as `add_categories` and `remove_categories`.
{
                                                                                    identifier
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Product identifier, i.e. the value of the only `pim_catalog_identifier` attribute
                                                                                
                                                                                    enabled
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        true
                                                                                        by default)
                                                                                        • Whether the product is enabled
                                                                                
                                                                                    family
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    ,
                                                                                        null only in the case of a non variant product
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Family code from which the product inherits its attributes and attributes requirements.
                                                                                
                                                                                    categories
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Codes of the categories in which the product is classified
                                                                                
                                                                                    groups
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Codes of the groups to which the product belong
                                                                                
                                                                                    values
                                                                                    
                                                                                        (object
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Product attributes values, see Product values section for more details
                                                                                
                                                                                    associations
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            associationTypeCode : object
                                                                                                {
                                                                                                groups : array
                                                                                                [string]
                                                                                                 , 
                                                                                                
                                                                                                products : array
                                                                                                [string]
                                                                                                 }
                                                                                            }
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Several associations related to groups, product models and/or other products, grouped by association types
                                                                                
                                                                                    created
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                          
                                                                                        • Date of creation
                                                                                
                                                                                    updated
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Date of the last update
                                                                                
}
Example
{"identifier":"cap","values":{"description":[{"scope":"ecommerce","locale":"en_US","data":"My amazing cap"}]}}
    {"identifier":"mug","group":["promotion"]}
    {"identifier":"tshirt","family":"clothes"}
                                                                    RESPONSES
OK
Returns a plain text response whose lines are JSON containing the status of each update or creation
Body Format application/json
{
line
                                                                                     (integer ) 
                                                                                                                                                                            • Line number
                                                                                    
identifier
                                                                                     (string ) 
                                                                                                                                                                            • Resource identifier, only filled when the resource is a product
                                                                                    
code
                                                                                     (string ) 
                                                                                                                                                                            • Resource code, only filled when the resource is not a product
                                                                                    
status_code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code, see Client errors to understand the meaning of each code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{"line":1,"identifier":"cap","status_code":204}
    {"line":2,"identifier":"mug","status_code":422,"message":"Property \"group\" does not exist."}
    {"line":3,"identifier":"tshirt","status_code":201}Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Request Entity Too Large
There are too many resources to process (max 100) or the line of JSON is too long (max 1 000 000 characters)
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 413,
      "message": "Too many resources to process, 100 is the maximum allowed."
    }Unsupported Media type
The `Content-type` header has to be `application/vnd.akeneo.collection+json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/vnd.akeneo.collection+json’ is allowed."
    }Get a product
This endpoint allows you to get the information about a given product. In the Entreprise Edition, since the v2.0, permissions based on your user groups are applied to the product you request.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/products/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
OK
Returns the content of the product in JSON standard format
Body Format application/json
Follow the standard format of the entity
{
identifier
                                                                                     (string ) 
                                                                                                                                                                            • Product identifier, i.e. the value of the only `pim_catalog_identifier` attribute
                                                                                    
enabled
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether the product is enabled
                                                                                    
family
                                                                                     (string ) 
                                                                                                                                                                            • Family code from which the product inherits its attributes and attributes requirements.
                                                                                    
categories
                                                                                     (array  [string] ) 
                                                                                                                                                                                • Codes of the categories in which the product is classified
                                                                                    
groups
                                                                                     (array  [string] ) 
                                                                                                                                                                                • Codes of the groups to which the product belong
                                                                                    
values
                                                                                     (object ) 
                                                                                                                                                                            • Product attributes values, see Product values section for more details
                                                                                    
associations
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            associationTypeCode
                                                                                            
                                                                                                (object
    )
                                                                                            
                                                                                                : { 
                                                                                                           
                                                                                                    groups
                                                                                                    
                                                                                                        (array
                                                                                                          [string]
                                                                                                        )
                                                                                                    
                                                                                                    • Array of groups codes with which the product is in relation 
 
                                                                                                           
                                                                                                    products
                                                                                                    
                                                                                                        (array
                                                                                                          [string]
                                                                                                        )
                                                                                                    
                                                                                                    • Array of product identifiers with which the product is in relation
                                                                                                
    }
                                                                                        
   }
                                                                                    
created
                                                                                     (string ) 
                                                                                                                                                                            • Date of creation
                                                                                    
updated
                                                                                     (string ) 
                                                                                                                                                                            • Date of the last update
                                                                                
}
Example
{
      "identifier": "top",
      "enabled": true,
      "family": "tshirt",
      "categories": [
        "summer_collection"
      ],
      "groups": [],
      "parent": null,
      "values": {
        "name": [
          {
            "data": "Top",
            "locale": "en_US",
            "scope": null,
            "attribute_type": "pim_catalog_text"
          },
          {
            "data": "Débardeur",
            "locale": "fr_FR",
            "scope": null,
            "attribute_type": "pim_catalog_text"
          }
        ],
        "description": [
          {
            "data": "Summer top",
            "locale": "en_US",
            "scope": "ecommerce",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Top",
            "locale": "en_US",
            "scope": "tablet",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Débardeur pour l'été",
            "locale": "fr_FR",
            "scope": "ecommerce",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Débardeur",
            "locale": "fr_FR",
            "scope": "tablet",
            "attribute_type": "pim_catalog_textarea"
          }
        ],
        "price": [
          {
            "locale": null,
            "scope": null,
            "data": [
              {
                "amount": "15.5",
                "currency": "EUR"
              },
              {
                "amount": "15",
                "currency": "USD"
              }
            ],
            "attribute_type": "pim_catalog_price_collection"
          }
        ],
        "color": [
          {
            "locale": null,
            "scope": null,
            "data": "black",
            "linked_data": {
              "attribute": "color",
              "code": "black",
              "labels": {
                "en_US": "Black",
                "fr_FR": "Noir"
              }
            },
            "attribute_type": "pim_catalog_simpleselect"
          }
        ],
        "size": [
          {
            "locale": null,
            "scope": null,
            "data": "m",
            "linked_data": {
              "attribute": "size",
              "code": "m",
              "labels": {
                "en_US": "M",
                "fr_FR": "M"
              }
            },
            "attribute_type": "pim_catalog_simpleselect"
          }
        ],
        "collection": [
          {
            "locale": null,
            "scope": null,
            "data": [
              "winter_2016"
            ],
            "linked_data": {
              "winter_2016": {
                "attribute": "collection",
                "code": "winter_2016",
                "labels": {
                  "en_US": "Winter 2016",
                  "fr_FR": "Hiver 2016"
                }
              }
            },
            "attribute_type": "pim_catalog_multiselect"
          }
        ]
      },
      "created": "2016-06-23T18:24:44+02:00",
      "updated": "2016-06-25T17:56:12+02:00",
      "associations": {
        "PACK": {
          "products": [
            "sunglass"
          ],
          "product_models": [],
          "groups": []
        }
      },
      "quantified_associations": {
        "PRODUCT_SET": {
          "products": [
            {
              "identifier": "cap",
              "quantity": 2
            },
            {
              "identifier": "shoes",
              "quantity": 1
            }
          ],
          "product_models": [
            {
              "identifier": "model-biker-jacket-leather",
              "quantity": 2
            }
          ]
        }
      },
      "quality_scores": [
        {
          "scope": "ecommerce",
          "locale": "en_US",
          "data": "A"
        },
        {
          "scope": "ecommerce",
          "locale": "fr_FR",
          "data": "B"
        },
        {
          "scope": "tablet",
          "locale": "en_US",
          "data": "D"
        },
        {
          "scope": "tablet",
          "locale": "fr_FR",
          "data": "E"
        }
      ],
      "completenesses": [
        {
          "scope": "ecommerce",
          "locale": "en_US",
          "data": 10
        },
        {
          "scope": "ecommerce",
          "locale": "fr_FR",
          "data": 20
        },
        {
          "scope": "tablet",
          "locale": "en_US",
          "data": 30
        },
        {
          "scope": "tablet",
          "locale": "fr_FR",
          "data": 40
        }
      ],
      "workflow_execution_statuses": [
        {
          "uuid": "8c0fe59f-4d29-4faa-b4c3-d327e7f3cc52",
          "status": "in_progress",
          "started_at": "2024-02-22T17:31:00Z",
          "completed_at": null,
          "workflow": {
            "uuid": "6f37476a-04c2-46c0-b6d0-e18316959068",
            "code": "enrichment_workflow",
            "labels": {
              "en_US": "Enrichment workflow",
              "fr_FR": "Workflow d'enrichissement"
            }
          },
          "tasks": [
            {
              "uuid": "8f6c2d18-fbd4-4f7e-81df-cb3dc368fe07",
              "status": "in_progress",
              "created_at": "2024-02-22T17:31:00Z",
              "step": {
                "uuid": "f626d0e5-84a5-41fc-8215-65508c253edb",
                "code": "review_step",
                "labels": {
                  "en_US": "Marketing review",
                  "fr_FR": "Revue marketing"
                }
              }
            }
          ]
        },
        {
          "uuid": "59169984-6d6c-4fa7-b925-68b8e9d31ddb",
          "status": "completed",
          "started_at": "2024-02-22T17:31:00Z",
          "completed_at": "2024-02-22T17:31:00Z",
          "workflow": {
            "uuid": "b69ee158-a421-4680-bec0-a71bc73b8e31",
            "code": "compliance_workflow",
            "labels": {}
          },
          "tasks": []
        }
      ]
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Update/create a product
This endpoint allows you to update a given product. Learn more about Update behavior. Note that if no product exists for the given identifier, it creates it. In the Entreprise Edition, since the v2.0, permissions based on your user groups are applied to the product you try to update. It may result in the creation of a draft if you only have edit rights through the product's categories.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/products/{code}
Query parameters
                                                                create_missing_options
                                                                (string  ,
                                                                    no value
                                                                     by default )
                                                                • Optional parameter to allow for the creation of missing options for attribute allowing it. (Only available since in Saas version)
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
{
                                                                                    identifier
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Product identifier, i.e. the value of the only `pim_catalog_identifier` attribute
                                                                                
                                                                                    enabled
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        true
                                                                                        by default)
                                                                                        • Whether the product is enabled
                                                                                
                                                                                    family
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    ,
                                                                                        null only in the case of a non variant product
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Family code from which the product inherits its attributes and attributes requirements.
                                                                                
                                                                                    categories
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Codes of the categories in which the product is classified
                                                                                
                                                                                    groups
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Codes of the groups to which the product belong
                                                                                
                                                                                    values
                                                                                    
                                                                                        (object
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Product attributes values, see Product values section for more details
                                                                                
                                                                                    associations
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            associationTypeCode : object
                                                                                                {
                                                                                                groups : array
                                                                                                [string]
                                                                                                 , 
                                                                                                
                                                                                                products : array
                                                                                                [string]
                                                                                                 }
                                                                                            }
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Several associations related to groups, product models and/or other products, grouped by association types
                                                                                
                                                                                    created
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                          
                                                                                        • Date of creation
                                                                                
                                                                                    updated
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Date of the last update
                                                                                
}
Example
{
      "identifier": "top",
      "enabled": true,
      "family": "tshirt",
      "categories": [
        "summer_collection"
      ],
      "groups": [],
      "parent": null,
      "values": {
        "name": [
          {
            "data": "Top",
            "locale": "en_US",
            "scope": null,
            "attribute_type": "pim_catalog_text"
          },
          {
            "data": "Débardeur",
            "locale": "fr_FR",
            "scope": null,
            "attribute_type": "pim_catalog_text"
          }
        ],
        "description": [
          {
            "data": "Summer top",
            "locale": "en_US",
            "scope": "ecommerce",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Top",
            "locale": "en_US",
            "scope": "tablet",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Débardeur pour l'été",
            "locale": "fr_FR",
            "scope": "ecommerce",
            "attribute_type": "pim_catalog_textarea"
          },
          {
            "data": "Débardeur",
            "locale": "fr_FR",
            "scope": "tablet",
            "attribute_type": "pim_catalog_textarea"
          }
        ],
        "price": [
          {
            "locale": null,
            "scope": null,
            "data": [
              {
                "amount": "15.5",
                "currency": "EUR"
              },
              {
                "amount": "15",
                "currency": "USD"
              }
            ],
            "attribute_type": "pim_catalog_price_collection"
          }
        ],
        "color": [
          {
            "locale": null,
            "scope": null,
            "data": "black",
            "linked_data": {
              "attribute": "color",
              "code": "black",
              "labels": {
                "en_US": "Black",
                "fr_FR": "Noir"
              }
            },
            "attribute_type": "pim_catalog_simpleselect"
          }
        ],
        "size": [
          {
            "locale": null,
            "scope": null,
            "data": "m",
            "linked_data": {
              "attribute": "size",
              "code": "m",
              "labels": {
                "en_US": "M",
                "fr_FR": "M"
              }
            },
            "attribute_type": "pim_catalog_simpleselect"
          }
        ],
        "collection": [
          {
            "locale": null,
            "scope": null,
            "data": [
              "winter_2016"
            ],
            "linked_data": {
              "winter_2016": {
                "attribute": "collection",
                "code": "winter_2016",
                "labels": {
                  "en_US": "Winter 2016",
                  "fr_FR": "Hiver 2016"
                }
              }
            },
            "attribute_type": "pim_catalog_multiselect"
          }
        ]
      },
      "created": "2016-06-23T18:24:44+02:00",
      "updated": "2016-06-25T17:56:12+02:00",
      "associations": {
        "PACK": {
          "products": [
            "sunglass"
          ],
          "product_models": [],
          "groups": []
        }
      },
      "quantified_associations": {
        "PRODUCT_SET": {
          "products": [
            {
              "identifier": "cap",
              "quantity": 2
            },
            {
              "identifier": "shoes",
              "quantity": 1
            }
          ],
          "product_models": [
            {
              "identifier": "model-biker-jacket-leather",
              "quantity": 2
            }
          ]
        }
      },
      "quality_scores": [
        {
          "scope": "ecommerce",
          "locale": "en_US",
          "data": "A"
        },
        {
          "scope": "ecommerce",
          "locale": "fr_FR",
          "data": "B"
        },
        {
          "scope": "tablet",
          "locale": "en_US",
          "data": "D"
        },
        {
          "scope": "tablet",
          "locale": "fr_FR",
          "data": "E"
        }
      ],
      "completenesses": [
        {
          "scope": "ecommerce",
          "locale": "en_US",
          "data": 10
        },
        {
          "scope": "ecommerce",
          "locale": "fr_FR",
          "data": 20
        },
        {
          "scope": "tablet",
          "locale": "en_US",
          "data": 30
        },
        {
          "scope": "tablet",
          "locale": "fr_FR",
          "data": 40
        }
      ],
      "workflow_execution_statuses": [
        {
          "uuid": "8c0fe59f-4d29-4faa-b4c3-d327e7f3cc52",
          "status": "in_progress",
          "started_at": "2024-02-22T17:31:00Z",
          "completed_at": null,
          "workflow": {
            "uuid": "6f37476a-04c2-46c0-b6d0-e18316959068",
            "code": "enrichment_workflow",
            "labels": {
              "en_US": "Enrichment workflow",
              "fr_FR": "Workflow d'enrichissement"
            }
          },
          "tasks": [
            {
              "uuid": "8f6c2d18-fbd4-4f7e-81df-cb3dc368fe07",
              "status": "in_progress",
              "created_at": "2024-02-22T17:31:00Z",
              "step": {
                "uuid": "f626d0e5-84a5-41fc-8215-65508c253edb",
                "code": "review_step",
                "labels": {
                  "en_US": "Marketing review",
                  "fr_FR": "Revue marketing"
                }
              }
            }
          ]
        },
        {
          "uuid": "59169984-6d6c-4fa7-b925-68b8e9d31ddb",
          "status": "completed",
          "started_at": "2024-02-22T17:31:00Z",
          "completed_at": "2024-02-22T17:31:00Z",
          "workflow": {
            "uuid": "b69ee158-a421-4680-bec0-a71bc73b8e31",
            "code": "compliance_workflow",
            "labels": {}
          },
          "tasks": []
        }
      ]
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
No content to return
Means that the update was successful
Headers
Location • URI of the updated resource
Body Format application/json
Ø
Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Delete a product
This endpoint allows you to delete a given product. In the Enterprise Edition, since the 2.0, permissions based on your user groups are applied to the product you try to delete.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
delete /api/rest/v1/products/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
No content to return
Means that the deletion was successful
Body Format application/json
Ø
Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Product media file
                                    
                            
                            
                                Get a list of product media files
This endpoint allows you to get a list of media files that are used as attribute values in products or product models.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/media-files
Path parameters
Ø
Query parameters
                                                                page
                                                                (integer  ,
                                                                    1
                                                                     by default )
                                                                • Number of the page to retrieve when using the `page` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                limit
                                                                (integer  ,
                                                                    10
                                                                     by default )
                                                                    
                                                                • Number of results by page, see Pagination section
                                                            
                                                                with_count
                                                                (boolean )
                                                                • Return the count of items in the response. Be carefull with that, on a big catalog, it can decrease performance in a significative way
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return media files paginated
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        self (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the current page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    first (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the first page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    previous (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the previous page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    next (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the next page of resources
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            current_page
                                                                                            (integer)
                                                                                                                                                                                        • Current page number
                                                                                        
                                                                                            _embedded
                                                                                            (object)
                                                                                            : { 
                                                                                                        items (array )
                                                                                                                                                                                                         : [ 
         { 
                                                                                                                              _links (object)
                                                                                                                     : { 
                                                                                                                                          self (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI to get the metadata of the media file
                                                                                                                                
              }  
 
                                                                                                                                          download (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI to download the binaries of the media file
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              code (string)
                                                                                                                                                                                                                                        • Media file code
                                                                                                                              original_filename (string)
                                                                                                                                                                                                                                        • Original filename of the media file
                                                                                                                              mime_type (string)
                                                                                                                                                                                                                                        • Mime type of the media file
                                                                                                                              size (integer)
                                                                                                                                                                                                                                        • Size of the media file
                                                                                                                              extension (string)
                                                                                                                                                                                                                                        • Extension of the media file
                                                                                                                 } 
     ] 
                                                                                                    
                                                                                                
   }
                                                                                
}
Example
{
      "_links": {
        "self": {
          "href": "https://demo.akeneo.com/api/rest/v1/media-files?page=2&limit=4"
        },
        "first": {
          "href": "https://demo.akeneo.com/api/rest/v1/media-files?page=1&limit=4"
        },
        "previous": {
          "href": "https://demo.akeneo.com/api/rest/v1/media-files?page=1&limit=4"
        },
        "next": {
          "href": "https://demo.akeneo.com/api/rest/v1/media-files?page=2&limit=4"
        }
      },
      "current_page": 2,
      "_embedded": {
        "items": [
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/media-files/7/5/8/e/758e39d48ea7b42a55091434fd3d8b6cf3189b7f_10806799_1356.jpg"
              },
              "download": {
                "href": "https://demo.akeneo.com/api/rest/v1/media-files/7/5/8/e/758e39d48ea7b42a55091434fd3d8b6cf3189b7f_10806799_1356.jpg/download"
              }
            },
            "code": "7/5/8/e/758e39d48ea7b42a55091434fd3d8b6cf3189b7f_10806799_1356.jpg",
            "original_filename": "10806799-1356.jpg",
            "mime_type": "image/jpeg",
            "size": 16070,
            "extension": "jpg"
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/media-files/d/0/3/2/d032a92d994df3ef67ee6746b7b7a795c2964e7c_10734346_1480.jpg"
              },
              "download": {
                "href": "https://demo.akeneo.com/api/rest/v1/media-files/d/0/3/2/d032a92d994df3ef67ee6746b7b7a795c2964e7c_10734346_1480.jpg/download"
              }
            },
            "code": "d/0/3/2/d032a92d994df3ef67ee6746b7b7a795c2964e7c_10734346_1480.jpg",
            "original_filename": "10734346-1480.jpg",
            "mime_type": "image/jpeg",
            "size": 16454,
            "extension": "jpg"
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/media-files/5/1/d/8/51d81dc778ba1501a8f998f3ab5797569f3b9e25_12431976_8797.jpg"
              },
              "download": {
                "href": "https://demo.akeneo.com/api/rest/v1/media-files/5/1/d/8/51d81dc778ba1501a8f998f3ab5797569f3b9e25_12431976_8797.jpg/download"
              }
            },
            "code": "5/1/d/8/51d81dc778ba1501a8f998f3ab5797569f3b9e25_12431976_8797.jpg",
            "original_filename": "12431976-8797.jpg",
            "mime_type": "image/jpeg",
            "size": 19725,
            "extension": "jpg"
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/media-files/0/c/b/0/0cb0c0e115dedba676f8d1ad8343e6207ab54c7b_107406_9841.jpg"
              },
              "download": {
                "href": "https://demo.akeneo.com/api/rest/v1/media-files/0/c/b/0/0cb0c0e115dedba676f8d1ad8343e6207ab54c7b_107406_9841.jpg/download"
              }
            },
            "code": "0/c/b/0/0cb0c0e115dedba676f8d1ad8343e6207ab54c7b_107406_9841.jpg",
            "original_filename": "107406-9841.jpg",
            "mime_type": "image/jpeg",
            "size": 17639,
            "extension": "jpg"
          }
        ]
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Create a new product media file
This endpoint allows you to create a new media file and associate it to an attribute value of a given product or product model.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
post /api/rest/v1/media-files
Path parameters
Ø
Query parameters
Ø
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                    Content-type
                                                                      
                                                                    • Equal to 'multipart/form-data', no other value allowed
                                                                
Body
Given as form-data
                                                                                product
                                                                                (string )
                                                                                • The product to which the media file will be associated. It is a JSON string that follows this format '{"identifier":"product_identifier", "attribute":"attribute_code", "scope":"channel_code","locale":"locale_code"}'. You have to either use this field or the `product_model` field, but not both at the same time.
                                                                            
                                                                                product_model
                                                                                (string )
                                                                                • The product model to which the media file will be associated. It is a JSON string that follows this format '{"code":"product_model_code", "attribute":"attribute_code", "scope":"channel_code","locale":"locale_code"}'. You have to either use this field or the `product` field, but not both at the same time.
                                                                            
RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `multipart/form-data`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘multipart/form-data’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Get a product media file
This endpoint allows you to get the information about a given media file that is used as an attribute value of a product or a product model.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/media-files/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
OK
Returns the content of the media file in JSON standard format
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        download (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI to download the binaries of the media file
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            code
                                                                                            (string)
                                                                                                                                                                                        • Media file code
                                                                                        
                                                                                            original_filename
                                                                                            (string)
                                                                                                                                                                                        • Original filename of the media file
                                                                                        
                                                                                            mime_type
                                                                                            (string)
                                                                                                                                                                                        • Mime type of the media file
                                                                                        
                                                                                            size
                                                                                            (integer)
                                                                                                                                                                                        • Size of the media file
                                                                                        
                                                                                            extension
                                                                                            (string)
                                                                                                                                                                                        • Extension of the media file
                                                                                
}
Example
{
      "_links": {
        "download": {
          "href": "https://demo.akeneo.com/api/rest/v1/media-files/7/5/8/e/758e39d48ea7b42a55091434fd3d8b6cf3189b7f_10806799_1356.jpg/download"
        }
      },
      "code": "7/5/8/e/758e39d48ea7b42a55091434fd3d8b6cf3189b7f_10806799_1356.jpg",
      "original_filename": "10806799-1356.jpg",
      "mime_type": "image/jpeg",
      "size": 16070,
      "extension": "jpg"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Download a product media file
This endpoint allows you to download a given media file that is used as an attribute value of a product or a product model.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/media-files/{code}/download
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Body
Ø
RESPONSES
OK
Returns the binary of the media file
Body Format Mime-type of the media file
Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Catalog structure
Family
                                    
                            
                            
                                Get list of families
This endpoint allows you to get a list of families. Families are paginated and sorted by code.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/families
Path parameters
Ø
Query parameters
                                                                search
                                                                (string )
                                                                • Filter families, for more details see the Filters section.
                                                            
                                                                page
                                                                (integer  ,
                                                                    1
                                                                     by default )
                                                                • Number of the page to retrieve when using the `page` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                limit
                                                                (integer  ,
                                                                    10
                                                                     by default )
                                                                    
                                                                • Number of results by page, see Pagination section
                                                            
                                                                with_count
                                                                (boolean )
                                                                • Return the count of items in the response. Be carefull with that, on a big catalog, it can decrease performance in a significative way
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return families paginated
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        self (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the current page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    first (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the first page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    previous (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the previous page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    next (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the next page of resources
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            current_page
                                                                                            (integer)
                                                                                                                                                                                        • Current page number
                                                                                        
                                                                                            _embedded
                                                                                            (object)
                                                                                            : { 
                                                                                                        items (array )
                                                                                                                                                                                                         : [ 
         { 
                                                                                                                              _links (object)
                                                                                                                     : { 
                                                                                                                                          self (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI of the resource
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              code (string)
                                                                                                                                                                                                                                        • Family code
                                                                                                                              attribute_as_label (string)
                                                                                                                                                                                                                                        • Attribute code used as label
                                                                                                                              attributes (array [string ])
                                                                                                                                                                                                                                        • Attributes codes that compose the family
                                                                                                                              attribute_requirements (object)
                                                                                                                     : { 
                                                                                                                                          channelCode (array [string ])
                                                                                                                                                                                                                                                        • 
                                                                                                                                                                                                                                                                        • Attributes codes of the family that are required for the completeness calculation for the channel `channelCode`
                                                                                                                        
           } 
                                                                                                                              labels (object)
                                                                                                                     : { 
                                                                                                                                          localeCode (string)
                                                                                                                                                                                                                                                        • Family label for the locale `localeCode`
                                                                                                                                    
                                                                                                                        
           } 
                                                                                                                 } 
     ] 
                                                                                                    
                                                                                                
   }
                                                                                
}
Example
{
      "_links": {
        "self": {
          "href": "https://demo.akeneo.com/api/rest/v1/families?page=2&limit=2"
        },
        "first": {
          "href": "https://demo.akeneo.com/api/rest/v1/families?page=1&limit=2"
        },
        "previous": {
          "href": "https://demo.akeneo.com/api/rest/v1/families?page=1&limit=2"
        },
        "next": {
          "href": "https://demo.akeneo.com/api/rest/v1/families?page=3&limit=2"
        }
      },
      "current_page": 2,
      "_embedded": {
        "items": [
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/families/tshirt"
              }
            },
            "code": "tshirt",
            "attributes": [
              "sku",
              "name",
              "description",
              "price",
              "size",
              "color",
              "picture"
            ],
            "attribute_as_label": "name",
            "attribute_as_image": "picture",
            "attribute_requirements": {
              "ecommerce": [
                "sku",
                "name",
                "description",
                "price",
                "size",
                "color"
              ],
              "tablet": [
                "sku",
                "name",
                "description",
                "price"
              ]
            },
            "labels": {
              "en_US": "Tshirt",
              "fr_FR": "Tshirt"
            },
            "parent": null
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/families/caps"
              }
            },
            "code": "caps",
            "attributes": [
              "sku",
              "name",
              "description",
              "price",
              "color",
              "picture"
            ],
            "attribute_as_label": "name",
            "attribute_as_image": "picture",
            "attribute_requirements": {
              "ecommerce": [
                "sku",
                "name",
                "description",
                "price",
                "color"
              ],
              "tablet": [
                "sku",
                "name",
                "description",
                "price"
              ]
            },
            "labels": {
              "en_US": "Caps",
              "fr_FR": "Casquettes"
            },
            "parent": "accessories"
          }
        ]
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Create a new family
This endpoint allows you to create a new family.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
post /api/rest/v1/families
Path parameters
Ø
Query parameters
Ø
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
{
                                                                                    attribute_as_label
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute code used as label
                                                                                
                                                                                    attributes
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Attributes codes that compose the family
                                                                                
                                                                                    attribute_requirements
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            channelCode : array
                                                                                            [
                                                                                                string
                                                                                            ]
                                                                                            }
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attributes codes of the family that are required for the completeness calculation for each channel
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Family labels for each locale
                                                                                
}
Example
{
      "code": "caps",
      "attributes": [
        "sku",
        "name",
        "description",
        "price",
        "color",
        "picture"
      ],
      "attribute_as_label": "name",
      "attribute_as_image": "picture",
      "attribute_requirements": {
        "ecommerce": [
          "sku",
          "name",
          "description",
          "price",
          "color"
        ],
        "tablet": [
          "sku",
          "name",
          "description",
          "price"
        ]
      },
      "labels": {
        "en_US": "Caps",
        "fr_FR": "Casquettes"
      },
      "parent": "accessories"
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Update/create several families
This endpoint allows you to update and/or create several families at once.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/families
Path parameters
Ø
Query parameters
Ø
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                Content-type
                                                                  
                                                                • Equal to 'application/vnd.akeneo.collection+json', no other value allowed
                                                            
Body
Contains several lines, each line is a family in JSON standard format
{
                                                                                    attribute_as_label
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute code used as label
                                                                                
                                                                                    attributes
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Attributes codes that compose the family
                                                                                
                                                                                    attribute_requirements
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            channelCode : array
                                                                                            [
                                                                                                string
                                                                                            ]
                                                                                            }
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attributes codes of the family that are required for the completeness calculation for each channel
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Family labels for each locale
                                                                                
}
Example
{"code":"tshirt","attributes":["description","size"]}
    {"code":"cap","attribute_as_label":"descripion"}
    {"code":"mug","attributes":["description","short_description"]}
                                                                    RESPONSES
OK
Returns a plain text response whose lines are JSON containing the status of each update or creation
Body Format application/json
{
line
                                                                                     (integer ) 
                                                                                                                                                                            • Line number
                                                                                    
identifier
                                                                                     (string ) 
                                                                                                                                                                            • Resource identifier, only filled when the resource is a product
                                                                                    
code
                                                                                     (string ) 
                                                                                                                                                                            • Resource code, only filled when the resource is not a product
                                                                                    
status_code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code, see Client errors to understand the meaning of each code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{"line":1,"code":"tshirt","status_code":201}
    {"line":2,"code":"cap","status_code":422,"message":"Attribute \"descripion\" does not exist."}
    {"line":3,"code":"mug","status_code":204}Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Request Entity Too Large
There are too many resources to process (max 100) or the line of JSON is too long (max 1 000 000 characters)
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 413,
      "message": "Too many resources to process, 100 is the maximum allowed."
    }Unsupported Media type
The `Content-type` header has to be `application/vnd.akeneo.collection+json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/vnd.akeneo.collection+json’ is allowed."
    }Get a family
This endpoint allows you to get the information about a given family.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/families/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
OK
Returns the content of the family in JSON standard format
Body Format application/json
Follow the standard format of the entity
{
code
                                                                                     (string ) 
                                                                                                                                                                            • Family code
                                                                                    
attribute_as_label
                                                                                     (string ) 
                                                                                                                                                                            • Attribute code used as label
                                                                                    
attributes
                                                                                     (array  [string] ) 
                                                                                                                                                                                • Attributes codes that compose the family
                                                                                    
attribute_requirements
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            channelCode
                                                                                            
                                                                                                (array
                                                                                                    [string]
                                                                                                )
                                                                                            
                                                                                                                                                                                                        • Attributes codes of the family that are required for the completeness calculation for the channel `channelCode`
                                                                                        
   }
                                                                                    
labels
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            localeCode
                                                                                            
                                                                                                (string
    )
                                                                                            
                                                                                                    • Family label for the locale `localeCode`
                                                                                        
   }
                                                                                
}
Example
{
      "code": "caps",
      "attributes": [
        "sku",
        "name",
        "description",
        "price",
        "color",
        "picture"
      ],
      "attribute_as_label": "name",
      "attribute_as_image": "picture",
      "attribute_requirements": {
        "ecommerce": [
          "sku",
          "name",
          "description",
          "price",
          "color"
        ],
        "tablet": [
          "sku",
          "name",
          "description",
          "price"
        ]
      },
      "labels": {
        "en_US": "Caps",
        "fr_FR": "Casquettes"
      },
      "parent": "accessories"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Update/create a family
This endpoint allows you to update a given family. Know more about Update behavior. Note that if no family exists for the given code, it creates it.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/families/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
{
                                                                                    attribute_as_label
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute code used as label
                                                                                
                                                                                    attributes
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • Attributes codes that compose the family
                                                                                
                                                                                    attribute_requirements
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            channelCode : array
                                                                                            [
                                                                                                string
                                                                                            ]
                                                                                            }
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attributes codes of the family that are required for the completeness calculation for each channel
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Family labels for each locale
                                                                                
}
Example
{
      "code": "caps",
      "attributes": [
        "sku",
        "name",
        "description",
        "price",
        "color",
        "picture"
      ],
      "attribute_as_label": "name",
      "attribute_as_image": "picture",
      "attribute_requirements": {
        "ecommerce": [
          "sku",
          "name",
          "description",
          "price",
          "color"
        ],
        "tablet": [
          "sku",
          "name",
          "description",
          "price"
        ]
      },
      "labels": {
        "en_US": "Caps",
        "fr_FR": "Casquettes"
      },
      "parent": "accessories"
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
No content to return
Means that the update was successful
Headers
Location • URI of the updated resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Attribute
                                    
                            
                            
                                Get list of attributes
This endpoint allows you to get a list of attributes. Attributes are paginated and sorted by code.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/attributes
Path parameters
Ø
Query parameters
                                                                search
                                                                (string )
                                                                • Filter attributes, for more details see the Filters section.
                                                            
                                                                page
                                                                (integer  ,
                                                                    1
                                                                     by default )
                                                                • Number of the page to retrieve when using the `page` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                limit
                                                                (integer  ,
                                                                    10
                                                                     by default )
                                                                    
                                                                • Number of results by page, see Pagination section
                                                            
                                                                with_count
                                                                (boolean )
                                                                • Return the count of items in the response. Be carefull with that, on a big catalog, it can decrease performance in a significative way
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return attributes paginated
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        self (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the current page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    first (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the first page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    previous (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the previous page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    next (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the next page of resources
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            current_page
                                                                                            (integer)
                                                                                                                                                                                        • Current page number
                                                                                        
                                                                                            _embedded
                                                                                            (object)
                                                                                            : { 
                                                                                                        items (array )
                                                                                                                                                                                                         : [ 
         { 
                                                                                                                              _links (object)
                                                                                                                     : { 
                                                                                                                                          self (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI of the resource
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              code (string)
                                                                                                                                                                                                                                        • Attribute code
                                                                                                                              type (string)
                                                                                                                                                                                                                                        • Attribute type. See type section for more details.
                                                                                                                              labels (object)
                                                                                                                     : { 
                                                                                                                                          localeCode (string)
                                                                                                                                                                                                                                                        • Attribute label for the locale `localeCode`
                                                                                                                                    
                                                                                                                        
           } 
                                                                                                                              group (string)
                                                                                                                                                                                                                                        • Attribute group
                                                                                                                              group_labels (object)
                                                                                                                     : { 
                                                                                                                                          localeCode (string)
                                                                                                                                                                                                                                                        • Group label for the locale `localeCode`
                                                                                                                                    
                                                                                                                        
           } 
                                                                                                                              sort_order (integer)
                                                                                                                                                                                                                                        • Order of the attribute in its group
                                                                                                                              localizable (boolean)
                                                                                                                                                                                                                                        • Whether the attribute is localizable, i.e. can have one value by locale
                                                                                                                              scopable (boolean)
                                                                                                                                                                                                                                        • Whether the attribute is scopable, i.e. can have one value by channel
                                                                                                                              available_locales (array [string ])
                                                                                                                                                                                                                                        • To make the attribute locale specfic, specify here for which locales it is specific
                                                                                                                              unique (boolean)
                                                                                                                                                                                                                                        • Whether two values for the attribute cannot be the same
                                                                                                                              useable_as_grid_filter (boolean)
                                                                                                                                                                                                                                        • Whether the attribute can be used as a filter for the product grid in the PIM user interface
                                                                                                                              max_characters (integer)
                                                                                                                                                                                                                                        • Number maximum of characters allowed for the value of the attribute when the attribute type is `pim_catalog_text`, `pim_catalog_textarea` or `pim_catalog_identifier`
                                                                                                                              validation_rule (string)
                                                                                                                                                                                                                                        • Validation rule type used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                                                              validation_regexp (string)
                                                                                                                                                                                                                                        • Regexp expression used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                                                              wysiwyg_enabled (boolean)
                                                                                                                                                                                                                                        • Whether the WYSIWYG interface is shown when the attribute type is `pim_catalog_textarea`
                                                                                                                              number_min (string)
                                                                                                                                                                                                                                        • Minimum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                                                              number_max (string)
                                                                                                                                                                                                                                        • Maximum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                                                              decimals_allowed (boolean)
                                                                                                                                                                                                                                        • Whether decimals are allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                                                              negative_allowed (boolean)
                                                                                                                                                                                                                                        • Whether negative values are allowed when the attribute type is `pim_catalog_metric` or `pim_catalog_number`
                                                                                                                              metric_family (string)
                                                                                                                                                                                                                                        • Metric family when the attribute type is `pim_catalog_metric`
                                                                                                                              default_metric_unit (string)
                                                                                                                                                                                                                                        • Default metric unit when the attribute type is `pim_catalog_metric`
                                                                                                                              date_min (string)
                                                                                                                                                                                                                                        • Minimum date allowed when the attribute type is `pim_catalog_date`
                                                                                                                              date_max (string)
                                                                                                                                                                                                                                        • Maximum date allowed when the attribute type is `pim_catalog_date`
                                                                                                                              allowed_extensions (array [string ])
                                                                                                                                                                                                                                        • Extensions allowed when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                                                              max_file_size (string)
                                                                                                                                                                                                                                        • Max file size in MB when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                                                              reference_data_name (string)
                                                                                                                                                                                                                                        • Reference entity code when the attribute type is `akeneo_reference_entity` or `akeneo_reference_entity_collection` OR Asset family code when the attribute type is `pim_catalog_asset_collection`
                                                                                                                              table_configuration (array [object ])
                                                                                                                                                                                                                                        • Configuration of the Table attribute (columns)
                                                                                                                              is_main_identifier (boolean)
                                                                                                                                                                                                                                        • Is this attribute main identifier when attribute type is `pim_catalog_identifier`
                                                                                                                              is_mandatory (boolean)
                                                                                                                                                                                                                                        • This attribute must be enriched from the moment a product is created. It will be mandatory across all families.
                                                                                                                              decimal_places_strategy (string)
                                                                                                                                                                                                                                        • Defines the decimal places strategy. Available options are `round`, `forbid` and `trim`.
                                                                                                                              decimal_places (number)
                                                                                                                                                                                                                                        • Defines the number of decimal places when decimal places strategy is `round` or `forbid`.
                                                                                                                 } 
     ] 
                                                                                                    
                                                                                                
   }
                                                                                
}
Example
{
      "_links": {
        "self": {
          "href": "https://demo.akeneo.com/api/rest/v1/attributes?page=3&limit=3"
        },
        "first": {
          "href": "https://demo.akeneo.com/api/rest/v1/attributes?page=1&limit=3"
        },
        "previous": {
          "href": "https://demo.akeneo.com/api/rest/v1/attributes?page=2&limit=3"
        },
        "next": {
          "href": "https://demo.akeneo.com/api/rest/v1/attributes?page=4&limit=3"
        }
      },
      "current_page": 3,
      "_embedded": {
        "items": [
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/attributes/sku"
              }
            },
            "code": "sku",
            "type": "pim_catalog_identifier",
            "group": "other",
            "group_labels": {
              "en_US": "Other",
              "fr_FR": "Autre"
            },
            "unique": true,
            "useable_as_grid_filter": true,
            "allowed_extensions": [],
            "metric_family": null,
            "default_metric_unit": null,
            "reference_data_name": null,
            "available_locales": [],
            "max_characters": null,
            "validation_rule": null,
            "validation_regexp": null,
            "wysiwyg_enabled": false,
            "number_min": null,
            "number_max": null,
            "decimals_allowed": false,
            "negative_allowed": false,
            "date_min": null,
            "date_max": null,
            "max_file_size": null,
            "minimum_input_length": null,
            "sort_order": 1,
            "localizable": false,
            "scopable": false,
            "default_value": null,
            "labels": {
              "en_US": "Identifier",
              "fr_FR": "Identifiant"
            },
            "is_mandatory": false,
            "decimal_places_strategy": null,
            "decimal_places": null
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/attributes/release_date"
              }
            },
            "code": "release_date",
            "type": "pim_catalog_date",
            "group": "marketing",
            "unique": false,
            "useable_as_grid_filter": true,
            "allowed_extensions": [],
            "metric_family": null,
            "default_metric_unit": null,
            "reference_data_name": null,
            "available_locales": [],
            "max_characters": null,
            "validation_rule": null,
            "validation_regexp": null,
            "wysiwyg_enabled": false,
            "number_min": null,
            "number_max": null,
            "decimals_allowed": false,
            "negative_allowed": false,
            "date_min": "2017-06-28T08:00:00",
            "date_max": "2017-08-08T22:00:00",
            "max_file_size": null,
            "minimum_input_length": null,
            "sort_order": 1,
            "localizable": false,
            "scopable": false,
            "default_value": null,
            "labels": {
              "en_US": "Sale date",
              "fr_FR": "Date des soldes"
            },
            "is_mandatory": false,
            "decimal_places_strategy": null,
            "decimal_places": null
          },
          {
            "_links": {
              "self": {
                "href": "http://localhost:8080/api/rest/v1/attributes/food_composition"
              }
            },
            "code": "food_composition",
            "type": "pim_catalog_table",
            "group": "product",
            "unique": false,
            "useable_as_grid_filter": false,
            "allowed_extensions": [],
            "metric_family": null,
            "default_metric_unit": null,
            "reference_data_name": null,
            "available_locales": [],
            "max_characters": null,
            "validation_rule": null,
            "validation_regexp": null,
            "wysiwyg_enabled": null,
            "number_min": null,
            "number_max": null,
            "decimals_allowed": null,
            "negative_allowed": null,
            "date_min": null,
            "date_max": null,
            "max_file_size": null,
            "minimum_input_length": null,
            "sort_order": 0,
            "localizable": false,
            "scopable": false,
            "labels": {
              "en_US": "Composition",
              "fr_FR": "Composition"
            },
            "is_mandatory": false,
            "decimal_places_strategy": null,
            "decimal_places": null,
            "guidelines": {},
            "auto_option_sorting": null,
            "is_read_only": null,
            "default_value": null,
            "table_configuration": [
              {
                "code": "ingredient",
                "data_type": "select",
                "labels": {
                  "en_US": "Ingredient",
                  "fr_FR": "Ingrédient"
                },
                "validations": {},
                "is_required_for_completeness": true
              },
              {
                "code": "percentage",
                "data_type": "number",
                "labels": {
                  "en_US": "%",
                  "fr_FR": "%"
                },
                "validations": {
                  "max": 100,
                  "min": 0,
                  "decimals_allowed": true
                },
                "is_required_for_completeness": true
              },
              {
                "code": "allergen",
                "data_type": "boolean",
                "labels": {
                  "en_US": "Allergen",
                  "fr_FR": "Allergène"
                },
                "validations": {},
                "is_required_for_completeness": false
              }
            ]
          }
        ]
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Create a new attribute
This endpoint allows you to create a new attribute.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
post /api/rest/v1/attributes
Path parameters
Ø
Query parameters
Ø
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
{
                                                                                    code
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                        • Attribute code
                                                                                
                                                                                    type
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute type. See type section for more details.
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute labels for each locale
                                                                                
                                                                                    group
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute group
                                                                                
                                                                                    sort_order
                                                                                    
                                                                                        (integer
                                                                                        
                                                                                    ,
                                                                                        0
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Order of the attribute in its group
                                                                                
                                                                                    localizable
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        false
                                                                                        by default)
                                                                                        • Whether the attribute is localizable, i.e. can have one value by locale
                                                                                
                                                                                    scopable
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        false
                                                                                        by default)
                                                                                        • Whether the attribute is scopable, i.e. can have one value by channel
                                                                                
                                                                                    available_locales
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • To make the attribute locale specfic, specify here for which locales it is specific
                                                                                
                                                                                    unique
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                        • Whether two values for the attribute cannot be the same
                                                                                
                                                                                    useable_as_grid_filter
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                        • Whether the attribute can be used as a filter for the product grid in the PIM user interface
                                                                                
                                                                                    max_characters
                                                                                    
                                                                                        (integer
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Number maximum of characters allowed for the value of the attribute when the attribute type is `pim_catalog_text`, `pim_catalog_textarea` or `pim_catalog_identifier`
                                                                                
                                                                                    validation_rule
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Validation rule type used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                
                                                                                    validation_regexp
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Regexp expression used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                
                                                                                    wysiwyg_enabled
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether the WYSIWYG interface is shown when the attribute type is `pim_catalog_textarea`
                                                                                
                                                                                    number_min
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Minimum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    number_max
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Maximum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    decimals_allowed
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether decimals are allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    negative_allowed
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether negative values are allowed when the attribute type is `pim_catalog_metric` or `pim_catalog_number`
                                                                                
                                                                                    metric_family
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Metric family when the attribute type is `pim_catalog_metric`
                                                                                
                                                                                    default_metric_unit
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Default metric unit when the attribute type is `pim_catalog_metric`
                                                                                
                                                                                    date_min
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Minimum date allowed when the attribute type is `pim_catalog_date`
                                                                                
                                                                                    date_max
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Maximum date allowed when the attribute type is `pim_catalog_date`
                                                                                
                                                                                    allowed_extensions
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                          
                                                                                                                                                                                • Extensions allowed when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                
                                                                                    max_file_size
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Max file size in MB when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                
                                                                                    reference_data_name
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Reference entity code when the attribute type is `akeneo_reference_entity` or `akeneo_reference_entity_collection` OR Asset family code when the attribute type is `pim_catalog_asset_collection`
                                                                                
                                                                                    table_configuration
                                                                                    
                                                                                        (array
                                                                                        [object]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                         : [ 
         { 
                                                                                                           
                                                                                                code
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Column code 
                                                                                                           
                                                                                                data_type
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Column data type 
                                                                                                           
                                                                                                validations
                                                                                                
                                                                                                    (object
    )
                                                                                                
                                                                                                • User defined validation constraints on the cell content 
                                                                                                           
                                                                                                labels
                                                                                                
                                                                                                    (object
    )
                                                                                                
                                                                                                • Column labels for each locale 
                                                                                                           
                                                                                                is_required_for_completeness
                                                                                                
                                                                                                    (boolean
    )
                                                                                                
                                                                                                • Defines if the column should be entirely filled for the attribute to be considered complete 
                                                                                                    } 
     ]
                                                                                
                                                                                    is_main_identifier
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                        • Is this attribute main identifier when attribute type is `pim_catalog_identifier`
                                                                                
                                                                                    is_mandatory
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • This attribute must be enriched from the moment a product is created. It will be mandatory across all families.
                                                                                
                                                                                    decimal_places_strategy
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Defines the decimal places strategy. Available options are `round`, `forbid` and `trim`.
                                                                                
                                                                                    decimal_places
                                                                                    
                                                                                        (number
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Defines the number of decimal places when decimal places strategy is `round` or `forbid`.
                                                                                
}
Example
{
      "code": "release_date",
      "type": "pim_catalog_date",
      "group": "marketing",
      "unique": false,
      "useable_as_grid_filter": true,
      "allowed_extensions": [],
      "metric_family": null,
      "default_metric_unit": null,
      "reference_data_name": null,
      "available_locales": [],
      "max_characters": null,
      "validation_rule": null,
      "validation_regexp": null,
      "wysiwyg_enabled": null,
      "number_min": null,
      "number_max": null,
      "decimals_allowed": null,
      "negative_allowed": null,
      "date_min": "2017-06-28T08:00:00",
      "date_max": "2017-08-08T22:00:00",
      "max_file_size": null,
      "minimum_input_length": null,
      "sort_order": 1,
      "localizable": false,
      "scopable": false,
      "default_value": null,
      "labels": {
        "en_US": "Sale date",
        "fr_FR": "Date des soldes"
      },
      "is_mandatory": false,
      "decimal_places_strategy": null,
      "decimal_places": null,
      "max_items_count": null
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Update/create several attributes
This endpoint allows you to update and/or create several attributes at once.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/attributes
Path parameters
Ø
Query parameters
Ø
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                Content-type
                                                                  
                                                                • Equal to 'application/vnd.akeneo.collection+json', no other value allowed
                                                            
Body
Contains several lines, each line is an attribute in JSON standard format
{
                                                                                    code
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                          
                                                                                        • Attribute code
                                                                                
                                                                                    type
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute type. See type section for more details.
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute labels for each locale
                                                                                
                                                                                    group
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute group
                                                                                
                                                                                    group_labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Group labels for each locale
                                                                                
                                                                                    sort_order
                                                                                    
                                                                                        (integer
                                                                                        
                                                                                    ,
                                                                                        0
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Order of the attribute in its group
                                                                                
                                                                                    localizable
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        false
                                                                                        by default)
                                                                                          
                                                                                        • Whether the attribute is localizable, i.e. can have one value by locale
                                                                                
                                                                                    scopable
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        false
                                                                                        by default)
                                                                                          
                                                                                        • Whether the attribute is scopable, i.e. can have one value by channel
                                                                                
                                                                                    available_locales
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • To make the attribute locale specfic, specify here for which locales it is specific
                                                                                
                                                                                    unique
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether two values for the attribute cannot be the same
                                                                                
                                                                                    useable_as_grid_filter
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                        • Whether the attribute can be used as a filter for the product grid in the PIM user interface
                                                                                
                                                                                    max_characters
                                                                                    
                                                                                        (integer
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Number maximum of characters allowed for the value of the attribute when the attribute type is `pim_catalog_text`, `pim_catalog_textarea` or `pim_catalog_identifier`
                                                                                
                                                                                    validation_rule
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Validation rule type used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                
                                                                                    validation_regexp
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Regexp expression used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                
                                                                                    wysiwyg_enabled
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether the WYSIWYG interface is shown when the attribute type is `pim_catalog_textarea`
                                                                                
                                                                                    number_min
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Minimum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    number_max
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Maximum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    decimals_allowed
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether decimals are allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    negative_allowed
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether negative values are allowed when the attribute type is `pim_catalog_metric` or `pim_catalog_number`
                                                                                
                                                                                    metric_family
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Metric family when the attribute type is `pim_catalog_metric`
                                                                                
                                                                                    default_metric_unit
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Default metric unit when the attribute type is `pim_catalog_metric`
                                                                                
                                                                                    date_min
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Minimum date allowed when the attribute type is `pim_catalog_date`
                                                                                
                                                                                    date_max
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Maximum date allowed when the attribute type is `pim_catalog_date`
                                                                                
                                                                                    allowed_extensions
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                          
                                                                                                                                                                                • Extensions allowed when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                
                                                                                    max_file_size
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Max file size in MB when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                
                                                                                    reference_data_name
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Reference entity code when the attribute type is `akeneo_reference_entity` or `akeneo_reference_entity_collection` OR Asset family code when the attribute type is `pim_catalog_asset_collection`
                                                                                
                                                                                    table_configuration
                                                                                    
                                                                                        (array
                                                                                        [object]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                         : [ 
         { 
                                                                                                           
                                                                                                code
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Column code 
                                                                                                           
                                                                                                data_type
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Column data type 
                                                                                                           
                                                                                                validations
                                                                                                
                                                                                                    (object
    )
                                                                                                
                                                                                                • User defined validation constraints on the cell content 
                                                                                                           
                                                                                                labels
                                                                                                
                                                                                                    (object
    )
                                                                                                
                                                                                                • Column labels for each locale 
                                                                                                           
                                                                                                is_required_for_completeness
                                                                                                
                                                                                                    (boolean
    )
                                                                                                
                                                                                                • Defines if the column should be entirely filled for the attribute to be considered complete 
                                                                                                    } 
     ]
                                                                                
                                                                                    is_main_identifier
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                        • Is this attribute main identifier when attribute type is `pim_catalog_identifier`
                                                                                
                                                                                    is_mandatory
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • This attribute must be enriched from the moment a product is created. It will be mandatory across all families.
                                                                                
                                                                                    decimal_places_strategy
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Defines the decimal places strategy. Available options are `round`, `forbid` and `trim`.
                                                                                
                                                                                    decimal_places
                                                                                    
                                                                                        (number
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Defines the number of decimal places when decimal places strategy is `round` or `forbid`.
                                                                                
}
Example
{"code":"description","useable_as_grid_filter":true}
    {"code":"short_description","group":"marketig"}
    {"code":"release_date","date_min":"2017-06-28T08:00:00"}
                                                                    RESPONSES
OK
Returns a plain text response whose lines are JSON containing the status of each update or creation
Body Format application/json
{
line
                                                                                     (integer ) 
                                                                                                                                                                            • Line number
                                                                                    
identifier
                                                                                     (string ) 
                                                                                                                                                                            • Resource identifier, only filled when the resource is a product
                                                                                    
code
                                                                                     (string ) 
                                                                                                                                                                            • Resource code, only filled when the resource is not a product
                                                                                    
status_code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code, see Client errors to understand the meaning of each code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{"line":1,"code":"description","status_code":201}
    {"line":2,"code":"short_description","status_code":422,"message":"Group \"marketig\" does not exist."}
    {"line":3,"code":"release_date","status_code":204}Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Request Entity Too Large
There are too many resources to process (max 100) or the line of JSON is too long (max 1 000 000 characters)
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 413,
      "message": "Too many resources to process, 100 is the maximum allowed."
    }Unsupported Media type
The `Content-type` header has to be `application/vnd.akeneo.collection+json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/vnd.akeneo.collection+json’ is allowed."
    }Get an attribute
This endpoint allows you to get the information about a given attribute.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/attributes/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
OK
Returns the content of the attribute in JSON standard format
Body Format application/json
Follow the standard format of the entity
{
code
                                                                                     (string ) 
                                                                                                                                                                            • Attribute code
                                                                                    
type
                                                                                     (string ) 
                                                                                                                                                                            • Attribute type. See type section for more details.
                                                                                    
labels
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            localeCode
                                                                                            
                                                                                                (string
    )
                                                                                            
                                                                                                    • Attribute label for the locale `localeCode`
                                                                                        
   }
                                                                                    
group
                                                                                     (string ) 
                                                                                                                                                                            • Attribute group
                                                                                    
group_labels
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            localeCode
                                                                                            
                                                                                                (string
    )
                                                                                            
                                                                                                    • Group label for the locale `localeCode`
                                                                                        
   }
                                                                                    
sort_order
                                                                                     (integer ) 
                                                                                                                                                                            • Order of the attribute in its group
                                                                                    
localizable
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether the attribute is localizable, i.e. can have one value by locale
                                                                                    
scopable
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether the attribute is scopable, i.e. can have one value by channel
                                                                                    
available_locales
                                                                                     (array  [string] ) 
                                                                                                                                                                                • To make the attribute locale specfic, specify here for which locales it is specific
                                                                                    
unique
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether two values for the attribute cannot be the same
                                                                                    
useable_as_grid_filter
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether the attribute can be used as a filter for the product grid in the PIM user interface
                                                                                    
max_characters
                                                                                     (integer ) 
                                                                                                                                                                            • Number maximum of characters allowed for the value of the attribute when the attribute type is `pim_catalog_text`, `pim_catalog_textarea` or `pim_catalog_identifier`
                                                                                    
validation_rule
                                                                                     (string ) 
                                                                                                                                                                            • Validation rule type used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                    
validation_regexp
                                                                                     (string ) 
                                                                                                                                                                            • Regexp expression used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                    
wysiwyg_enabled
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether the WYSIWYG interface is shown when the attribute type is `pim_catalog_textarea`
                                                                                    
number_min
                                                                                     (string ) 
                                                                                                                                                                            • Minimum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                    
number_max
                                                                                     (string ) 
                                                                                                                                                                            • Maximum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                    
decimals_allowed
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether decimals are allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                    
negative_allowed
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether negative values are allowed when the attribute type is `pim_catalog_metric` or `pim_catalog_number`
                                                                                    
metric_family
                                                                                     (string ) 
                                                                                                                                                                            • Metric family when the attribute type is `pim_catalog_metric`
                                                                                    
default_metric_unit
                                                                                     (string ) 
                                                                                                                                                                            • Default metric unit when the attribute type is `pim_catalog_metric`
                                                                                    
date_min
                                                                                     (string ) 
                                                                                                                                                                            • Minimum date allowed when the attribute type is `pim_catalog_date`
                                                                                    
date_max
                                                                                     (string ) 
                                                                                                                                                                            • Maximum date allowed when the attribute type is `pim_catalog_date`
                                                                                    
allowed_extensions
                                                                                     (array  [string] ) 
                                                                                                                                                                                • Extensions allowed when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                    
max_file_size
                                                                                     (string ) 
                                                                                                                                                                            • Max file size in MB when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                    
reference_data_name
                                                                                     (string ) 
                                                                                                                                                                            • Reference entity code when the attribute type is `akeneo_reference_entity` or `akeneo_reference_entity_collection` OR Asset family code when the attribute type is `pim_catalog_asset_collection`
                                                                                    
table_configuration
                                                                                     (array  [object] ) 
                                                                                                                                                                                    : [ 
         { 
                                                                                                                         
                                                                                                                code
                                                                                                                (string)
                                                                                                                • Column code 
                                                                                                                         
                                                                                                                data_type
                                                                                                                (string)
                                                                                                                • Column data type 
                                                                                                                         
                                                                                                                validations
                                                                                                                (object)
                                                                                                                • User defined validation constraints on the cell content 
                                                                                                                         
                                                                                                                labels
                                                                                                                (object)
                                                                                                                • Column labels for each locale 
                                                                                                                         
                                                                                                                is_required_for_completeness
                                                                                                                (boolean)
                                                                                                                • Defines if the column should be entirely filled for the attribute to be considered complete 
                                                                                                                } 
     ]
                                                                                    
is_main_identifier
                                                                                     (boolean ) 
                                                                                                                                                                            • Is this attribute main identifier when attribute type is `pim_catalog_identifier`
                                                                                    
is_mandatory
                                                                                     (boolean ) 
                                                                                                                                                                            • This attribute must be enriched from the moment a product is created. It will be mandatory across all families.
                                                                                    
decimal_places_strategy
                                                                                     (string ) 
                                                                                                                                                                            • Defines the decimal places strategy. Available options are `round`, `forbid` and `trim`.
                                                                                    
decimal_places
                                                                                     (number ) 
                                                                                                                                                                            • Defines the number of decimal places when decimal places strategy is `round` or `forbid`.
                                                                                
}
Example
{
      "code": "release_date",
      "type": "pim_catalog_date",
      "group": "marketing",
      "group_labels": {
        "en_US": "Marketing",
        "fr_FR": "Marketing"
      },
      "unique": false,
      "useable_as_grid_filter": true,
      "allowed_extensions": [],
      "metric_family": null,
      "default_metric_unit": null,
      "reference_data_name": null,
      "available_locales": [],
      "max_characters": null,
      "validation_rule": null,
      "validation_regexp": null,
      "wysiwyg_enabled": null,
      "number_min": null,
      "number_max": null,
      "decimals_allowed": null,
      "negative_allowed": null,
      "date_min": "2017-06-28T08:00:00",
      "date_max": "2017-08-08T22:00:00",
      "max_file_size": null,
      "minimum_input_length": null,
      "sort_order": 1,
      "localizable": false,
      "scopable": false,
      "default_value": null,
      "labels": {
        "en_US": "Sale date",
        "fr_FR": "Date des soldes"
      },
      "is_mandatory": false,
      "decimal_places_strategy": null,
      "decimal_places": null,
      "max_items_count": null
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Update/create an attribute
This endpoint allows you to update a given attribute. Know more about Update behavior. Note that if no attribute exists for the given code, it creates it.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/attributes/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
{
                                                                                    code
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                          
                                                                                        • Attribute code
                                                                                
                                                                                    type
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute type. See type section for more details.
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute labels for each locale
                                                                                
                                                                                    group
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Attribute group
                                                                                
                                                                                    group_labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Group labels for each locale
                                                                                
                                                                                    sort_order
                                                                                    
                                                                                        (integer
                                                                                        
                                                                                    ,
                                                                                        0
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Order of the attribute in its group
                                                                                
                                                                                    localizable
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        false
                                                                                        by default)
                                                                                          
                                                                                        • Whether the attribute is localizable, i.e. can have one value by locale
                                                                                
                                                                                    scopable
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    ,
                                                                                        false
                                                                                        by default)
                                                                                          
                                                                                        • Whether the attribute is scopable, i.e. can have one value by channel
                                                                                
                                                                                    available_locales
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • To make the attribute locale specfic, specify here for which locales it is specific
                                                                                
                                                                                    unique
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether two values for the attribute cannot be the same
                                                                                
                                                                                    useable_as_grid_filter
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                        • Whether the attribute can be used as a filter for the product grid in the PIM user interface
                                                                                
                                                                                    max_characters
                                                                                    
                                                                                        (integer
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Number maximum of characters allowed for the value of the attribute when the attribute type is `pim_catalog_text`, `pim_catalog_textarea` or `pim_catalog_identifier`
                                                                                
                                                                                    validation_rule
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Validation rule type used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                
                                                                                    validation_regexp
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Regexp expression used to validate any attribute value when the attribute type is `pim_catalog_text` or `pim_catalog_identifier`
                                                                                
                                                                                    wysiwyg_enabled
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether the WYSIWYG interface is shown when the attribute type is `pim_catalog_textarea`
                                                                                
                                                                                    number_min
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Minimum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    number_max
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Maximum integer value allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    decimals_allowed
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether decimals are allowed when the attribute type is `pim_catalog_metric`, `pim_catalog_price` or `pim_catalog_number`
                                                                                
                                                                                    negative_allowed
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Whether negative values are allowed when the attribute type is `pim_catalog_metric` or `pim_catalog_number`
                                                                                
                                                                                    metric_family
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Metric family when the attribute type is `pim_catalog_metric`
                                                                                
                                                                                    default_metric_unit
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Default metric unit when the attribute type is `pim_catalog_metric`
                                                                                
                                                                                    date_min
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Minimum date allowed when the attribute type is `pim_catalog_date`
                                                                                
                                                                                    date_max
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Maximum date allowed when the attribute type is `pim_catalog_date`
                                                                                
                                                                                    allowed_extensions
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                          
                                                                                                                                                                                • Extensions allowed when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                
                                                                                    max_file_size
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Max file size in MB when the attribute type is `pim_catalog_file` or `pim_catalog_image`
                                                                                
                                                                                    reference_data_name
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                        • Reference entity code when the attribute type is `akeneo_reference_entity` or `akeneo_reference_entity_collection` OR Asset family code when the attribute type is `pim_catalog_asset_collection`
                                                                                
                                                                                    table_configuration
                                                                                    
                                                                                        (array
                                                                                        [object]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                          
                                                                                         : [ 
         { 
                                                                                                           
                                                                                                code
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Column code 
                                                                                                           
                                                                                                data_type
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Column data type 
                                                                                                           
                                                                                                validations
                                                                                                
                                                                                                    (object
    )
                                                                                                
                                                                                                • User defined validation constraints on the cell content 
                                                                                                           
                                                                                                labels
                                                                                                
                                                                                                    (object
    )
                                                                                                
                                                                                                • Column labels for each locale 
                                                                                                           
                                                                                                is_required_for_completeness
                                                                                                
                                                                                                    (boolean
    )
                                                                                                
                                                                                                • Defines if the column should be entirely filled for the attribute to be considered complete 
                                                                                                    } 
     ]
                                                                                
                                                                                    is_main_identifier
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                        • Is this attribute main identifier when attribute type is `pim_catalog_identifier`
                                                                                
                                                                                    is_mandatory
                                                                                    
                                                                                        (boolean
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • This attribute must be enriched from the moment a product is created. It will be mandatory across all families.
                                                                                
                                                                                    decimal_places_strategy
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Defines the decimal places strategy. Available options are `round`, `forbid` and `trim`.
                                                                                
                                                                                    decimal_places
                                                                                    
                                                                                        (number
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Defines the number of decimal places when decimal places strategy is `round` or `forbid`.
                                                                                
}
Example
{
      "code": "release_date",
      "type": "pim_catalog_date",
      "group": "marketing",
      "group_labels": {
        "en_US": "Marketing",
        "fr_FR": "Marketing"
      },
      "unique": false,
      "useable_as_grid_filter": true,
      "allowed_extensions": [],
      "metric_family": null,
      "default_metric_unit": null,
      "reference_data_name": null,
      "available_locales": [],
      "max_characters": null,
      "validation_rule": null,
      "validation_regexp": null,
      "wysiwyg_enabled": null,
      "number_min": null,
      "number_max": null,
      "decimals_allowed": null,
      "negative_allowed": null,
      "date_min": "2017-06-28T08:00:00",
      "date_max": "2017-08-08T22:00:00",
      "max_file_size": null,
      "minimum_input_length": null,
      "sort_order": 1,
      "localizable": false,
      "scopable": false,
      "default_value": null,
      "labels": {
        "en_US": "Sale date",
        "fr_FR": "Date des soldes"
      },
      "is_mandatory": false,
      "decimal_places_strategy": null,
      "decimal_places": null,
      "max_items_count": null
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
No content to return
Means that the update was successful
Headers
Location • URI of the updated resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Attribute option
                                    
                            
                            
                                Get list of attribute options
This endpoint allows you to get a list of attribute options. Attribute options are paginated and sorted by code.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/attributes/{attribute_code}/options
Query parameters
                                                                page
                                                                (integer  ,
                                                                    1
                                                                     by default )
                                                                • Number of the page to retrieve when using the `page` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                limit
                                                                (integer  ,
                                                                    10
                                                                     by default )
                                                                    
                                                                • Number of results by page, see Pagination section
                                                            
                                                                with_count
                                                                (boolean )
                                                                • Return the count of items in the response. Be carefull with that, on a big catalog, it can decrease performance in a significative way
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return attribute options paginated
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        self (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the current page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    first (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the first page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    previous (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the previous page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    next (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the next page of resources
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            current_page
                                                                                            (integer)
                                                                                                                                                                                        • Current page number
                                                                                        
                                                                                            _embedded
                                                                                            (object)
                                                                                            : { 
                                                                                                        items (array )
                                                                                                                                                                                                         : [ 
         { 
                                                                                                                              _links (object)
                                                                                                                     : { 
                                                                                                                                          self (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI of the resource
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              code (string)
                                                                                                                                                                                                                                        • Code of option
                                                                                                                              attribute (string)
                                                                                                                                                                                                                                        • Code of attribute related to the attribute option
                                                                                                                              sort_order (integer)
                                                                                                                                                                                                                                        • Order of attribute option
                                                                                                                              labels (object)
                                                                                                                     : { 
                                                                                                                                          localeCode (string)
                                                                                                                                                                                                                                                        • Attribute option label for the locale `localeCode`
                                                                                                                                    
                                                                                                                        
           } 
                                                                                                                 } 
     ] 
                                                                                                    
                                                                                                
   }
                                                                                
}
Example
{
      "_links": {
        "self": {
          "href": "https://demo.akeneo.com/api/rest/v1/attributes/color/options?page=3&limit=3"
        },
        "first": {
          "href": "https://demo.akeneo.com/api/rest/v1/attributes/color/options?page=1&limit=3"
        },
        "previous": {
          "href": "https://demo.akeneo.com/api/rest/v1/attributes/color/options?page=2&limit=3"
        },
        "next": {
          "href": "https://demo.akeneo.com/api/rest/v1/attributes/color/options?page=4&limit=3"
        }
      },
      "current_page": 3,
      "_embedded": {
        "items": [
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/attributes/color/options/red"
              }
            },
            "code": "red",
            "attribute": "a_simple_select",
            "sort_order": 1,
            "labels": {
              "en_US": "Red",
              "fr_FR": "Rouge"
            }
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/attributes/color/options/black"
              }
            },
            "code": "black",
            "attribute": "a_simple_select",
            "sort_order": 2,
            "labels": {
              "en_US": "Black",
              "fr_FR": "Noir"
            }
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/attributes/color/options/purple"
              }
            },
            "code": "purple",
            "attribute": "a_simple_select",
            "sort_order": 3,
            "labels": {
              "en_US": "Purple",
              "fr_FR": "Violet"
            }
          }
        ]
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Create a new attribute option
This endpoint allows you to create a new attribute option.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
post /api/rest/v1/attributes/{attribute_code}/options
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
Example
{
      "code": "black",
      "attribute": "a_simple_select",
      "sort_order": 2,
      "labels": {
        "en_US": "Black",
        "fr_FR": "Noir"
      }
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Get an attribute option
This endpoint allows you to get the information about a given attribute option.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/attributes/{attribute_code}/options/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
OK
Returns the content of the attribute option in JSON standard format
Body Format application/json
Follow the standard format of the entity
{
code
                                                                                     (string ) 
                                                                                                                                                                            • Code of option
                                                                                    
attribute
                                                                                     (string ) 
                                                                                                                                                                            • Code of attribute related to the attribute option
                                                                                    
sort_order
                                                                                     (integer ) 
                                                                                                                                                                            • Order of attribute option
                                                                                    
labels
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            localeCode
                                                                                            
                                                                                                (string
    )
                                                                                            
                                                                                                    • Attribute option label for the locale `localeCode`
                                                                                        
   }
                                                                                
}
Example
{
      "code": "black",
      "attribute": "a_simple_select",
      "sort_order": 2,
      "labels": {
        "en_US": "Black",
        "fr_FR": "Noir"
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Update/create an attribute option
This endpoint allows you to update a given attribute option. Know more about Update behavior. Note that if no attribute option exists for the given code, it creates it. Please note that this endpoint applies a rate limit of 3 concurrent API requests per second.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/attributes/{attribute_code}/options/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
Example
{
      "code": "black",
      "attribute": "a_simple_select",
      "sort_order": 2,
      "labels": {
        "en_US": "Black",
        "fr_FR": "Noir"
      }
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
No content to return
Means that the update was successful
Headers
Location • URI of the updated resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Too many requests
There are too many requests on this endpoint
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 429,
      "message": "You have exceeded the limit of API requests per second."
    }Category
                                    
                            
                            
                                Get list of categories
This endpoint allows you to get a list of categories. Categories are paginated and sorted by `root/left`.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/categories
Path parameters
Ø
Query parameters
                                                                search
                                                                (string )
                                                                • Filter categories, for more details see the Filters section.
                                                            
                                                                page
                                                                (integer  ,
                                                                    1
                                                                     by default )
                                                                • Number of the page to retrieve when using the `page` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                limit
                                                                (integer  ,
                                                                    10
                                                                     by default )
                                                                    
                                                                • Number of results by page, see Pagination section
                                                            
                                                                with_count
                                                                (boolean )
                                                                • Return the count of items in the response. Be carefull with that, on a big catalog, it can decrease performance in a significative way
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return categories paginated
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        self (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the current page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    first (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the first page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    previous (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the previous page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    next (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the next page of resources
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            current_page
                                                                                            (integer)
                                                                                                                                                                                        • Current page number
                                                                                        
                                                                                            _embedded
                                                                                            (object)
                                                                                            : { 
                                                                                                        items (array )
                                                                                                                                                                                                         : [ 
         { 
                                                                                                                              _links (object)
                                                                                                                     : { 
                                                                                                                                          self (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI of the resource
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              code (string)
                                                                                                                                                                                                                                        • Category code
                                                                                                                              parent (string)
                                                                                                                                                                                                                                        • Category code of the parent's category
                                                                                                                              updated (string)
                                                                                                                                                                                                                                        • Date of the last update
                                                                                                                              position (integer)
                                                                                                                                                                                                                                        • Position of the category in its level, start from 1 (only available since the 7.0 version and when query parameter "with_position" is set to "true")
                                                                                                                              labels (object)
                                                                                                                     : { 
                                                                                                                                          localeCode (string)
                                                                                                                                                                                                                                                        • Category label for the locale `localeCode`
                                                                                                                                    
                                                                                                                        
           } 
                                                                                                                              values (object)
                                                                                                                     : { 
                                                                                                                                          attributeCode|attributeUuid|channelCode|localeCode (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    data
                                                                                                                                    (object ) • Attribute value 
 
                                                                                                                                                     
                                                                                                                                    type
                                                                                                                                    (string ) • The attribute type 
 
                                                                                                                                                     
                                                                                                                                    locale
                                                                                                                                    (string ) • Locale code of the attribute value 
 
                                                                                                                                                     
                                                                                                                                    channel
                                                                                                                                    (string ) • Channel code of the attribute value 
 
                                                                                                                                                     
                                                                                                                                    attribute_code
                                                                                                                                    (string ) • The attribute code with its uuid (attributeCode|attributeUuid)
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              channel_requirements (array [string ])
                                                                                                                                                                                                                                        • List of Channel codes on which the category tree is required for products completeness. Only category trees can be required, not child categories.
                                                                                                                 } 
     ] 
                                                                                                    
                                                                                                
   }
                                                                                
}
Example
{
      "_links": {
        "self": {
          "href": "https://demo.akeneo.com/api/rest/v1/categories?page=2&limit=5"
        },
        "first": {
          "href": "https://demo.akeneo.com/api/rest/v1/categories?page=1&limit=5"
        },
        "previous": {
          "href": "https://demo.akeneo.com/api/rest/v1/categories?page=1&limit=5"
        },
        "next": {
          "href": "https://demo.akeneo.com/api/rest/v1/categories?page=3&limit=5"
        }
      },
      "current_page": 2,
      "_embedded": {
        "items": [
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/categories/winter_collection"
              }
            },
            "code": "winter_collection",
            "parent": null,
            "updated": "2021-05-21T11:32:00+02:00",
            "position": 1,
            "labels": {
              "en_US": "Winter collection",
              "fr_FR": "Collection hiver",
              "de_DE": "Winter-Kollektion"
            },
            "values": {
              "description|96b88bf4-c2b7-4b64-a1f9-5d4876c02c26|ecommerce|en_US": {
                "data": "<p>Winter collection description</p>\n",
                "type": "textarea",
                "channel": "ecommerce",
                "locale": "en_US",
                "attribute_code": "description|96b88bf4-c2b7-4b64-a1f9-5d4876c02c26"
              },
              "image_1|871b8686-79b5-415c-9c6f-a38f8732dfb7|ecommerce|en_US": {
                "data": {
                  "size": 1401359,
                  "extension": "jpg",
                  "file_path": "2/d/c/7/2dc791671d726e7438219d5dc7fd51a53d6bf2bb_IMG_7860.jpg",
                  "mime_type": "image/jpeg",
                  "original_filename": "IMG_7860.jpg"
                },
                "type": "image",
                "channel": "ecommerce",
                "locale": "en_US",
                "attribute_code": "image_1|871b8686-79b5-415c-9c6f-a38f8732dfb7"
              }
            },
            "channel_requirements": [
              "ecommerce",
              "mobile"
            ]
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/categories/woman"
              }
            },
            "code": "woman",
            "parent": "winter_collection",
            "updated": "2021-04-21T10:41:02+02:00",
            "position": 1,
            "labels": {
              "en_US": "Woman",
              "fr_FR": "Femme",
              "de_DE": "Damen"
            },
            "values": {},
            "channel_requirements": []
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/categories/man"
              }
            },
            "code": "man",
            "parent": "winter_collection",
            "updated": "2021-03-02T12:59:59+02:00",
            "position": 2,
            "labels": {
              "en_US": "Man",
              "fr_FR": "Homme",
              "de_DE": "Herren"
            },
            "values": {},
            "channel_requirements": []
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/categories/kids"
              }
            },
            "code": "kids",
            "parent": "winter_collection",
            "updated": "2021-01-03T12:40:00+02:00",
            "position": 3,
            "labels": {
              "en_US": "Kids",
              "fr_FR": "Enfant",
              "de_DE": "Kinder"
            },
            "values": {},
            "channel_requirements": []
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/categories/summer_collection"
              }
            },
            "code": "summer_collection",
            "parent": null,
            "updated": "2021-04-04T09:42:00+02:00",
            "position": 1,
            "labels": {
              "en_US": "Summer collection",
              "fr_FR": "Collection été",
              "de_DE": "Sommer-Kollektion"
            },
            "values": {},
            "channel_requirements": [
              "print"
            ]
          }
        ]
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Create a new category
This endpoint allows you to create a new category.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
post /api/rest/v1/categories
Path parameters
Ø
Query parameters
Ø
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
{
                                                                                    code
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                        
                                                                                        • Category code
                                                                                
                                                                                    parent
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    ,
                                                                                        null
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category code of the parent's category
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category labels for each locale
                                                                                
                                                                                    values
                                                                                    
                                                                                        (array
                                                                                        [object]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                         : [ 
         { 
                                                                                                           
                                                                                                data
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Attribute value. It should be a `string` for Text and Text Area attributes, a `boolean` for Yes/No attribute and for Image attribute use the create category media file endpoint. It can also be `null` to remove the value. 
                                                                                                           
                                                                                                locale
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Locale code of the attribute value. 
                                                                                                           
                                                                                                channel
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Channel code of the attribute value. 
                                                                                                           
                                                                                                attribute_code
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • The attribute code. 
                                                                                                    } 
     ]
                                                                                
                                                                                    validations
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            max_categories_per_product : integer
                                                                                             , 
                                                                                            
                                                                                            only_leaves : boolean
                                                                                             , 
                                                                                            
                                                                                            is_mandatory : boolean
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category validations
                                                                                
                                                                                    channel_requirements
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • List of Channel codes on which the category is required for products completeness. Only category trees can be required, not child categories.
                                                                                
}
Example
{
      "code": "winter_collection",
      "parent": null,
      "labels": {
        "en_US": "Winter collection",
        "fr_FR": "Collection hiver"
      },
      "values": [
        {
          "data": "<p>Winter collection description</p>",
          "channel": "ecommerce",
          "locale": "en_US",
          "attribute_code": "a_text_area_attribute"
        },
        {
          "data": false,
          "channel": "ecommerce",
          "locale": null,
          "attribute_code": "a_boolean_attribute"
        },
        {
          "data": null,
          "channel": null,
          "locale": null,
          "attribute_code": "an_image_attribute"
        }
      ],
      "validations": {
        "max_categories_per_product": 42,
        "only_leaves": false,
        "is_mandatory": true
      },
      "channel_requirements": [
        "ecommerce",
        "mobile"
      ]
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Update/create several categories
This endpoint allows you to update several categories at once.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/categories
Path parameters
Ø
Query parameters
Ø
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                Content-type
                                                                  
                                                                • Equal to 'application/vnd.akeneo.collection+json', no other value allowed
                                                            
Body
Contains several lines, each line is a category in JSON standard format
{
                                                                                    code
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                          
                                                                                        • Category code
                                                                                
                                                                                    parent
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    ,
                                                                                        null
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category code of the parent's category
                                                                                
                                                                                    updated
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Date of the last update
                                                                                
                                                                                    position
                                                                                    
                                                                                        (integer
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Position of the category in its level, start from 1 (only available since the 7.0 version and when query parameter "with_position" is set to "true")
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category labels for each locale
                                                                                
                                                                                    values
                                                                                    
                                                                                        (array
                                                                                        [object]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                         : [ 
         { 
                                                                                                           
                                                                                                data
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Attribute value. It should be a `string` for Text and Text Area attributes, a `boolean` for Yes/No attribute and for Image attribute use the create category media file endpoint. It can also be `null` to remove the value. 
                                                                                                           
                                                                                                locale
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Locale code of the attribute value. 
                                                                                                           
                                                                                                channel
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Channel code of the attribute value. 
                                                                                                           
                                                                                                attribute_code
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • The attribute code. 
                                                                                                    } 
     ]
                                                                                
                                                                                    validations
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            max_categories_per_product : integer
                                                                                             , 
                                                                                            
                                                                                            only_leaves : boolean
                                                                                             , 
                                                                                            
                                                                                            is_mandatory : boolean
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category validations
                                                                                
                                                                                    channel_requirements
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • List of Channel codes on which the category is required for products completeness. Only category trees can be required, not child categories.
                                                                                
}
Example
{"code":"spring_collection","parent":null}
    {"code":"woman","parent":"spring_collectionn"}
    {"code":"man","parent":"spring_collection"}
                                                                    RESPONSES
OK
Returns a plain text response whose lines are JSON containing the status of each update or creation
Body Format application/json
{
line
                                                                                     (integer ) 
                                                                                                                                                                            • Line number
                                                                                    
identifier
                                                                                     (string ) 
                                                                                                                                                                            • Resource identifier, only filled when the resource is a product
                                                                                    
code
                                                                                     (string ) 
                                                                                                                                                                            • Resource code, only filled when the resource is not a product
                                                                                    
status_code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code, see Client errors to understand the meaning of each code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{"line":1,"code":"spring_collection","status_code":201}
    {"line":2,"code":"woman","status_code":422,"message":"Category \"spring_collectionn\" does not exist."}
    {"line":3,"code":"man","status_code":204}Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Request Entity Too Large
There are too many resources to process (max 100) or the line of JSON is too long (max 1 000 000 characters)
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 413,
      "message": "Too many resources to process, 100 is the maximum allowed."
    }Unsupported Media type
The `Content-type` header has to be `application/vnd.akeneo.collection+json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/vnd.akeneo.collection+json’ is allowed."
    }Get a category
This endpoint allows you to get the information about a given category.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/categories/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
OK
Returns the content of the category in JSON standard format
Body Format application/json
Follow the standard format of the entity
{
code
                                                                                     (string ) 
                                                                                                                                                                            • Category code
                                                                                    
parent
                                                                                     (string ) 
                                                                                                                                                                            • Category code of the parent's category
                                                                                    
updated
                                                                                     (string ) 
                                                                                                                                                                            • Date of the last update
                                                                                    
position
                                                                                     (integer ) 
                                                                                                                                                                            • Position of the category in its level, start from 1 (only available since the 7.0 version and when query parameter "with_position" is set to "true")
                                                                                    
labels
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            localeCode
                                                                                            
                                                                                                (string
    )
                                                                                            
                                                                                                    • Category label for the locale `localeCode`
                                                                                        
   }
                                                                                    
values
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            attributeCode|attributeUuid|channelCode|localeCode
                                                                                            
                                                                                                (object
    )
                                                                                            
                                                                                                : { 
                                                                                                           
                                                                                                    data
                                                                                                    
                                                                                                        (object
    )
                                                                                                    
                                                                                                    • Attribute value 
 
                                                                                                           
                                                                                                    type
                                                                                                    
                                                                                                        (string
    )
                                                                                                    
                                                                                                    • The attribute type 
 
                                                                                                           
                                                                                                    locale
                                                                                                    
                                                                                                        (string
    )
                                                                                                    
                                                                                                    • Locale code of the attribute value 
 
                                                                                                           
                                                                                                    channel
                                                                                                    
                                                                                                        (string
    )
                                                                                                    
                                                                                                    • Channel code of the attribute value 
 
                                                                                                           
                                                                                                    attribute_code
                                                                                                    
                                                                                                        (string
    )
                                                                                                    
                                                                                                    • The attribute code with its uuid (attributeCode|attributeUuid)
                                                                                                
    }
                                                                                        
   }
                                                                                    
channel_requirements
                                                                                     (array  [string] ) 
                                                                                                                                                                                • List of Channel codes on which the category tree is required for products completeness. Only category trees can be required, not child categories.
                                                                                
}
Example
{
      "code": "winter_collection",
      "parent": null,
      "updated": "2021-05-22T12:48:00+02:00",
      "position": 1,
      "labels": {
        "en_US": "Winter collection",
        "fr_FR": "Collection hiver"
      },
      "values": {
        "description|96b88bf4-c2b7-4b64-a1f9-5d4876c02c26|ecommerce|en_US": {
          "data": "<p>Winter collection description</p>\n",
          "type": "textarea",
          "channel": "ecommerce",
          "locale": "en_US",
          "attribute_code": "description|96b88bf4-c2b7-4b64-a1f9-5d4876c02c26"
        },
        "image_1|871b8686-79b5-415c-9c6f-a38f8732dfb7|ecommerce|en_US": {
          "data": {
            "size": 1401359,
            "extension": "jpg",
            "file_path": "2/d/c/7/2dc791671d726e7438219d5dc7fd51a53d6bf2bb_IMG_7860.jpg",
            "mime_type": "image/jpeg",
            "original_filename": "IMG_7860.jpg"
          },
          "type": "image",
          "channel": "ecommerce",
          "locale": "en_US",
          "attribute_code": "image_1|871b8686-79b5-415c-9c6f-a38f8732dfb7"
        }
      },
      "channel_requirements": [
        "ecommerce",
        "mobile"
      ]
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Update/create a category
This endpoint allows you to update a given category. Know more about Update behavior. Note that if no category exists for the given code, it creates it.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
patch /api/rest/v1/categories/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
                                                                        Content-type
                                                                        
                                                                        • Equal to 'application/json', no other value allowed
                                                                    
Body
Follow the standard format of the entity
{
                                                                                    code
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                          
                                                                                        • Category code
                                                                                
                                                                                    parent
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    ,
                                                                                        null
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category code of the parent's category
                                                                                
                                                                                    updated
                                                                                    
                                                                                        (string
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Date of the last update
                                                                                
                                                                                    position
                                                                                    
                                                                                        (integer
                                                                                        
                                                                                    )
                                                                                          
                                                                                        • Position of the category in its level, start from 1 (only available since the 7.0 version and when query parameter "with_position" is set to "true")
                                                                                
                                                                                    labels
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            localeCode : string
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category labels for each locale
                                                                                
                                                                                    values
                                                                                    
                                                                                        (array
                                                                                        [object]
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                         : [ 
         { 
                                                                                                           
                                                                                                data
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Attribute value. It should be a `string` for Text and Text Area attributes, a `boolean` for Yes/No attribute and for Image attribute use the create category media file endpoint. It can also be `null` to remove the value. 
                                                                                                           
                                                                                                locale
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Locale code of the attribute value. 
                                                                                                           
                                                                                                channel
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • Channel code of the attribute value. 
                                                                                                           
                                                                                                attribute_code
                                                                                                
                                                                                                    (string
    )
                                                                                                
                                                                                                • The attribute code. 
                                                                                                    } 
     ]
                                                                                
                                                                                    validations
                                                                                    
                                                                                        (object
                                                                                        
                                                                                            {
                                                                                            max_categories_per_product : integer
                                                                                             , 
                                                                                            
                                                                                            only_leaves : boolean
                                                                                             , 
                                                                                            
                                                                                            is_mandatory : boolean
                                                                                            }
                                                                                    ,
                                                                                        []
                                                                                        by default)
                                                                                        
                                                                                            
                                                                                        
                                                                                        • Category validations
                                                                                
                                                                                    channel_requirements
                                                                                    
                                                                                        (array
                                                                                        [string]
                                                                                    )
                                                                                        
                                                                                            
                                                                                        
                                                                                                                                                                                • List of Channel codes on which the category is required for products completeness. Only category trees can be required, not child categories.
                                                                                
}
Example
{
      "code": "winter_collection",
      "parent": null,
      "labels": {
        "en_US": "Winter collection",
        "fr_FR": "Collection hiver"
      },
      "values": [
        {
          "data": "<p>Winter collection description</p>",
          "channel": "ecommerce",
          "locale": "en_US",
          "attribute_code": "a_text_area_attribute"
        },
        {
          "data": false,
          "channel": "ecommerce",
          "locale": null,
          "attribute_code": "a_boolean_attribute"
        },
        {
          "data": null,
          "channel": null,
          "locale": null,
          "attribute_code": "an_image_attribute"
        }
      ],
      "validations": {
        "max_categories_per_product": 42,
        "only_leaves": false,
        "is_mandatory": true
      },
      "channel_requirements": [
        "ecommerce",
        "mobile"
      ]
    }
                                                                    RESPONSES
Created
Means that the creation was successful
Headers
Location • URI of the created resource
Body Format application/json
Ø
No content to return
Means that the update was successful
Headers
Location • URI of the updated resource
Body Format application/json
Ø
Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }Target market settings
Channel
                                    
                            
                            
                                Get a list of channels
This endpoint allows you to get a list of channels. Channels are paginated and sorted by code.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/channels
Path parameters
Ø
Query parameters
                                                                page
                                                                (integer  ,
                                                                    1
                                                                     by default )
                                                                • Number of the page to retrieve when using the `page` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                limit
                                                                (integer  ,
                                                                    10
                                                                     by default )
                                                                    
                                                                • Number of results by page, see Pagination section
                                                            
                                                                with_count
                                                                (boolean )
                                                                • Return the count of items in the response. Be carefull with that, on a big catalog, it can decrease performance in a significative way
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return channels paginated
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        self (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the current page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    first (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the first page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    previous (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the previous page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    next (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the next page of resources
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            current_page
                                                                                            (integer)
                                                                                                                                                                                        • Current page number
                                                                                        
                                                                                            _embedded
                                                                                            (object)
                                                                                            : { 
                                                                                                        items (array )
                                                                                                                                                                                                         : [ 
         { 
                                                                                                                              _links (object)
                                                                                                                     : { 
                                                                                                                                          self (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI of the resource
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              code (string)
                                                                                                                                                                                                                                        • Channel code
                                                                                                                              locales (array [string ])
                                                                                                                                                                                                                                        • Codes of activated locales for the channel
                                                                                                                              currencies (array [string ])
                                                                                                                                                                                                                                        • Codes of activated currencies for the channel
                                                                                                                              category_tree (string)
                                                                                                                                                                                                                                        • Code of the category tree linked to the channel
                                                                                                                              conversion_units (object)
                                                                                                                     : { 
                                                                                                                                          attributeCode (string)
                                                                                                                                                                                                                                                        • Conversion unit code used to convert the values of the attribute `attributeCode` when exporting via the channel
                                                                                                                                    
                                                                                                                        
           } 
                                                                                                                              labels (object)
                                                                                                                     : { 
                                                                                                                                          localeCode (string)
                                                                                                                                                                                                                                                        • Channel label for the locale `localeCode`
                                                                                                                                    
                                                                                                                        
           } 
                                                                                                                 } 
     ] 
                                                                                                    
                                                                                                
   }
                                                                                
}
Example
{
      "_links": {
        "self": {
          "href": "https://demo.akeneo.com/api/rest/v1/channels?page=1&limit=3"
        },
        "first": {
          "href": "https://demo.akeneo.com/api/rest/v1/channels?page=1&limit=3"
        }
      },
      "current_page": 1,
      "_embedded": {
        "items": [
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/channels/ecommerce"
              }
            },
            "code": "ecommerce",
            "currencies": [
              "USD",
              "EUR"
            ],
            "locales": [
              "en_US",
              "fr_FR",
              "de_DE"
            ],
            "category_tree": "master",
            "conversion_units": {
              "a_metric": "KILOWATT",
              "a_metric_negative": "CELSIUS",
              "a_metric_to_not_convert": null
            },
            "labels": {
              "en_US": "Ecommerce",
              "fr_FR": "E-commerce",
              "de_DE": "E-commerce"
            }
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/channels/mobile"
              }
            },
            "code": "mobile",
            "currencies": [
              "USD",
              "EUR"
            ],
            "locales": [
              "en_US",
              "fr_FR",
              "de_DE"
            ],
            "category_tree": "master",
            "conversion_units": {
              "a_metric": "KILOWATT",
              "a_metric_negative": "CELSIUS",
              "a_metric_to_not_convert": null
            },
            "labels": {
              "en_US": "Mobile",
              "fr_FR": "Mobile",
              "de_DE": "Mobile"
            }
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/channels/print"
              }
            },
            "code": "print",
            "currencies": [
              "USD",
              "EUR"
            ],
            "locales": [
              "en_US",
              "fr_FR",
              "de_DE"
            ],
            "category_tree": "master",
            "conversion_units": {},
            "labels": {
              "en_US": "Print",
              "fr_FR": "Print",
              "de_DE": "Print"
            }
          }
        ]
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Get a channel
This endpoint allows you to get the information about a given channel.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/channels/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
OK
Returns the content of the channel in JSON standard format
Body Format application/json
Follow the standard format of the entity
{
code
                                                                                     (string ) 
                                                                                                                                                                            • Channel code
                                                                                    
locales
                                                                                     (array  [string] ) 
                                                                                                                                                                                • Codes of activated locales for the channel
                                                                                    
currencies
                                                                                     (array  [string] ) 
                                                                                                                                                                                • Codes of activated currencies for the channel
                                                                                    
category_tree
                                                                                     (string ) 
                                                                                                                                                                            • Code of the category tree linked to the channel
                                                                                    
conversion_units
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            attributeCode
                                                                                            
                                                                                                (string
    )
                                                                                            
                                                                                                    • Conversion unit code used to convert the values of the attribute `attributeCode` when exporting via the channel
                                                                                        
   }
                                                                                    
labels
                                                                                     (object ) 
                                                                                    : { 
                                                                                               
                                                                                            localeCode
                                                                                            
                                                                                                (string
    )
                                                                                            
                                                                                                    • Channel label for the locale `localeCode`
                                                                                        
   }
                                                                                
}
Example
{
      "code": "ecommerce",
      "currencies": [
        "USD",
        "EUR"
      ],
      "locales": [
        "de_DE",
        "en_US",
        "fr_FR"
      ],
      "category_tree": "master",
      "conversion_units": {
        "weight": "KILOGRAM"
      },
      "labels": {
        "en_US": "Ecommerce",
        "de_DE": "Ecommerce",
        "fr_FR": "Ecommerce"
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Locale
                                    
                            
                            
                                Get a list of locales
This endpoint allows you to get a list of locales. Locales are paginated and sorted by code.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/locales
Path parameters
Ø
Query parameters
                                                                search
                                                                (string )
                                                                • Filter locales, for more details see the Filters section
                                                            
                                                                page
                                                                (integer  ,
                                                                    1
                                                                     by default )
                                                                • Number of the page to retrieve when using the `page` pagination method type. Should never be set manually, see Pagination section
                                                            
                                                                limit
                                                                (integer  ,
                                                                    10
                                                                     by default )
                                                                    
                                                                • Number of results by page, see Pagination section
                                                            
                                                                with_count
                                                                (boolean )
                                                                • Return the count of items in the response. Be carefull with that, on a big catalog, it can decrease performance in a significative way
                                                            
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return locales paginated
Body Format application/json
Follow the standard format of the entity
{
                                                                                            _links
                                                                                            (object)
                                                                                            : { 
                                                                                                        self (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the current page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    first (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the first page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    previous (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the previous page of resources
                                                                                                        
     }
                                                                                                     
 
                                                                                                                                                                                                    next (object )
                                                                                                    : { 
                                                                                                                    href (string ) • URI of the next page of resources
                                                                                                        
     }
                                                                                                    
                                                                                                
   }
                                                                                        
                                                                                            current_page
                                                                                            (integer)
                                                                                                                                                                                        • Current page number
                                                                                        
                                                                                            _embedded
                                                                                            (object)
                                                                                            : { 
                                                                                                        items (array )
                                                                                                                                                                                                         : [ 
         { 
                                                                                                                              _links (object)
                                                                                                                     : { 
                                                                                                                                          self (object)
                                                                                                                             : { 
                                                                                                                                                     
                                                                                                                                    href
                                                                                                                                    (string ) • URI of the resource
                                                                                                                                
              } 
                                                                                                                        
           } 
                                                                                                                              code (string)
                                                                                                                                                                                                                                        • Locale code
                                                                                                                              enabled (boolean)
                                                                                                                                                                                                                                        • Whether the locale is enabled
                                                                                                                 } 
     ] 
                                                                                                    
                                                                                                
   }
                                                                                
}
Example
{
      "_links": {
        "self": {
          "href": "https://demo.akeneo.com/api/rest/v1/locales?page=2&limit=4"
        },
        "first": {
          "href": "https://demo.akeneo.com/api/rest/v1/locales?page=1&limit=4"
        },
        "previous": {
          "href": "https://demo.akeneo.com/api/rest/v1/locales?page=1&limit=4"
        },
        "next": {
          "href": "https://demo.akeneo.com/api/rest/v1/locales?page=2&limit=4"
        }
      },
      "current_page": 2,
      "_embedded": {
        "items": [
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/locales/en_US"
              }
            },
            "code": "en_US",
            "enabled": true
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/locales/fr_FR"
              }
            },
            "code": "fr_FR",
            "enabled": true
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/locales/de_DE"
              }
            },
            "code": "de_DE",
            "enabled": true
          },
          {
            "_links": {
              "self": {
                "href": "https://demo.akeneo.com/api/rest/v1/locales/af_ZA"
              }
            },
            "code": "af_ZA",
            "enabled": false
          }
        ]
      }
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Get a locale
This endpoint allows you to get the information about a given locale.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1/locales/{code}
Headers
                                                                Authorization
                                                                  
                                                                • Equal to 'Bearer xxx', `xxx` being the authentication token, see Authentication section
                                                            
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
OK
Returns the content of the locale in JSON standard format
Body Format application/json
Follow the standard format of the entity
{
code
                                                                                     (string ) 
                                                                                                                                                                            • Locale code
                                                                                    
enabled
                                                                                     (boolean ) 
                                                                                                                                                                            • Whether the locale is enabled
                                                                                
}
Example
{
      "code": "en_US",
      "enable": true
    }Authentication required
Can be caused by a missing or expired token
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 401,
      "message": "Authentication is required"
    }Access forbidden
The user does not have the permission to execute this request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 403,
      "message": "Access forbidden. You are not allowed to list categories."
    }Resource not found
The resource code given in the URI does not correspond to any existing PIM resource
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 404,
      "message": "Resource `my_resource_code` does not exist."
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Utilities
Overview
                                    
                            
                            
                                Get list of all endpoints
This endpoint allows you to get the list of all the available endpoints. No need to be authenticated to use this endpoint.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
get /api/rest/v1
Path parameters
Ø
Query parameters
Ø
Headers
Accept • Equal to 'application/json', no other value allowed
Body
Ø
RESPONSES
Return the list of all available endpoints
Body Format application/json
{
host
                                                                                     (string ) 
                                                                                                                                                                            • Host name
                                                                                    
authentication
                                                                                     (object ) 
                                                                                                                                                                            • Endpoint to get the authentication token
                                                                                    
routes
                                                                                     (object ) 
                                                                                                                                                                            • All the availables endpoints
                                                                                
}
Example
{
      "host": "https://demo.akeneo.com",
      "authentication": {
        "fos_oauth_server_token": {
          "route": "/api/oauth/v1/token",
          "methods": [
            "POST"
          ]
        }
      },
      "routes": {
        "pim_api_category_list": {
          "route": "/api/rest/v1/categories",
          "methods": [
            "GET"
          ]
        },
        "pim_api_category_get": {
          "route": "/api/rest/v1/categories/{code}",
          "methods": [
            "GET"
          ]
        },
        "pim_api_category_create": {
          "route": "/api/rest/v1/categories",
          "methods": [
            "POST"
          ]
        },
        "pim_api_category_partial_update": {
          "route": "/api/rest/v1/categories/{code}",
          "methods": [
            "PATCH"
          ]
        }
      }
    }Not Acceptable
The `Accept` header is not `application/json` but it should
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 406,
      "message": "‘xxx’ in ‘Accept‘ header is not valid. Only ‘application/json‘ is allowed."
    }Authentication
                                    
                            
                            
                                Get authentication token
This endpoint allows you to get an authentication token. No need to be authenticated to use this endpoint.
Available in PIM versions: 1.7 2.x 3.x 4.0 5.0 6.0 7.0 SaaS
REQUEST
post /api/oauth/v1/token
Path parameters
Ø
Query parameters
Ø
Headers
                                                                    Content-type
                                                                      
                                                                    • Equal to 'application/json' or 'application/x-www-form-urlencoded', no other value allowed
                                                                
                                                                    Authorization
                                                                      
                                                                    • Equal to 'Basic xx', where 'xx' is the base 64 encoding of the client id and secret. Find out how to generate them in the Client ID/secret generation section.
                                                                
Body
RESPONSES
Return an authentication token
Body Format application/json
{
access_token
                                                                                     (string ) 
                                                                                                                                                                            • Authentication token that should be given in every authenticated request to the API
                                                                                    
expires_in
                                                                                     (integer ) 
                                                                                                                                                                            • Validity of the token given in seconds, 3600s = 1h by default
                                                                                    
token_type
                                                                                     (string ) 
                                                                                                                                                                            • Token type, always equal to "bearer"
                                                                                    
scope
                                                                                     (string ) 
                                                                                                                                                                            • Unused, always equal to "null"
                                                                                    
refresh_token
                                                                                     (string ) 
                                                                                                                                                                            • Use this token when your access token has expired. See Refresh an expired token section for more details.
                                                                                
}
Example
{
      "access_token": "ZTZmYjU4ZmQxZWNmMzk1M2NlYzA5NmFhNmIzVjExMzE4NmJmODBkZGIyYTliYmQyNjk2ZDQwZThmNjdiZDQzOQ",
      "expires_in": 3600,
      "token_type": "bearer",
      "scope": null,
      "refresh_token": "M2FlODI0OTE3ODMyNjViMzRiOWE5ODMyNWViMThkNDU5YzJjNjFiZjNkZWFjMzIyYjc4YTgzZWY1MjE5ZTY5Mw"
    }Bad request
Can be caused by a malformed JSON request
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 400,
      "message": "Invalid JSON message received"
    }Unsupported Media type
The `Content-type` header has to be `application/json`
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 415,
      "message": "‘xxx’ in ‘Content-type’ header is not valid.  Only ‘application/json’ is allowed."
    }Unprocessable entity
The validation of the entity given in the body of the request failed
Body Format application/json
{
code
                                                                                     (integer ) 
                                                                                                                                                                            • HTTP status code
                                                                                    
message
                                                                                     (string ) 
                                                                                                                                                                            • Message explaining the error
                                                                                
}
Example
{
      "code": 422,
      "message": "Property \"labels\" expects an array as data, \"NULL\" given. Check the API reference documentation.",
      "_links": {
        "documentation": {
          "href": "http://api.akeneo.com/api-reference-paas.html"
        }
      }
    }