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
(Ruby) Akeneo: Create New ProductDemonstrates how to create a new product.
require '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",true) 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(false) # Show the JSON to be sent.. print json.emit() + "\n"; url = "http://pim.my-akeneo-site.com/api/rest/v1/products" # resp is a CkHttpResponse resp = http.PostJson3(url,"application/json",json) if (http.get_LastMethodSuccess() != true) print http.lastErrorText() + "\n"; exit end print "Response Status Code: " + resp.get_StatusCode().to_s() + "\n"; print "Response Body: " + "\n"; print resp.bodyStr() + "\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 + "\n"; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.