Sample code for 30+ languages & platforms
Objective-C

Akeneo: Create New Attribute

See more HTTP Misc Examples

Demonstrates how to create a new attribute.

Chilkat Objective-C Downloads

Objective-C
#import <CkoHttp.h>
#import <CkoJsonObject.h>
#import <NSString.h>
#import <CkoHttpResponse.h>

BOOL success = NO;

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

CkoHttp *http = [[CkoHttp alloc] init];

// 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": "release_date",
//   "type": "pim_catalog_date",
//   "group": "marketing",
//   "unique": false,
//   "useable_as_grid_filter": true,
//   "allowed_extensions": [],
//   "metric_family": null,
//   "default_metric_unit": null,
//   "reference_data_name": null,
//   "available_locales": [],
//   "max_characters": null,
//   "validation_rule": null,
//   "validation_regexp": null,
//   "wysiwyg_enabled": null,
//   "number_min": null,
//   "number_max": null,
//   "decimals_allowed": null,
//   "negative_allowed": null,
//   "date_min": "2017-06-28T08:00:00",
//   "date_max": "2017-08-08T22:00:00",
//   "max_file_size": null,
//   "minimum_input_length": null,
//   "sort_order": 1,
//   "localizable": false,
//   "scopable": false,
//   "labels": {
//     "en_US": "Sale date",
//     "fr_FR": "Date des soldes"
//   }
// }

CkoJsonObject *json = [[CkoJsonObject alloc] init];
[json UpdateString: @"code" value: @"release_date"];
[json UpdateString: @"type" value: @"pim_catalog_date"];
[json UpdateString: @"group" value: @"marketing"];
[json UpdateBool: @"unique" value: NO];
[json UpdateBool: @"useable_as_grid_filter" value: YES];
[json UpdateNewArray: @"allowed_extensions"];
[json UpdateNull: @"metric_family"];
[json UpdateNull: @"default_metric_unit"];
[json UpdateNull: @"reference_data_name"];
[json UpdateNewArray: @"available_locales"];
[json UpdateNull: @"max_characters"];
[json UpdateNull: @"validation_rule"];
[json UpdateNull: @"validation_regexp"];
[json UpdateNull: @"wysiwyg_enabled"];
[json UpdateNull: @"number_min"];
[json UpdateNull: @"number_max"];
[json UpdateNull: @"decimals_allowed"];
[json UpdateNull: @"negative_allowed"];
[json UpdateString: @"date_min" value: @"2017-06-28T08:00:00"];
[json UpdateString: @"date_max" value: @"2017-08-08T22:00:00"];
[json UpdateNull: @"max_file_size"];
[json UpdateNull: @"minimum_input_length"];
[json UpdateNumber: @"sort_order" numericStr: @"1"];
[json UpdateBool: @"localizable" value: NO];
[json UpdateBool: @"scopable" value: NO];
[json UpdateString: @"labels.en_US" value: @"Sale date"];
[json UpdateString: @"labels.fr_FR" value: @"Date des soldes"];

json.EmitCompact = NO;
// Show the JSON to be sent..
NSLog(@"%@",[json Emit]);

NSString *url = @"http://pim.my-akeneo-site.com/api/rest/v1/attributes";
CkoHttpResponse *resp = [[CkoHttpResponse alloc] init];
success = [http HttpJson: @"POST" url: url json: json contentType: @"application/json" response: resp];
if (success == NO) {
    NSLog(@"%@",http.LastErrorText);
    return;
}

NSLog(@"%@%d",@"Response Status Code: ",[resp.StatusCode intValue]);
NSLog(@"%@",@"Response Body: ");
NSLog(@"%@",resp.BodyStr);