Objective-C / Zoho CRM REST APIs / Upload Attachments to the Blueprint
Back to Collection Items
#import <CkoHttp.h>
#import <CkoJsonObject.h>
#import <CkoStringBuilder.h>
#import <CkoHttpResponse.h>
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkoHttp *http = [[CkoHttp alloc] init];
BOOL success;
// Use this online tool to generate code from sample JSON: Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "blueprint": [
// {
// "transition_id": "1000000031897",
// "data": {
// "Attachments": {
// "$file_id": [
// "59cf260313b6907ffc56957f4241bd94ba3e0b6aad53b50f8b38583a859d623a",
// "59cf260313b6907ffc56957f4241bd94ba3e0b6aad53b50f8b38583a859d624d"
// ]
// }
// }
// }
// ]
// }
CkoJsonObject *json = [[CkoJsonObject alloc] init];
[json UpdateString: @"blueprint[0].transition_id" value: @"1000000031897"];
[json UpdateString: @"blueprint[0].data.Attachments.$file_id[0]" value: @"59cf260313b6907ffc56957f4241bd94ba3e0b6aad53b50f8b38583a859d623a"];
[json UpdateString: @"blueprint[0].data.Attachments.$file_id[1]" value: @"59cf260313b6907ffc56957f4241bd94ba3e0b6aad53b50f8b38583a859d624d"];
// Adds the "Authorization: Bearer <access_token>" header.
http.AuthToken = @"<access_token>";
CkoStringBuilder *sbRequestBody = [[CkoStringBuilder alloc] init];
[json EmitSb: sbRequestBody];
CkoHttpResponse *resp = [http PTextSb: @"PUT" url: @"https://domain.com/crm/v2.1/Leads/{{record_id}}/actions/blueprint" textData: sbRequestBody charset: @"utf-8" contentType: @"application/json" md5: NO gzip: NO];
if (http.LastMethodSuccess == NO) {
NSLog(@"%@",http.LastErrorText);
return;
}
NSLog(@"%d",[resp.StatusCode intValue]);
NSLog(@"%@",resp.BodyStr);
Curl Command
curl -X PUT
-H "Authorization: Bearer <access_token>"
-d '{
"blueprint": [
{
"transition_id": "1000000031897",
"data": {
"Attachments": {
"$file_id": [
"59cf260313b6907ffc56957f4241bd94ba3e0b6aad53b50f8b38583a859d623a",
"59cf260313b6907ffc56957f4241bd94ba3e0b6aad53b50f8b38583a859d624d"
]
}
}
}
]
}'
https://domain.com/crm/v2.1/Leads/{{record_id}}/actions/blueprint
Postman Collection Item JSON
{
"name": "Upload Attachments to the Blueprint",
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{access-token}}",
"type": "string"
}
]
},
"method": "PUT",
"header": [
],
"body": {
"mode": "raw",
"raw": "{\n \"blueprint\": [\n {\n \"transition_id\": \"1000000031897\",\n \"data\": {\n \"Attachments\": {\n \"$file_id\": [\n \"59cf260313b6907ffc56957f4241bd94ba3e0b6aad53b50f8b38583a859d623a\",\n \"59cf260313b6907ffc56957f4241bd94ba3e0b6aad53b50f8b38583a859d624d\"\n ]\n }\n }\n }\n ]\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{api-domain}}/crm/v2.1/Leads/{{record_id}}/actions/blueprint",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2.1",
"Leads",
"{{record_id}}",
"actions",
"blueprint"
]
},
"description": "To update a single transition at a time. An error is thrown if the record is not in transition, transition_id is wrong, field_value data type mismatches, or field validation fails."
},
"response": [
]
}