Sample code for 30+ languages & platforms
React Native

Akeneo: Create New Family

See more HTTP Misc Examples

Demonstrates how to create a new family.

Chilkat React Native Downloads

React Native
import { Http, HttpResponse, JsonObject } from '@chilkat/react-native'

async function chilkatExample() {
  // This example requires the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  const http = new Http();

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

  // {
  //   "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"
  //   }
  // }
  // 
  const json = new JsonObject();
  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.emitCompact = false;
  // Show the JSON to be sent..
  console.log(json.emit());

  const url = 'http://pim.my-akeneo-site.com/api/rest/v1/families';
  const resp = new HttpResponse();
  try {
    await http.httpJsonAsync('POST', url, json, 'application/json', resp);
  } catch {
    console.log(http.lastErrorText);
    return;
  }

  console.log(`Response Status Code: ${resp.statusCode}`);
  console.log('Response Body: ');
  console.log(resp.bodyStr);
}