### Get Specific Product Source: https://synf.co/restapi Retrieve details for a single product by its ID. ```APIDOC ## Get Specific Product ### Description Retrieves detailed information about a specific product using its unique identifier. ### Method GET ### Endpoint /products/{productId} ### Parameters #### Path Parameters - **productId** (string) - Required - The unique identifier of the product. #### Query Parameters - **schema_version** (string) - Optional - Specifies the desired schema version for the product data. ### Response #### Success Response (200) - **product** (object) - The detailed information for the requested product. - May include fields like `id`, `name`, `description`, `price`, `assets`, etc. #### Response Example { "product": { "id": "prod_123", "name": "Example Product", "description": "This is a sample product.", "price": { "currency": "USD", "amount": 19.99 } } } ``` -------------------------------- ### Get All Propositions Source: https://synf.co/restapi Retrieves a list of all propositions. Requires an authorization token. ```APIDOC ## Get All Propositions ### Description Retrieves a list of all propositions available in the system. ### Method GET ### Endpoint https://connect.syncforce.io/Propositions ### Headers - Authorization: Bearer [token] ### Response #### Success Response (200) - **GUID** (string) - The unique identifier for the proposition. - **reference** (string) - The reference name of the proposition. ### Response Example ```json [ { "GUID": "0591892f-5421-42cd-b1de-0bb6b1bb7fd5", "reference": "Ubbink Nederland" }, { "GUID": "b7a60406-a898-42b1-9c16-10ab33943f66", "reference": "Product Catalog - Ubbink Netherlands" }, { "GUID": "001f4c88-897d-4595-8234-22ed63287187", "reference": "Website Solutions & Products Ubbink United Kingdom" } ] ``` ``` -------------------------------- ### Get Products Source: https://synf.co/restapi Retrieve a list of available products. This endpoint may support filtering or pagination. ```APIDOC ## Get Products ### Description Retrieves a list of all available products. ### Method GET ### Endpoint /products ### Parameters #### Query Parameters - **schema_version** (string) - Optional - Specifies the desired schema version for the product data. ### Response #### Success Response (200) - **products** (array) - A list of product objects. - Each product object may contain fields like `id`, `name`, `description`, etc. #### Response Example { "products": [ { "id": "prod_123", "name": "Example Product", "description": "This is a sample product." } ] } ``` -------------------------------- ### Get Product Allergens Source: https://synf.co/restapi Fetches the list of all allergens and their translations available for products. ```APIDOC ## GET Product Allergens ### Description For products, the list of all allergens and their translations is available. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/Products/Allergens ### Query Parameters - **languages** (language, supports comma separated list) - Optional - Only show translations for these languages ### Headers - "Authorization": “Bearer [token]” ### Example Request URL https://connect.syncforce.io/Metadata/Products/Allergens?languages=en,nl ``` -------------------------------- ### Get Product Roles Source: https://synf.co/restapi Fetches all roles with name translations for products. Products only reference the Id for these roles. ```APIDOC ## GET Product Roles ### Description For products, all roles with name translations are available. The products only reference the Id for these roles. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/Products/Roles ### Query Parameters - **languages** (language, use language code, supports comma separated list) - Optional - Only show translations for these languages - **level** (string, supports comma separated list) - Optional - Only show roles belonging to these levels (Master, Variant, Each, Multi pack / Inner pack, Case, Display, Pallet, Transport load) ### Headers - "Authorization": “Bearer [token]” ### Example Request URL https://connect.syncforce.io/Metadata/Products/Roles?languages=en,nl&levels=master,variant,pallet,transport load ``` -------------------------------- ### Get Product Digital Assets Source: https://synf.co/restapi Retrieve digital assets associated with a specific product. ```APIDOC ## Get Product Digital Assets ### Description Retrieves all digital assets linked to a specific product. ### Method GET ### Endpoint /products/{productId}/assets ### Parameters #### Path Parameters - **productId** (string) - Required - The unique identifier of the product. #### Query Parameters - **schema_version** (string) - Optional - Specifies the desired schema version for the digital asset data. ### Response #### Success Response (200) - **assets** (array) - A list of digital asset objects associated with the product. #### Response Example { "assets": [ { "id": "asset_abc", "type": "image", "url": "https://synf.co/assets/prod_123/image1.jpg" } ] } ``` -------------------------------- ### Get Success Stories Source: https://synf.co/restapi Retrieve a list of success stories. ```APIDOC ## Get Success Stories ### Description Retrieves a list of success stories. ### Method GET ### Endpoint /successstories ### Response #### Success Response (200) - **stories** (array) - A list of success story objects. #### Response Example { "stories": [ { "id": "ss_001", "title": "Client X Achieves Record Growth" } ] } ``` -------------------------------- ### Get Digital Assets Source: https://synf.co/restapi Retrieve a list of available digital assets. ```APIDOC ## Get Digital Assets ### Description Retrieves a list of all available digital assets. ### Method GET ### Endpoint /digitalassets ### Parameters #### Query Parameters - **schema_version** (string) - Optional - Specifies the desired schema version for the digital asset data. ### Response #### Success Response (200) - **assets** (array) - A list of digital asset objects. #### Response Example { "assets": [ { "id": "asset_abc", "type": "image", "url": "https://synf.co/assets/generic/image1.jpg" } ] } ``` -------------------------------- ### Get Product Nutrients Source: https://synf.co/restapi Retrieves the list of all nutrient groups and nutrients, along with their translations, available for products. ```APIDOC ## GET Product Nutrients ### Description For products, the list of all nutrient groups and nutrients and their translations is available. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/Products/Nutrients ### Query Parameters - **languages** (language, supports comma separated list) - Optional - Only show translations for these languages ### Headers - "Authorization": “Bearer [token]” ### Example Request URL https://connect.syncforce.io/Metadata/Products/Nutrients?languages=en,nl ``` -------------------------------- ### Get Specific Proposition Source: https://synf.co/restapi Retrieves a single proposition by its GUID, with options to filter by modification date, schema version, and material type. ```APIDOC ## Get Specific Proposition ### Description Retrieves a specific proposition using its unique GUID. This endpoint allows filtering results based on modification dates for products and digital assets, requesting specific schema versions, and filtering by material types. ### Method GET ### Endpoint https://connect.syncforce.io/Propositions/{GUID} ### Parameters #### Path Parameters - **GUID** (string) - Required - The unique identifier of the proposition. #### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters results to include items changed after this datetime. Note: Product change dates are in UTC, Digital Asset change dates are in CET/CEST. - **schema** (integer) - Optional - Requests a specific schema version. - **materialType** (string) - Optional - Supports a comma-separated list of material types (e.g., "FinishedGood,PackagingComponent,FoodComponent"). ### Headers - Authorization: Bearer [token] ### Request Example URL ``` https://connect.syncforce.io/Propositions/957bcb30-7fbd-4db8-916d-e0267e9e84ac?modifiedSince=2021-12-01T13:00&schema=1&materialType=FinishedGood,FoodComponent ``` ### Response #### Success Response (200) Returns the proposition details. The structure depends on the requested schema and filters. #### Error Response (204) No Content: Returned when no proposition is found with the given GUID. ``` -------------------------------- ### Get Trade Hierarchies Source: https://synf.co/restapi Retrieve a list of trade hierarchies. ```APIDOC ## Get Trade Hierarchies ### Description Retrieves a list of all available trade hierarchies. ### Method GET ### Endpoint /tradehierarchies ### Parameters #### Query Parameters - **schema_version** (string) - Optional - Specifies the desired schema version for the trade hierarchy data. ### Response #### Success Response (200) - **hierarchies** (array) - A list of trade hierarchy objects. #### Response Example { "hierarchies": [ { "id": "th_1", "name": "Global Hierarchy" } ] } ``` -------------------------------- ### Get Available Schema Versions Source: https://synf.co/restapi Retrieves a list of available schema versions for digital assets. ```APIDOC ## GET /DigitalAssets/schemas ### Description Retrieves a list of available schema versions for digital assets. The source XML will be translated to the desired schema version when the schema parameter is used in other requests. ### Method GET ### Endpoint https://connect.syncforce.io/DigitalAssets/schemas ### Request Example ```http GET https://connect.syncforce.io/DigitalAssets/schemas Header: "Authorization": “Bearer [token]” ``` ### Response #### Success Response (200) - An array of strings, where each string is an available schema version. #### Response Example ```json ["1"] ``` ``` -------------------------------- ### Get Access Token Response Sample Source: https://synf.co/restapi This is a sample response when successfully obtaining an access token. It includes the access token, token type, expiration time, and a refresh token. ```json { "accessToken": "eyJhbAbcOiABCzI1AbcsInAbcCI6IkpABCJ9…[]", "tokenType": "Bearer", "expiresIn": 604800, "refreshToken": "eyJhbAbcOiABCzI1AbcsInAbcCI6IkpABCJ9…[]"} ``` -------------------------------- ### Get Content Languages Source: https://synf.co/restapi Retrieves a list of content languages that are configured within the system. ```APIDOC ## GET Content Languages ### Description Get the list of content languages configured. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/ContentLanguages ### Headers - "Authorization": “Bearer [token]” ``` -------------------------------- ### Get Proposition Roles Source: https://synf.co/restapi Retrieves all roles with name translations available for propositions. ```APIDOC ## GET Proposition Roles ### Description For propositions, all roles with name translations are available. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/Propositions/Roles ### Query Parameters - **languages** (language, use language code, supports comma separated list) - Optional - Only show translations for these languages - **level** (string, supports comma separated list) - Optional - Only show attributes belonging to these levels (Currently no levels are configured for proposition roles) ### Headers - "Authorization": “Bearer [token]” ### Example Request URL https://connect.syncforce.io/Metadata/Propositions/Roles?languages=en,nl&levels=master ``` -------------------------------- ### Get Proposition Products Source: https://synf.co/restapi Retrieves all products associated with a specific proposition, with optional filtering by modification date and material type. ```APIDOC ## Get Proposition Products ### Description Retrieves all products belonging to a specific proposition. This endpoint supports filtering by modification date and material type. ### Method GET ### Endpoint https://connect.syncforce.io/Propositions/{GUID}/Products ### Parameters #### Path Parameters - **GUID** (string) - Required - The unique identifier of the proposition. #### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters results to include products changed after this datetime (UTC). - **materialType** (string) - Optional - Supports a comma-separated list of material types (e.g., "FinishedGood,PackagingComponent,FoodComponent"). ### Headers - Authorization: Bearer [token] ### Request Example URL ``` https://connect.syncforce.io/Propositions/957bcb30-7fbd-4db8-916d-e0267e9e84ac/Products?modifiedSince=2021-12-01T13:00&materialType=FinishedGood ``` ### Response #### Success Response (200) Returns a list of products associated with the proposition. ``` -------------------------------- ### Get Product Pricing Source: https://synf.co/restapi Lists all products with their MSRP pricing, including deleted prices. Supports filtering by modification date, status, and price region ID. ```APIDOC ## GET /Products/Pricing ### Description Lists all products with their MSRP pricing, including current, future, and deleted MSRPs. ### Method GET ### Endpoint https://connect.syncforce.io/Products/Pricing ### Headers Authorization: Bearer [token] ### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters MSRPs modified after this date, including historic and deleted ones. - **status** (released, archived) - Optional - Filters by product status. Only one option is possible. - **priceRegionId** (integer, supports comma separated list) - Optional - Filters by price region IDs. ### Example Request URL https://connect.syncforce.io/Products/Pricing?modifiedSince=2022-08-01T13:00&status=released&priceRegionId=2,4 ``` -------------------------------- ### Get Products by Proposition Category Source: https://synf.co/restapi Retrieves all products and digital assets belonging to a specific proposition category. Supports filtering by modification date and material type. ```APIDOC ## GET /Propositions/{GUID}/{GUID}/Products ### Description Retrieves all products and digital assets belonging to a specific proposition category. Supports filtering by modification date and material type. ### Method GET ### Endpoint https://connect.syncforce.io/Propositions/{GUID}/{GUID}/Products ### Parameters #### Path Parameters - **GUID** (string) - Required - The first GUID represents the Proposition. - **GUID** (string) - Required - The second GUID represents the specific category within the Proposition. #### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Only shows Products and Digital Assets with a ChangeDate after the modifiedSince datetime. The ChangeDate for products is in UTC, for digital assets in CET/CEST. - **materialType** (string) - Optional - Supports comma separated list. The material types are: FinishedGood, PackagingComponent, FoodComponent. ### Request Example ``` https://connect.syncforce.io/Propositions/957bcb30-7fbd-4db8-916d-e0267e9e84ac/fff11db0-3784-430f-998f-077146ba1e87/Products?modifiedSince=2021-12-01T13:00&materialType=FinishedGood ``` ### Headers - **Authorization**: Bearer [token] ``` -------------------------------- ### Get Specific Proposition Source: https://synf.co/restapi Retrieve details for a single proposition by its ID. ```APIDOC ## Get Specific Proposition ### Description Retrieves detailed information about a specific proposition using its unique identifier. ### Method GET ### Endpoint /propositions/{propositionId} ### Parameters #### Path Parameters - **propositionId** (string) - Required - The unique identifier of the proposition. #### Query Parameters - **modified_since** (string) - Optional - Filters propositions modified after a specific date (e.g., YYYY-MM-DD). - **schema_version** (string) - Optional - Specifies the desired schema version for the proposition data. ### Response #### Success Response (200) - **proposition** (object) - The detailed information for the requested proposition. #### Response Example { "proposition": { "id": "prop_xyz", "name": "Summer Sale Proposition", "description": "Special offers for the summer season." } } ``` -------------------------------- ### Get Product Digital Assets Source: https://synf.co/restapi Retrieves all digital assets associated with a specific product. Supports filtering by modification date and asset types. ```APIDOC ## GET /Products/{UMID}/DigitalAssets ### Description Retrieves all digital assets belonging to a specific product. ### Method GET ### Endpoint https://connect.syncforce.io/Products/{UMID}/DigitalAssets ### Headers Authorization: Bearer [token] ### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters assets modified after this date. - **typeId** (integer, supports comma separated list) - Optional - Filters by asset type ID. - **subTypeId** (integer, supports comma separated list) - Optional - Filters by asset sub-type ID. - **roleId** (integer, supports comma separated list) - Optional - Filters by asset role ID. ### Example Request URL https://connect.syncforce.io/Products/957bcb30-7fbd-4db8-916d-e0267e9e84ac/DigitalAssets?modifiedSince=2021-12-01T13:00&typeId=1 ``` -------------------------------- ### Get Product Sales Promotions Source: https://synf.co/restapi Lists all products with their current and future sales promotions. Supports filtering by modification date, status, and price region ID. ```APIDOC ## GET /Products/SalesPromotions ### Description Lists all products with their current and future sales promotions. ### Method GET ### Endpoint https://connect.syncforce.io/Products/SalesPromotions ### Headers Authorization: Bearer [token] ### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters sales promotions modified after this date. - **status** (released, archived) - Optional - Filters by product status. Only one option is possible. - **priceRegionId** (integer, supports comma separated list) - Optional - Filters by price region IDs. ### Example Request URL https://connect.syncforce.io/Products/SalesPromotions?modifiedSince=2022-08-01T13:00&status=released&priceRegionId=2,4 ``` -------------------------------- ### Get Specific Digital Asset Source: https://synf.co/restapi Retrieve details for a single digital asset by its ID. ```APIDOC ## Get Specific Digital Asset ### Description Retrieves detailed information about a specific digital asset using its unique identifier. ### Method GET ### Endpoint /digitalassets/{assetId} ### Parameters #### Path Parameters - **assetId** (string) - Required - The unique identifier of the digital asset. #### Query Parameters - **schema_version** (string) - Optional - Specifies the desired schema version for the digital asset data. ### Response #### Success Response (200) - **asset** (object) - The detailed information for the requested digital asset. #### Response Example { "asset": { "id": "asset_abc", "type": "image", "url": "https://synf.co/assets/generic/image1.jpg" } } ``` -------------------------------- ### Get Product Consumption Units Source: https://synf.co/restapi Retrieves a list of consumption units available for products. Supports filtering by language. ```APIDOC ## GET /Metadata/Products/ConsumptionUnits ### Description Retrieves a list of consumption units available for products. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/Products/ConsumptionUnits ### Parameters #### Query Parameters - **languages** (string) - Optional - Comma separated list of languages to filter translations. ### Request Example ```http GET https://connect.syncforce.io/Metadata/Products/ConsumptionUnits?languages=en,nl Authorization: Bearer [token] ``` ### Response #### Success Response (200) - **(structure not provided)** #### Response Example ```json { "example": "response body" } ``` ``` -------------------------------- ### Get Product Classification Source: https://synf.co/restapi Retrieves the structure of product classes. Supports filtering by product class ID and language. ```APIDOC ## GET /Metadata/Products/Classification ### Description Retrieves the structure of product classes. Supports filtering by product class ID and language. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/Products/Classification ### Parameters #### Query Parameters - **productClass** (integer) - Optional - Comma separated list of product class IDs to filter. - **languages** (string) - Optional - Comma separated list of languages to filter translations. ### Request Example ```http GET https://connect.syncforce.io/Metadata/Products/Classification?productclass=2,4&languages=en,nl Authorization: Bearer [token] ``` ### Response #### Success Response (200) - **(structure not provided)** #### Response Example ```json { "example": "response body" } ``` ``` -------------------------------- ### Get Access Token Source: https://synf.co/restapi Acquires an access token by sending a POST request to the 'auth/access_token' endpoint with a valid security code in the request body. ```APIDOC ## Get Access Token ### Description Acquires an access token by sending a POST request to the 'auth/access_token' endpoint with a valid security code in the request body. ### Method POST ### Endpoint https://connect.syncforce.io/auth/access_token ### Parameters #### Request Body - **grant_type** (string) - Required - Must be "authorization_code" - **code** (string) - Required - The user's SyncForce securityCode ### Request Example ```json { "grant_type": "authorization_code", "code": "[securityCode]" } ``` ### Response #### Success Response (200) - **accessToken** (string) - The obtained Bearer token. - **tokenType** (string) - The type of token, typically "Bearer". - **expiresIn** (integer) - The token's validity period in seconds. - **refreshToken** (string) - A token to refresh the access token. #### Response Example ```json { "accessToken": "eyJhbAbcOiABCzI1AbcsInAbcCI6IkpABCJ9…[]", "tokenType": "Bearer", "expiresIn": 604800, "refreshToken": "eyJhbAbcOiABCzI1AbcsInAbcCI6IkpABCJ9…[]" } ``` ``` -------------------------------- ### Get Access Token Source: https://synf.co/restapi Obtain an access token for authenticating API requests. This is typically done by providing credentials. ```APIDOC ## Get Access Token ### Description Requests an access token for API authentication. ### Method POST ### Endpoint /oauth/token ### Parameters #### Request Body - **grant_type** (string) - Required - Typically 'client_credentials' or 'password'. - **client_id** (string) - Required - Your application's client ID. - **client_secret** (string) - Required - Your application's client secret. - **username** (string) - Optional - User's username (if using password grant). - **password** (string) - Optional - User's password (if using password grant). ### Response #### Success Response (200) - **access_token** (string) - The obtained access token. - **token_type** (string) - The type of token (e.g., 'Bearer'). - **expires_in** (integer) - The token's expiration time in seconds. #### Response Example { "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "token_type": "Bearer", "expires_in": 3600 } ``` -------------------------------- ### Get Success Stories Themes Source: https://synf.co/restapi Retrieves a list of themes associated with success stories. Supports filtering by language. ```APIDOC ## GET /Metadata/SuccessStories/Themes ### Description Retrieves a list of themes associated with success stories. Supports filtering by language. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/SuccessStories/Themes ### Parameters #### Query Parameters - **languages** (string) - Optional - Comma separated list of languages to filter translations. ### Request Example ```http GET https://connect.syncforce.io/Metadata/SuccessStories/Themes?languages=en,nl Authorization: Bearer [token] ``` ### Response #### Success Response (200) - **(structure not provided)** #### Response Example ```json { "example": "response body" } ``` ``` -------------------------------- ### Get Specific Success Story Source: https://synf.co/restapi Retrieve details for a single success story by its ID. ```APIDOC ## Get Specific Success Story ### Description Retrieves detailed information about a specific success story using its unique identifier. ### Method GET ### Endpoint /successstories/{storyId} ### Parameters #### Path Parameters - **storyId** (string) - Required - The unique identifier of the success story. ### Response #### Success Response (200) - **story** (object) - The detailed information for the requested success story. #### Response Example { "story": { "id": "ss_001", "title": "Client X Achieves Record Growth", "content": "Details about how Client X used SyncForce to achieve growth..." } } ``` -------------------------------- ### Get Specific Product Master by Code Source: https://synf.co/restapi Retrieves a specific product master using its Code. Supports filtering by modification date and status. ```APIDOC ## Get Specific Product Master by Code ### Description Retrieves a specific product master by its Code. Supports filtering of its product variants by modification date and status. ### Method GET ### Endpoint https://connect.syncforce.io/Products/Masters/Code/{code} ### Headers - Authorization: Bearer [token] ### Path Parameters - **code** (string) - Required - The code identifier for the product master. ### Query Parameters - **modifiedSince** (ISO 8601 datetime) - Optional - Lists product variants of this master modified after this datetime. - **status** (released, archived) - Optional - Only show Product variants with this product status. Only 1 option possible. ### Request Example ``` https://connect.syncforce.io/Products/Masters/Code/100042?modifiedSince=2022-08-01T13:00&status=released ``` ### Response - **204 No Content**: Returned when no product master is found with the given identifier. - **300 Multiple Choices**: Returned if multiple product masters are found with the same Code, providing a list of matching product masters. ``` -------------------------------- ### Get Propositions Source: https://synf.co/restapi Retrieve a list of propositions. This endpoint may support filtering by modification date. ```APIDOC ## Get Propositions ### Description Retrieves a list of propositions. ### Method GET ### Endpoint /propositions ### Parameters #### Query Parameters - **modified_since** (string) - Optional - Filters propositions modified after a specific date (e.g., YYYY-MM-DD). - **schema_version** (string) - Optional - Specifies the desired schema version for the proposition data. ### Response #### Success Response (200) - **propositions** (array) - A list of proposition objects. #### Response Example { "propositions": [ { "id": "prop_xyz", "name": "Summer Sale Proposition" } ] } ``` -------------------------------- ### Get Product Attributes Source: https://synf.co/restapi Retrieves all attribute groups, attributes, and units with name translations for products. Product-specific attributes and values are available in the specific product endpoint. ```APIDOC ## GET Product Attributes ### Description For products, all attribute groups, attributes, and units with name translations are available. The product specific attributes and values are available in the specific product endpoint. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/Products/Attributes ### Query Parameters - **includeValues** (boolean) - Optional - Show or hide attribute values - **targetGroup** (integer, supports comma separated list) - Optional - Only show attributes for these target groups - **languages** (language, use language code, supports comma separated list) - Optional - Only show translations for these languages - **level** (string, supports comma separated list) - Optional - Only show attributes belonging to these levels (Master, Variant, SupplyLocation, ExternalClassification, ShippingUnit) ### Headers - "Authorization": “Bearer [token]” ### Example Request URL https://connect.syncforce.io/Metadata/Products/Attributes?includeValues=true&targetGroup=1113,1623&languages=en,nl ``` -------------------------------- ### Get Product Trade Categories Source: https://synf.co/restapi Lists all products with their trade categories. Supports filtering by modification date, status, and trade category ID. ```APIDOC ## GET /Products/TradeCategories ### Description Lists all products with their trade categories. ### Method GET ### Endpoint https://connect.syncforce.io/Products/TradeCategories ### Headers Authorization: Bearer [token] ### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters trade categories modified after this date, including deleted ones. - **status** (released, archived) - Optional - Filters by product status. Only one option is possible. - **tradeCategoryId** (integer, supports comma separated list) - Optional - Filters by specific trade category IDs. ### Example Request URL https://connect.syncforce.io/Products/TradeCategories?modifiedSince=2022-08-01T13:00&status=released&tradeCategoryId=1,2,5 ``` -------------------------------- ### Get Product Trade Hierarchies Source: https://synf.co/restapi Retrieves all trade hierarchies associated with a specific product. Supports filtering by modification date. ```APIDOC ## GET /Products/{UMID}/TradeHierarchies ### Description Retrieves all trade hierarchies belonging to a specific product. ### Method GET ### Endpoint https://connect.syncforce.io/Products/{UMID}/TradeHierarchies ### Headers Authorization: Bearer [token] ### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters trade hierarchies modified after this date. ### Example Request URL https://connect.syncforce.io/Products/957bcb30-7fbd-4db8-916d-e0267e9e84ac/TradeHierarchies?modifiedSince=2022-08-01T13:00 ``` -------------------------------- ### Get Product Master Digital Assets Source: https://synf.co/restapi Retrieves all digital assets associated with a specific product master. Supports filtering by modification date and asset type, subtype, or role. ```APIDOC ## Get Product Master Digital Assets ### Description Retrieves all digital assets belonging to a specific product master. Supports filtering by modification date and asset type, subtype, or role. ### Method GET ### Endpoint https://connect.syncforce.io/Products/Masters/{PMID}/DigitalAssets ### Headers - Authorization: Bearer [token] ### Path Parameters - **PMID** (string) - Required - The unique identifier for the product master. ### Query Parameters - **modifiedSince** (ISO 8601 datetime) - Optional - Only shows Digital Assets with a ChangeDate (in CET/CEST) after the modifiedSince datetime. - **typeId** (integer, supports comma separated list) - Optional - Filter by asset type ID. - **subTypeId** (integer, supports comma separated list) - Optional - Filter by asset subtype ID. - **roleId** (integer, supports comma separated list) - Optional - Filter by asset role ID. ### Note - The product master ‘main’ image will return regardless of the type and role filters. ### Request Example ``` https://connect.syncforce.io/Products/Masters/73f3e183-b2f6-417d-ab64-6feaf3815bfc/DigitalAssets?modifiedSince=2021-12-01T13:00&typeId=1 ``` ``` -------------------------------- ### Get Proposition Digital Assets Source: https://synf.co/restapi Retrieves all digital assets for a specific proposition, with options for filtering by modification date and various ID types. ```APIDOC ## Get Proposition Digital Assets ### Description Retrieves all digital assets belonging to a specific proposition. This endpoint allows filtering by modification date and specific type, sub-type, and role IDs. ### Method GET ### Endpoint https://connect.syncforce.io/Propositions/{GUID}/DigitalAssets ### Parameters #### Path Parameters - **GUID** (string) - Required - The unique identifier of the proposition. #### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters results to include digital assets changed after this datetime (CET/CEST). - **typeId** (integer) - Optional - Supports a comma-separated list of type IDs. - **subTypeId** (integer) - Optional - Supports a comma-separated list of sub-type IDs. - **roleId** (integer) - Optional - Supports a comma-separated list of role IDs. ### Headers - Authorization: Bearer [token] ### Request Example URL ``` https://connect.syncforce.io/Propositions/957bcb30-7fbd-4db8-916d-e0267e9e84ac/DigitalAssets?modifiedSince=2021-12-01T13:00&typeId=1&subTypeId=2,5 ``` ### Response #### Success Response (200) Returns a list of digital assets associated with the proposition. ``` -------------------------------- ### Get Specific Digital Asset Source: https://synf.co/restapi Retrieves a single digital asset by its UDAI. Supports filtering by modification date and requesting a specific schema version. ```APIDOC ## GET /DigitalAssets/{UDAI} ### Description Retrieves a specific digital asset identified by its UDAI. Supports filtering by modification date and requesting a specific schema version. ### Method GET ### Endpoint https://connect.syncforce.io/DigitalAssets/{UDAI} ### Parameters #### Path Parameters - **UDAI** (string) - Required - The Unique Digital Asset Identifier. #### Query Parameters - **modifiedSince** (datetime) - Optional - Filters asset files modified after this ISO 8601 formatted datetime. - **schema** (string) - Optional - Requests a specific schema version for the asset's XML structure. ### Request Example ```http GET https://connect.syncforce.io/DigitalAssets/52dcebb3-6eb1-4d59-8fbe-4e39fdba4a17?modifiedSince=2022-02-20T16:00&schema=1 Header: "Authorization": “Bearer [token]” ``` ### Response #### Success Response (200) - Returns the digital asset data, potentially in the requested schema version. #### Error Response - **204 (No Content)** - Returned when no digital asset is found with the given UDAI. ``` -------------------------------- ### Get Digital Assets Metadata Source: https://synf.co/restapi Fetches metadata for digital assets, including generic types and subtypes with available translations. This endpoint provides IDs that reference these properties. ```APIDOC ## GET Digital Assets Metadata ### Description For digital assets, there are generic types and subtypes with translations available. The digital assets only reference the Id for these properties, all these properties can be retrieved using this endpoint. ### Method GET ### Endpoint https://connect.syncforce.io/Metadata/DigitalAssets ### Headers - "Authorization": “Bearer [token]” ``` -------------------------------- ### Get All Success Stories Source: https://synf.co/restapi Retrieves all success stories that are marked as 'Final' and are available for the authenticated user's group. Supports filtering by languages, segments, themes, regions, and inclusion of on-hold projects. ```APIDOC ## Get All Success Stories ### Description Request all success stories available for the user doing the requests. Available means: Status = Final and success story is available for the REST API user’s user group. ### Method GET ### Endpoint https://connect.syncforce.io/SuccessStories ### Headers - Authorization: Bearer [token] ### Query Parameters - **languages** (string) - Optional - Supports comma-separated list. Only show translations for these languages. - **segments** (integer) - Optional - Supports comma-separated list. - **themes** (integer) - Optional - Supports comma-separated list. - **regions** (integer) - Optional - Supports comma-separated list. - **includeOnHold** (boolean) - Optional - On hold projects are not returned by default. - **isSpotLight** (boolean) - Optional ### Example Request URL https://connect.syncforce.io/SuccessStories?languages=en,nl&segments=12®ions=1&themes=1,2&includeOnHold=false&isSpotLight=true ``` -------------------------------- ### Get Access Token Request Body Source: https://synf.co/restapi Send this JSON body in a POST request to the 'auth/access_token' endpoint to obtain an access token using a security code. ```json { "grant_type": "authorization_code", "code": "[securityCode]"} ``` -------------------------------- ### Get Product Trade Status Source: https://synf.co/restapi Lists all products with their trade statuses, grouped by market and customer segment. Supports filtering by modification date, status, market ID, and customer segment ID. ```APIDOC ## GET /Products/TradeStatus ### Description Lists all products with their trade statuses, grouped per market and customer segment. ### Method GET ### Endpoint https://connect.syncforce.io/Products/TradeStatus ### Headers Authorization: Bearer [token] ### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters trade statuses modified after this date. - **status** (released, archived) - Optional - Filters by product status. Only one option is possible. - **marketId** (integer, supports comma separated list) - Optional - Filters by market IDs. - **customerSegmentId** (integer, supports comma separated list) - Optional - Filters by customer segment IDs. ### Example Request URL https://connect.syncforce.io/Products/TradeStatus?modifiedSince=2022-08-01T13:00&status=Released&marketId=1,2&customerSegmentId=1,4 ``` -------------------------------- ### Get Digital Assets by Proposition Category Source: https://synf.co/restapi Retrieves all digital assets belonging to a specific proposition category. Supports filtering by modification date and various type and role IDs. ```APIDOC ## GET /Propositions/{GUID}/{GUID}/DigitalAssets ### Description Retrieves all digital assets belonging to a specific proposition category. Supports filtering by modification date and various type and role IDs. ### Method GET ### Endpoint https://connect.syncforce.io/Propositions/{GUID}/{GUID}/DigitalAssets ### Parameters #### Path Parameters - **GUID** (string) - Required - The first GUID represents the Proposition. - **GUID** (string) - Required - The second GUID represents the specific category within the Proposition. #### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Lists all digital assets with a ChangeDate (in CET/CEST) after the modifiedSince datetime. - **typeId** (integer) - Optional - Supports comma separated list. - **subTypeId** (integer) - Optional - Supports comma separated list. - **roleId** (integer) - Optional - Supports comma separated list. ### Request Example ``` https://connect.syncforce.io/Propositions/957bcb30-7fbd-4db8-916d-e0267e9e84ac/fff11db0-3784-430f-998f-077146ba1e87/DigitalAssets?modifiedSince=2021-12-01T13:00&typeId=1&subTypeId=2,5 ``` ### Headers - **Authorization**: Bearer [token] ``` -------------------------------- ### Get Specific Success Story by ID Source: https://synf.co/restapi Retrieves a single success story by its unique Success Story Identifier (SSID). Supports filtering by languages and by modification date. ```APIDOC ## Get Specific Success Story by ID ### Description Request 1 specific success story based on the Success Story Identifier (GUID) from the ‘SuccessStories’ endpoint. ### Method GET ### Endpoint https://connect.syncforce.io/SuccessStories/{SSID} ### Headers - Authorization: Bearer [token] ### Path Parameters - **SSID** (GUID) - Required - The unique identifier of the success story. ### Query Parameters - **languages** (string) - Optional - Supports comma-separated list. Only show translations for these languages. - **modifiedSince** (datetime) - Optional - ISO 8601 formatted datetime. Only shows Related Products with a ChangeDate (in UTC) after the modifiedSince datetime. ### Example Request URL https://connect.syncforce.io/SuccessStories/9b2d09e2-3d3e-4899-85fc-0c992e04a1bf?languages=en,nl&modifiedSince=2022-08-01T13:00 ``` -------------------------------- ### Authorization via form-type content Source: https://synf.co/restapi For access token get and refresh requests, it's possible to deliver the required Post Body as a form-type content using the x-www-form-urlencoded body type. ```APIDOC ## Authorization via form-type content ### Description For the access token get and refresh requests, it’s possible to deliver the required Post Body as if it’s a form, using the x-www-form-urlencoded body type (also noted as Content-Type: application/x-www-form-urlencoded). This still requires the same values, and returns the same response. ### Method POST ### Endpoint https://connect.syncforce.io/auth/access_token ### Parameters #### Request Body - **grant_type** (string) - Required - Either "authorization_code" or "refresh_token" - **code** (string) - Required if grant_type is "authorization_code" - The user's SyncForce securityCode - **Refresh_token** (string) - Required if grant_type is "refresh_token" - The refresh token obtained previously ### Request Example (for Get Access Token) ``` grant_type=authorization_code&code=[securityCode] ``` ### Request Example (for Refresh Access Token) ``` grant_type=refresh_token&Refresh_token=eyJhbAbcOiABCzI1AbcsInAbcCI6IkpABCJ9…[] ``` ### Response #### Success Response (200) - **accessToken** (string) - The obtained Bearer token. - **tokenType** (string) - The type of token, typically "Bearer". - **expiresIn** (integer) - The token's validity period in seconds. - **refreshToken** (string) - A token to refresh the access token. #### Response Example ```json { "accessToken": "eyJhbAbcOiABCzI1AbcsInAbcCI6IkpABCJ9…[]", "tokenType": "Bearer", "expiresIn": 604800, "refreshToken": "eyJhbAbcOiABCzI1AbcsInAbcCI6IkpABCJ9…[]" } ``` ``` -------------------------------- ### Get Specific Proposition Category Source: https://synf.co/restapi Retrieves a specific proposition category by its GUID, with options to include underlying categories and filter by modification date, schema, and material type. ```APIDOC ## Get Specific Proposition Category ### Description Retrieves a specific proposition category using its GUID. This endpoint allows for including underlying categories and filtering by modification dates, schema version, and material types. ### Method GET ### Endpoint https://connect.syncforce.io/Propositions/{GUID}/{GUID} ### Parameters #### Path Parameters - **GUID** (string) - Required - The unique identifier of the proposition. - **GUID** (string) - Required - The unique identifier of the category within the proposition. #### Query Parameters - **modifiedSince** (ISO 8601 formatted datetime) - Optional - Filters results to include items changed after this datetime. Note: Product change dates are in UTC, Digital Asset change dates are in CET/CEST. - **includeCategories** (boolean) - Optional - If true, includes underlying categories. - **schema** (integer) - Optional - Requests a specific schema version. - **materialType** (string) - Optional - Supports a comma-separated list of material types (e.g., "FinishedGood,PackagingComponent,FoodComponent"). ### Headers - Authorization: Bearer [token] ### Request Example URL ``` https://connect.syncforce.io/Propositions/957bcb30-7fbd-4db8-916d-e0267e9e84ac/fff11db0-3784-430f-998f-077146ba1e87?modifiedSince=2021-01-01T12:00&includeCategories=true&schema=1&materialType=FinishedGood ``` ### Response #### Success Response (200) Returns the proposition category details. The structure depends on the requested schema and filters. #### Error Response (204) No Content: Returned when no proposition category is found with the given GUID. ```