Sample code for 30+ languages & platforms
Go

Akeneo: Create New Family

See more HTTP Misc Examples

Demonstrates how to create a new family.

Chilkat Go Downloads

Go
    success := false

    // This example requires the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    http := chilkat.NewHttp()

    // Use your previously obtained access token.
    // See Get Akeneo Access Token
    http.SetAuthToken("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

    // {
    //   "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"
    //   }
    // }
    // 
    json := chilkat.NewJsonObject()
    json.UpdateString("code","caps")
    json.UpdateString("attributes[0]","sku")
    json.UpdateString("attributes[1]","name")
    json.UpdateString("attributes[2]","description")
    json.UpdateString("attributes[3]","price")
    json.UpdateString("attributes[4]","color")
    json.UpdateString("attributes[5]","picture")
    json.UpdateString("attribute_as_label","name")
    json.UpdateString("attribute_as_image","picture")
    json.UpdateString("attribute_requirements.ecommerce[0]","sku")
    json.UpdateString("attribute_requirements.ecommerce[1]","name")
    json.UpdateString("attribute_requirements.ecommerce[2]","description")
    json.UpdateString("attribute_requirements.ecommerce[3]","price")
    json.UpdateString("attribute_requirements.ecommerce[4]","color")
    json.UpdateString("attribute_requirements.tablet[0]","sku")
    json.UpdateString("attribute_requirements.tablet[1]","name")
    json.UpdateString("attribute_requirements.tablet[2]","description")
    json.UpdateString("attribute_requirements.tablet[3]","price")
    json.UpdateString("labels.en_US","Caps")
    json.UpdateString("labels.fr_FR","Casquettes")

    json.SetEmitCompact(false)
    // Show the JSON to be sent..
    fmt.Println(*json.Emit())

    url := "http://pim.my-akeneo-site.com/api/rest/v1/families"
    resp := chilkat.NewHttpResponse()
    success = http.HttpJson("POST",url,json,"application/json",resp)
    if success == false {
        fmt.Println(http.LastErrorText())
        http.DisposeHttp()
        json.DisposeJsonObject()
        resp.DisposeHttpResponse()
        return
    }

    fmt.Println("Response Status Code: ", resp.StatusCode())
    fmt.Println("Response Body: ")
    fmt.Println(resp.BodyStr())

    http.DisposeHttp()
    json.DisposeJsonObject()
    resp.DisposeHttpResponse()