For non required fields, you can either omit from the JSON string or set it to a default value
(e.g. String = "", Integer/Double = 0, Boolean = false, DateTime = 1900-01-01T00:00:00.000Z)
{"auth": {"api_username": "", "api_password": "", "api_key": "", "company_no": 0, "username": "", "password": "", "timezone_offset": 0, "auth_type": "", "system_name": "", "system_company_no": 0 }, "products": [{"attribute_assign_no": 0, "business_name": "", "cascadeToVariations": false, "category_no": 0, "inventory_no": 0, "relation_type": "", "category_name": "", "media_no": 0, "pricing_no": 0, "product_flag": "", "product_sku": "", "reference_type": "", "description": "", "inventory_total": 0, "media_title": "", "product_brief": "", "reference_no": 0, "attribute_value": "", "inventory_type": "", "media_location": "", "product_no": 0, "category_assign_no": 0, "inventory": 0, "main": "", "order_no": 0, "price_type": "", "stock_date": "1/1/1900 12:00 AM", "attribute_no": 0, "customer_type": "", "media_type": "", "product_long": "", "product_short": "", "attribute_name": "", "main_photo": "", "media_description": "", "product_description": "", "quantity_discount": 0, "customer_no": 0, "field_type": "", "price": 0, "field_values": "", "msrp_price": 0, "price_description": "", "field_help": "", "start_date": "1/1/1900 12:00 AM", "visibility": "", "end_date": "1/1/1900 12:00 AM", "flag_limited": "", "created_on": "1/1/1900 12:00 AM", "flag_backorders": "", "modified_on": "1/1/1900 12:00 AM", "product_type": "", "meta_keywords": "", "user_no": 0, "company_no": 0, "meta_description": "", "tax_rate": 0, "product_weight": 0, "product_above": 0, "business_no": 0 }] }
{"auth": {"api_username": "", "api_password": "", "api_key": "", "company_no": 0, "username": "", "password": "" }, "products": [{"attribute_assign_no": 0, "business_name": "", "cascadeToVariations": false, "category_no": 0, "inventory_no": 0, "relation_type": "", "category_name": "", "media_no": 0, "pricing_no": 0, "product_flag": "", "product_sku": "", "reference_type": "", "description": "", "inventory_total": 0, "media_title": "", "product_brief": "", "reference_no": 0, "attribute_value": "", "inventory_type": "", "media_location": "", "product_no": 0, "category_assign_no": 0, "inventory": 0, "main": "", "order_no": 0, "price_type": "", "stock_date": "1/1/1900 12:00 AM", "attribute_no": 0, "customer_type": "", "media_type": "", "product_long": "", "product_short": "", "attribute_name": "", "main_photo": "", "media_description": "", "product_description": "", "quantity_discount": 0, "customer_no": 0, "field_type": "", "price": 0, "field_values": "", "msrp_price": 0, "price_description": "", "field_help": "", "start_date": "1/1/1900 12:00 AM", "visibility": "", "end_date": "1/1/1900 12:00 AM", "flag_limited": "", "created_on": "1/1/1900 12:00 AM", "flag_backorders": "", "modified_on": "1/1/1900 12:00 AM", "product_type": "", "meta_keywords": "", "user_no": 0, "company_no": 0, "meta_description": "", "tax_rate": 0, "product_weight": 0, "product_above": 0, "business_no": 0 }] }
This sample code is to generate a function leveraging existing core functions you've already built.
func getAPIKit() -> (url: String, dict: Dictionary<String, AnyObject>) {
var attribute_assign_no = 0
var business_name = ""
var cascadeToVariations = false
var category_no = 0
var inventory_no = 0
var relation_type = ""
var category_name = ""
var media_no = 0
var pricing_no = 0
var product_flag = ""
var product_sku = ""
var reference_type = ""
var description = ""
var inventory_total = 0
var media_title = ""
var product_brief = ""
var reference_no = 0
var attribute_value = ""
var inventory_type = ""
var media_location = ""
var product_no = 0
var category_assign_no = 0
var inventory = 0
var main = ""
var order_no = 0
var price_type = ""
var stock_date = "1/1/1900 12:00 AM"
var attribute_no = 0
var customer_type = ""
var media_type = ""
var product_long = ""
var product_short = ""
var attribute_name = ""
var main_photo = ""
var media_description = ""
var product_description = ""
var quantity_discount = 0
var customer_no = 0
var field_type = ""
var price = 0
var field_values = ""
var msrp_price = 0
var price_description = ""
var field_help = ""
var start_date = "1/1/1900 12:00 AM"
var visibility = ""
var end_date = "1/1/1900 12:00 AM"
var flag_limited = ""
var created_on = "1/1/1900 12:00 AM"
var flag_backorders = ""
var modified_on = "1/1/1900 12:00 AM"
var product_type = ""
var meta_keywords = ""
var user_no = 0
var company_no = 0
var meta_description = ""
var tax_rate = 0
var product_weight = 0
var product_above = 0
var business_no = 0
let url = "https://api.peoplevine.com/commerce.asmx/createProducts"
let key = "products"
let productsDict: Dictionary<String, AnyObject> = [["attribute_assign_no": attribute_assign_no, "business_name": business_name, "cascadeToVariations": cascadeToVariations, "category_no": category_no, "inventory_no": inventory_no, "relation_type": relation_type, "category_name": category_name, "media_no": media_no, "pricing_no": pricing_no, "product_flag": product_flag, "product_sku": product_sku, "reference_type": reference_type, "description": description, "inventory_total": inventory_total, "media_title": media_title, "product_brief": product_brief, "reference_no": reference_no, "attribute_value": attribute_value, "inventory_type": inventory_type, "media_location": media_location, "product_no": product_no, "category_assign_no": category_assign_no, "inventory": inventory, "main": main, "order_no": order_no, "price_type": price_type, "stock_date": stock_date, "attribute_no": attribute_no, "customer_type": customer_type, "media_type": media_type, "product_long": product_long, "product_short": product_short, "attribute_name": attribute_name, "main_photo": main_photo, "media_description": media_description, "product_description": product_description, "quantity_discount": quantity_discount, "customer_no": customer_no, "field_type": field_type, "price": price, "field_values": field_values, "msrp_price": msrp_price, "price_description": price_description, "field_help": field_help, "start_date": start_date, "visibility": visibility, "end_date": end_date, "flag_limited": flag_limited, "created_on": created_on, "flag_backorders": flag_backorders, "modified_on": modified_on, "product_type": product_type, "meta_keywords": meta_keywords, "user_no": user_no, "company_no": company_no, "meta_description": meta_description, "tax_rate": tax_rate, "product_weight": product_weight, "product_above": product_above, "business_no": business_no ] ]
let finalDict = User.getAuthDict(dictToAdd: productsDict, dictKey: key)
return (url, finalDict)
}
To get started we reccomend that you download the Alamofire project to simplify integration: https://github.com/Alamofire/Alamofire, in addition to SwiftyJSON: https://github.com/SwiftyJSON/SwiftyJSON
import Foundation
struct AUTH {
static var api_username = <string>
static var api_password = <string>
static var api_key = <string>
static var company_no = <double>
static var username = <string>
static var password = <string>
static var timezone_offset = <double>
static var auth_type = <string>
static var system_name = <string>
static var system_company_no = <double>}
struct PRODUCTS {[
static var attribute_assign_no = <double>
static var business_name = <string>
static var cascadeToVariations = <boolean>
static var category_no = <double>
static var inventory_no = <double>
static var relation_type = <string>
static var category_name = <string>
static var media_no = <double>
static var pricing_no = <double>
static var product_flag = <string>
static var product_sku = <string>
static var reference_type = <string>
static var description = <string>
static var inventory_total = <double>
static var media_title = <string>
static var product_brief = <string>
static var reference_no = <double>
static var attribute_value = <string>
static var inventory_type = <string>
static var media_location = <string>
static var product_no = <double>
static var category_assign_no = <double>
static var inventory = <double>
static var main = <string>
static var order_no = <double>
static var price_type = <string>
static var stock_date = <dateTime>
static var attribute_no = <double>
static var customer_type = <string>
static var media_type = <string>
static var product_long = <string>
static var product_short = <string>
static var attribute_name = <string>
static var main_photo = <string>
static var media_description = <string>
static var product_description = <string>
static var quantity_discount = <double>
static var customer_no = <double>
static var field_type = <string>
static var price = <double>
static var field_values = <string>
static var msrp_price = <double>
static var price_description = <string>
static var field_help = <string>
static var start_date = <dateTime>
static var visibility = <string>
static var end_date = <dateTime>
static var flag_limited = <string>
static var created_on = <dateTime>
static var flag_backorders = <string>
static var modified_on = <dateTime>
static var product_type = <string>
static var meta_keywords = <string>
static var user_no = <double>
static var company_no = <double>
static var meta_description = <string>
static var tax_rate = <double>
static var product_weight = <double>
static var product_above = <double>
static var business_no = <double>]}
func createProductsRequest() {
var createProductsObjects = [AnyObject]()
let postsEndpoint: String = "https://api.peoplevine.com/commerce.asmx/createProducts"
let authAndFieldsDict = ["auth": ["api_username": AUTH.api_username, "api_password": AUTH.api_password, "api_key": AUTH.api_key, "company_no": AUTH.company_no, "username": AUTH.username, "password": AUTH.password, "timezone_offset": AUTH.timezone_offset, "auth_type": AUTH.auth_type, "system_name": AUTH.system_name, "system_company_no": AUTH.system_company_no ], "products": [["attribute_assign_no": PRODUCTS.attribute_assign_no, "business_name": PRODUCTS.business_name, "cascadeToVariations": PRODUCTS.cascadeToVariations, "category_no": PRODUCTS.category_no, "inventory_no": PRODUCTS.inventory_no, "relation_type": PRODUCTS.relation_type, "category_name": PRODUCTS.category_name, "media_no": PRODUCTS.media_no, "pricing_no": PRODUCTS.pricing_no, "product_flag": PRODUCTS.product_flag, "product_sku": PRODUCTS.product_sku, "reference_type": PRODUCTS.reference_type, "description": PRODUCTS.description, "inventory_total": PRODUCTS.inventory_total, "media_title": PRODUCTS.media_title, "product_brief": PRODUCTS.product_brief, "reference_no": PRODUCTS.reference_no, "attribute_value": PRODUCTS.attribute_value, "inventory_type": PRODUCTS.inventory_type, "media_location": PRODUCTS.media_location, "product_no": PRODUCTS.product_no, "category_assign_no": PRODUCTS.category_assign_no, "inventory": PRODUCTS.inventory, "main": PRODUCTS.main, "order_no": PRODUCTS.order_no, "price_type": PRODUCTS.price_type, "stock_date": PRODUCTS.stock_date, "attribute_no": PRODUCTS.attribute_no, "customer_type": PRODUCTS.customer_type, "media_type": PRODUCTS.media_type, "product_long": PRODUCTS.product_long, "product_short": PRODUCTS.product_short, "attribute_name": PRODUCTS.attribute_name, "main_photo": PRODUCTS.main_photo, "media_description": PRODUCTS.media_description, "product_description": PRODUCTS.product_description, "quantity_discount": PRODUCTS.quantity_discount, "customer_no": PRODUCTS.customer_no, "field_type": PRODUCTS.field_type, "price": PRODUCTS.price, "field_values": PRODUCTS.field_values, "msrp_price": PRODUCTS.msrp_price, "price_description": PRODUCTS.price_description, "field_help": PRODUCTS.field_help, "start_date": PRODUCTS.start_date, "visibility": PRODUCTS.visibility, "end_date": PRODUCTS.end_date, "flag_limited": PRODUCTS.flag_limited, "created_on": PRODUCTS.created_on, "flag_backorders": PRODUCTS.flag_backorders, "modified_on": PRODUCTS.modified_on, "product_type": PRODUCTS.product_type, "meta_keywords": PRODUCTS.meta_keywords, "user_no": PRODUCTS.user_no, "company_no": PRODUCTS.company_no, "meta_description": PRODUCTS.meta_description, "tax_rate": PRODUCTS.tax_rate, "product_weight": PRODUCTS.product_weight, "product_above": PRODUCTS.product_above, "business_no": PRODUCTS.business_no ] ] ]
Alamofire.request(.POST, postsEndpoint, parameters: authAndFieldsDict, encoding: .JSON).responseJSON { (request, response, data, error) in
if let anError = error {
println("error calling POST on /posts")
println(error)
} else if let jsonData: AnyObject = data {
if let dataString = (jsonData.valueForKey("d") as! String).dataUsingEncoding(NSUTF8StringEncoding) {
let json = JSON(data: dataString) //use this object to parse data
//SAMPLE PARSING
let varData = json["returnObject"][0]["object"].stringValue
// ----------
// BELOW REPRESENTS AN EXAMPLE USING PURE SWIFT JSONSERIALIZATION INSTEAD OF SWIFTYJSON --------//
// if let createProductsDict = NSJSONSerialization.JSONObjectWithData(encoString, options: .MutableContainers, error: nil) as? NSDictionary {
// if let returnObjectArray = createProductsDict["returnObject"] as? NSArray {
//
// for createProductsObject in returnObjectArray {
// createProductsObjects.append(createProductsObject)
// if let item = createProductsObject["object_name"] as? NSDictionary {
// let varItem = item["field_name"] as! String
// }
// }
//
// println("\n\(createProductsObjects.count) Total")
// }
// }
}
}
}
}
<!DOCTYPE html>
<html>
<head>
<title>API Call - createProducts</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript">
$(function() {
var dataValue = {
"auth": {
"api_username": "",
"api_password": "",
"api_key": "",
"company_no": 0,
"username": "",
"password": "",
"timezone_offset": 0,
"auth_type": "",
"system_name": "",
"system_company_no": 0,
},
"products": {
["attribute_assign_no": 0,
"business_name": "",
"cascadeToVariations": false,
"category_no": 0,
"inventory_no": 0,
"relation_type": "",
"category_name": "",
"media_no": 0,
"pricing_no": 0,
"product_flag": "",
"product_sku": "",
"reference_type": "",
"description": "",
"inventory_total": 0,
"media_title": "",
"product_brief": "",
"reference_no": 0,
"attribute_value": "",
"inventory_type": "",
"media_location": "",
"product_no": 0,
"category_assign_no": 0,
"inventory": 0,
"main": "",
"order_no": 0,
"price_type": "",
"stock_date": "1/1/1900 12:00 AM",
"attribute_no": 0,
"customer_type": "",
"media_type": "",
"product_long": "",
"product_short": "",
"attribute_name": "",
"main_photo": "",
"media_description": "",
"product_description": "",
"quantity_discount": 0,
"customer_no": 0,
"field_type": "",
"price": 0,
"field_values": "",
"msrp_price": 0,
"price_description": "",
"field_help": "",
"start_date": "1/1/1900 12:00 AM",
"visibility": "",
"end_date": "1/1/1900 12:00 AM",
"flag_limited": "",
"created_on": "1/1/1900 12:00 AM",
"flag_backorders": "",
"modified_on": "1/1/1900 12:00 AM",
"product_type": "",
"meta_keywords": "",
"user_no": 0,
"company_no": 0,
"meta_description": "",
"tax_rate": 0,
"product_weight": 0,
"product_above": 0,
"business_no": 0,
]},
};
$.ajax({
url: 'https://api.peoplevine.com/commerce.asmx/createProducts',
type: 'POST',
data: JSON.stringify(dataValue),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("ERROR");
},
success: function (result) {
var obj = JSON.parse(result.d).returnObject;
$.each(obj, function(i) {
$("#divID").html(obj[i].field_name); //do something with the data
})
}
})
});
</script>
</body>
</html>
System.Net.HttpWebRequest req = System.Net.HttpWebRequest.Create("https://api.peoplevine.com/commerce.asmx/createProducts");
req.Method = "POST";
req.ContentType = "application/json; charset=utf-8";
string dataValue = "{auth: {api_username: <string>, api_password: <string>, api_key: <string>, company_no: <double>, username: <string>, password: <string>, timezone_offset: <double>, auth_type: <string>, system_name: <string>, system_company_no: <double> },products: {[attribute_assign_no: <double>, business_name: <string>, cascadeToVariations: <boolean>, category_no: <double>, inventory_no: <double>, relation_type: <string>, category_name: <string>, media_no: <double>, pricing_no: <double>, product_flag: <string>, product_sku: <string>, reference_type: <string>, description: <string>, inventory_total: <double>, media_title: <string>, product_brief: <string>, reference_no: <double>, attribute_value: <string>, inventory_type: <string>, media_location: <string>, product_no: <double>, category_assign_no: <double>, inventory: <double>, main: <string>, order_no: <double>, price_type: <string>, stock_date: <dateTime>, attribute_no: <double>, customer_type: <string>, media_type: <string>, product_long: <string>, product_short: <string>, attribute_name: <string>, main_photo: <string>, media_description: <string>, product_description: <string>, quantity_discount: <double>, customer_no: <double>, field_type: <string>, price: <double>, field_values: <string>, msrp_price: <double>, price_description: <string>, field_help: <string>, start_date: <dateTime>, visibility: <string>, end_date: <dateTime>, flag_limited: <string>, created_on: <dateTime>, flag_backorders: <string>, modified_on: <dateTime>, product_type: <string>, meta_keywords: <string>, user_no: <double>, company_no: <double>, meta_description: <string>, tax_rate: <double>, product_weight: <double>, product_above: <double>, business_no: <double> ]}}";
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] bytes = encoding.GetBytes(dataValue);
req.ContentLength = bytes.Length;
System.IO.Stream strm = req.GetRequestStream();
strm.Write(bytes, 0, bytes.Length);
strm.Close();
System.Net.HttpWebResponse rsp = req.GetResponse();
System.IO.Stream data = rsp.GetResponseStream();
System.IO.StreamReader rdr = new System.IO.StreamReader(data);
string response = rdr.ReadToEnd();
Dim req As System.Net.HttpWebRequest = System.Net.HttpWebRequest.Create("https://api.peoplevine.com/commerce.asmx/createProducts")
req.Method = "POST"
req.ContentType = "application/json; charset=utf-8"
Dim dataValue As String = "{auth: {api_username: <string>, api_password: <string>, api_key: <string>, company_no: <double>, username: <string>, password: <string>, timezone_offset: <double>, auth_type: <string>, system_name: <string>, system_company_no: <double> },products: {[attribute_assign_no: <double>, business_name: <string>, cascadeToVariations: <boolean>, category_no: <double>, inventory_no: <double>, relation_type: <string>, category_name: <string>, media_no: <double>, pricing_no: <double>, product_flag: <string>, product_sku: <string>, reference_type: <string>, description: <string>, inventory_total: <double>, media_title: <string>, product_brief: <string>, reference_no: <double>, attribute_value: <string>, inventory_type: <string>, media_location: <string>, product_no: <double>, category_assign_no: <double>, inventory: <double>, main: <string>, order_no: <double>, price_type: <string>, stock_date: <dateTime>, attribute_no: <double>, customer_type: <string>, media_type: <string>, product_long: <string>, product_short: <string>, attribute_name: <string>, main_photo: <string>, media_description: <string>, product_description: <string>, quantity_discount: <double>, customer_no: <double>, field_type: <string>, price: <double>, field_values: <string>, msrp_price: <double>, price_description: <string>, field_help: <string>, start_date: <dateTime>, visibility: <string>, end_date: <dateTime>, flag_limited: <string>, created_on: <dateTime>, flag_backorders: <string>, modified_on: <dateTime>, product_type: <string>, meta_keywords: <string>, user_no: <double>, company_no: <double>, meta_description: <string>, tax_rate: <double>, product_weight: <double>, product_above: <double>, business_no: <double> ]}}"
Dim encoding As New ASCIIEncoding()
Dim bytes As Byte() = encoding.GetBytes(dataValue)
req.ContentLength = bytes.Length
Dim strm As System.IO.Stream = req.GetRequestStream()
strm.Write(bytes, 0, bytes.Length)
strm.Close()
Dim rsp As System.Net.HttpWebResponse = req.GetResponse()
Dim data As System.IO.Stream = rsp.GetResponseStream()
Dim rdr As New System.IO.StreamReader(data)
Dim response As String = rdr.ReadToEnd()
// This sample uses the Apache HTTP client from HTTP Components (http://hc.apache.org/httpcomponents-client-ga/)
import java.net.URI;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class JavaSample {
public static void main(String[] args) {
HttpClient httpclient = HttpClients.createDefault();
try
{
URIBuilder builder = new URIBuilder("https://peoplevine.azure-api.net/customer/customer/registerCustomer");
// Specify your subscription key
builder.setParameter("subscription-key", "");
URI uri = builder.build();
HttpPost request = new HttpPost(uri);
StringEntity reqEntity = new StringEntity("", ContentType.create("application/json"));
request.setEntity(reqEntity);
HttpResponse response = httpclient.execute(request);
HttpEntity entity = response.getEntity();
if (entity != null) {
System.out.println(EntityUtils.toString(entity));
}
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
}
<?php
// This sample uses the HTTP_Request2 package. (for more information: http://pear.php.net/package/HTTP_Request2)
require_once 'HTTP/Request2.php';
$headers = array(
'Content-Type' => 'application/json',
);
$query_params = array(
// Specify your subscription key
'subscription-key' => '',
);
$request = new Http_Request2('https://peoplevine.azure-api.net/customer/customer/registerCustomer');
$request->setMethod(HTTP_Request2::METHOD_POST);
// Basic Authorization Sample
// $request-setAuth('{username}', '{password}');
$request->setHeader($headers);
$url = $request->getUrl();
$url->setQueryVariables($query_params);
$request->setBody("");
try
{
$response = $request->send();
echo $response->getBody();
}
catch (HttpException $ex)
{
echo $ex;
}
?>
#import <Foundation/Foundation.h>
NSDictionary *authDic = [NSDictionary dictionaryWithObjectsAndKeys:
<string>, @"api_username",
<string>, @"api_password",
<string>, @"api_key",
<double>, @"company_no",
<string>, @"username",
<string>, @"password",
<double>, @"timezone_offset",
<string>, @"auth_type",
<string>, @"system_name",
<double>, @"system_company_no", nil];
NSDictionary *productsDic = [NSDictionary dictionaryWithObjectsAndKeys:
<double>, @"attribute_assign_no",
<string>, @"business_name",
<boolean>, @"cascadeToVariations",
<double>, @"category_no",
<double>, @"inventory_no",
<string>, @"relation_type",
<string>, @"category_name",
<double>, @"media_no",
<double>, @"pricing_no",
<string>, @"product_flag",
<string>, @"product_sku",
<string>, @"reference_type",
<string>, @"description",
<double>, @"inventory_total",
<string>, @"media_title",
<string>, @"product_brief",
<double>, @"reference_no",
<string>, @"attribute_value",
<string>, @"inventory_type",
<string>, @"media_location",
<double>, @"product_no",
<double>, @"category_assign_no",
<double>, @"inventory",
<string>, @"main",
<double>, @"order_no",
<string>, @"price_type",
<dateTime>, @"stock_date",
<double>, @"attribute_no",
<string>, @"customer_type",
<string>, @"media_type",
<string>, @"product_long",
<string>, @"product_short",
<string>, @"attribute_name",
<string>, @"main_photo",
<string>, @"media_description",
<string>, @"product_description",
<double>, @"quantity_discount",
<double>, @"customer_no",
<string>, @"field_type",
<double>, @"price",
<string>, @"field_values",
<double>, @"msrp_price",
<string>, @"price_description",
<string>, @"field_help",
<dateTime>, @"start_date",
<string>, @"visibility",
<dateTime>, @"end_date",
<string>, @"flag_limited",
<dateTime>, @"created_on",
<string>, @"flag_backorders",
<dateTime>, @"modified_on",
<string>, @"product_type",
<string>, @"meta_keywords",
<double>, @"user_no",
<double>, @"company_no",
<string>, @"meta_description",
<double>, @"tax_rate",
<double>, @"product_weight",
<double>, @"product_above",
<double>, @"business_no", nil];
NSDictionary *finalDic = [NSDictionary dictionaryWithObjectsAndKeys:
authDic, @"auth",productsDic, @"products", nil];
NSMutableDictionary* jsonString = nil;
jsonString = [NSJSONSerialization JSONObjectWithData: findalDic options:NSJSONReadingMutableContainers];
NSMutableData *bodyData = [NSMutableData dataWithData:[jsonString dataUsingEncoding:NSUTF8StringEncoding]];
NSString *urlString = @"https://api.peoplevine.com/commerce.asmx/createProducts";
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:urlString]];
[request setTimeOutSeconds:250];
[request setRequestMethod:@"POST"];
[request addRequestHeader:@"Content-Type" value:@"application/json"];
[request addRequestHeader:[NSString stringWithFormat:@"%d",bodyData.length] value:@"Content-length"];
[request setPostBody:bodyData];
[request startSynchronous];
NSDictionary *responseDic = (NSDictionary*)[request.responseString JSONValue];
if (responseDic || [responseDic objectForKey:@"d"])
{
NSMutableDictionary *dicSave=[responseDic objectForKey:@"d"];
// -------------------------------------------------------------------
// convert into the data and NSUTF8StringEncoding
// -------------------------------------------------------------------
NSString *strDic=[dicSave copy];
NSMutableDictionary *dirJson;
if (strDic)
{
NSData* dataFile=[strDic dataUsingEncoding:NSUTF8StringEncoding];
NSString* newStr = [[NSString alloc] initWithData:dataFile
encoding:NSUTF8StringEncoding];
dirJson = [newStr JSONValue] ;
}
// -------------------------------------------------------------------
NSString *str=[[dirJson objectForKey:@"returnObject"]valueForKey:@"customer_no"];
}
else
{
UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@"Error" message:@"An Error Occurred" delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil];
[alert show];
}
require 'net/http'
uri = URI('https://peoplevine.azure-api.net/customer/customer/registerCustomer')
uri.query = URI.encode_www_form({
# Specify your subscription key
'subscription-key' => '',
})
request = Net::HTTP::Post.new(uri.request_uri)
# Basic Authorization Sample
# request.basic_auth 'username', 'password'
request['Content-type'] = 'application/json'
request.body = ""
response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
http.request(request)
end
puts response.body
########### Python 2.7 #############
import httplib, urllib, base64
headers = {
# Basic Authorization Sample
# 'Authorization': 'Basic %s' % base64.encodestring('{username}:{password}'),
'Content-type': 'application/json',
}
params = urllib.urlencode({
# Specify your subscription key
'subscription-key': '',
})
try:
conn = httplib.HTTPSConnection('peoplevine.azure-api.net')
conn.request("POST", "/customer/customer/registerCustomer?%s" % params, "", headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print("[Errno {0}] {1}".format(e.errno, e.strerror))
####################################
########### Python 3.2 #############
import http.client, urllib.request, urllib.parse, urllib.error, base64
headers = {
# Basic Authorization Sample
# 'Authorization': 'Basic %s' % base64.encodestring('{username}:{password}'),
'Content-type': 'application/json',
}
params = urllib.parse.urlencode({
# Specify your subscription key
'subscription-key': '',
})
try:
conn = http.client.HTTPSConnection('peoplevine.azure-api.net')
conn.request("POST", "/customer/customer/registerCustomer?%s" % params, "", headers)
response = conn.getresponse()
data = response.read()
print(data)
conn.close()
except Exception as e:
print("[Errno {0}] {1}".format(e.errno, e.strerror))
####################################
@ECHO OFF
REM for Basic Authorization use: --user {username}:{password}
REM Specify values for path parameters (shown as {...}), your subscription key and values for query parameters
curl -v -X POST "https://peoplevine.azure-api.net/customer/customer/registerCustomer?subscription-key="^
-H "Content-Type: application/json"