Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Perl) Akeneo: Create New ProductDemonstrates how to create a new product.
use chilkat(); # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $http = chilkat::CkHttp->new(); # Use your previously obtained access token. # See Get Akeneo Access Token $http->put_AuthToken("access_token"); # Build the following JSON to be sent in the request body: # Use this online tool to generate the code from sample JSON: # Generate Code to Create JSON # { # "identifier": "top", # "enabled": true, # "family": "tshirt", # "categories": [ # "summer_collection" # ], # "groups": [], # "parent": null, # "values": { # "name": [ # { # "data": "Top", # "locale": "en_US", # "scope": null # }, # { # "data": "Dbardeur", # "locale": "fr_FR", # "scope": null # } # ], # "description": [ # { # "data": "Summer top", # "locale": "en_US", # "scope": "ecommerce" # }, # { # "data": "Top", # "locale": "en_US", # "scope": "tablet" # }, # { # "data": "Dbardeur pour l't", # "locale": "fr_FR", # "scope": "ecommerce" # }, # { # "data": "Dbardeur", # "locale": "fr_FR", # "scope": "tablet" # } # ], # "price": [ # { # "locale": null, # "scope": null, # "data": [ # { # "amount": "150.5", # "currency": "EUR" # }, # { # "amount": "150", # "currency": "USD" # } # ] # } # ], # "color": [ # { # "locale": null, # "scope": null, # "data": "black" # } # ], # "size": [ # { # "locale": null, # "scope": null, # "data": "m" # } # ] # }, # "associations": { # "PACK": { # "products": [ # "sunglass" # ], # "groups": [] # } # } # } # $json = chilkat::CkJsonObject->new(); $json->UpdateString("identifier","top"); $json->UpdateBool("enabled",1); $json->UpdateString("family","tshirt"); $json->UpdateString("categories[0]","summer_collection"); $json->UpdateNewArray("groups"); $json->UpdateNull("parent"); $json->UpdateString("values.name[0].data","Top"); $json->UpdateString("values.name[0].locale","en_US"); $json->UpdateNull("values.name[0].scope"); $json->UpdateString("values.name[1].data","Dbardeur"); $json->UpdateString("values.name[1].locale","fr_FR"); $json->UpdateNull("values.name[1].scope"); $json->UpdateString("values.description[0].data","Summer top"); $json->UpdateString("values.description[0].locale","en_US"); $json->UpdateString("values.description[0].scope","ecommerce"); $json->UpdateString("values.description[1].data","Top"); $json->UpdateString("values.description[1].locale","en_US"); $json->UpdateString("values.description[1].scope","tablet"); $json->UpdateString("values.description[2].data","Dbardeur pour l't"); $json->UpdateString("values.description[2].locale","fr_FR"); $json->UpdateString("values.description[2].scope","ecommerce"); $json->UpdateString("values.description[3].data","Dbardeur"); $json->UpdateString("values.description[3].locale","fr_FR"); $json->UpdateString("values.description[3].scope","tablet"); $json->UpdateNull("values.price[0].locale"); $json->UpdateNull("values.price[0].scope"); $json->UpdateString("values.price[0].data[0].amount","150.5"); $json->UpdateString("values.price[0].data[0].currency","EUR"); $json->UpdateString("values.price[0].data[1].amount","150"); $json->UpdateString("values.price[0].data[1].currency","USD"); $json->UpdateNull("values.color[0].locale"); $json->UpdateNull("values.color[0].scope"); $json->UpdateString("values.color[0].data","black"); $json->UpdateNull("values.size[0].locale"); $json->UpdateNull("values.size[0].scope"); $json->UpdateString("values.size[0].data","m"); $json->UpdateString("associations.PACK.products[0]","sunglass"); $json->UpdateNewArray("associations.PACK.groups"); $json->put_EmitCompact(0); # Show the JSON to be sent.. print $json->emit() . "\r\n"; $url = "http://pim.my-akeneo-site.com/api/rest/v1/products"; # resp is a HttpResponse $resp = $http->PostJson3($url,"application/json",$json); if ($http->get_LastMethodSuccess() != 1) { print $http->lastErrorText() . "\r\n"; exit; } print "Response Status Code: " . $resp->get_StatusCode() . "\r\n"; print "Response Body: " . "\r\n"; print $resp->bodyStr() . "\r\n"; # The akeneo response will include a "Location" header, such as the following: # HTTP/1.1 201 Created # Date: Tue, 22 Jan 2019 10:36:35 GMT # Server: Apache/2 # X-Powered-By: PHP/7.1.25 # Cache-Control: max-age=0, private, must-revalidate, no-cache, private # Set-Cookie: abcdefg; path=/; HttpOnly # Location: http://xyz.example.com/api/rest/v1/products/L0000123 # Vary: User-Agent # Content-Length: 0 # Keep-Alive: timeout=2, max=100 # Connection: Keep-Alive # Content-Type: application/json # Get the location header using resp.GetHeaderField $location = $resp->getHeaderField("Location"); print "Location: " . $location . "\r\n"; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.