Sample code for 30+ languages & platforms
Dart

Akeneo: Create New Family

See more HTTP Misc Examples

Demonstrates how to create a new family.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

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

  final http = CkHttp();

  // 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"
  //   }
  // }
  // 
  final json = CkJsonObject();
  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..
  print(json.emit());

  final url = 'http://pim.my-akeneo-site.com/api/rest/v1/families';
  final resp = CkHttpResponse();
  try {
    http.httpJson('POST', url, json, 'application/json', resp);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

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