Does the api support batch posting? This code only creates the first item in the Json Body array?
AssemblaSpace spaces = new AssemblaSpace();
spaces.id = projectMileStonesToSpace.AssemblaSpaceID;
List<AssemblaSpaceMileStonesInput> spacemilestones = new List<AssemblaSpaceMileStonesInput>();
//TODO: look at batching json string
foreach (var item in milestone)
{
spacemilestones.Add(new AssemblaSpaceMileStonesInput()
{
title = item.Description,
description = item.Description
});
}
string assemblaBaseUrl = "
https://api.assembla.com/";
RestClient assemblaClient = new RestClient(assemblaBaseUrl)
{
};
var request = new RestRequest("/v1/spaces/" +
spaces.id + "/milestones.json",
RestSharp.Method.POST);
request.RequestFormat = DataFormat.Json;
request.AddHeader("Accept", "application/json");
request.AddHeader("X-Api-Key", creds.ApiKey);
request.AddHeader("X-Api-Secret", creds.ApiSecret);
foreach (var item in spacemilestones)
{
request.AddJsonBody(new { milestone = item }); // required to add a namespace to the serialized json object required by assembla
}
var response = assemblaClient.Post<AssemblaSpace>(request);