Back to Collection Items
#include <C_CkHttp.h>
#include <C_CkJsonObject.h>
#include <C_CkHttpResponse.h>
#include <C_CkStringBuilder.h>
void ChilkatSample(void)
{
HCkHttp http;
BOOL success;
HCkJsonObject queryParams;
HCkHttpResponse resp;
HCkStringBuilder sbResponseBody;
HCkJsonObject jResp;
int respStatusCode;
const char *contentType;
int contentId;
const char *title;
const char *Prefix;
const char *Name;
const char *Id;
const char *Label;
int Size;
int Start;
int Limit;
int i;
int count_i;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
http = CkHttp_Create();
queryParams = CkJsonObject_Create();
CkJsonObject_UpdateString(queryParams,"name","");
CkJsonObject_UpdateString(queryParams,"type","");
CkJsonObject_UpdateInt(queryParams,"start",0);
CkJsonObject_UpdateInt(queryParams,"limit",200);
// Adds the "Authorization: Bearer <access_token>" header.
CkHttp_putAuthToken(http,"<access_token>");
resp = CkHttp_QuickRequestParams(http,"GET","https://your-domain.atlassian.net/wiki/rest/api/label",queryParams);
if (CkHttp_getLastMethodSuccess(http) == FALSE) {
printf("%s\n",CkHttp_lastErrorText(http));
CkHttp_Dispose(http);
CkJsonObject_Dispose(queryParams);
return;
}
sbResponseBody = CkStringBuilder_Create();
CkHttpResponse_GetBodySb(resp,sbResponseBody);
jResp = CkJsonObject_Create();
CkJsonObject_LoadSb(jResp,sbResponseBody);
CkJsonObject_putEmitCompact(jResp,FALSE);
printf("Response Body:\n");
printf("%s\n",CkJsonObject_emit(jResp));
respStatusCode = CkHttpResponse_getStatusCode(resp);
printf("Response Status Code = %d\n",respStatusCode);
if (respStatusCode >= 400) {
printf("Response Header:\n");
printf("%s\n",CkHttpResponse_header(resp));
printf("Failed.\n");
CkHttpResponse_Dispose(resp);
CkHttp_Dispose(http);
CkJsonObject_Dispose(queryParams);
CkStringBuilder_Dispose(sbResponseBody);
CkJsonObject_Dispose(jResp);
return;
}
CkHttpResponse_Dispose(resp);
// Sample JSON response:
// (Sample code for parsing the JSON response is shown below)
// {
// "label": {
// "prefix": "est dolore",
// "name": "elit magna culpa voluptate minim",
// "id": "fugiat in occaecat",
// "label": "Excepteur eu culpa qui non"
// },
// "associatedContents": {
// "results": [
// {
// "contentType": "attachment",
// "contentId": -15123374,
// "title": "est"
// },
// {
// "contentType": "attachment",
// "contentId": 29751066,
// "title": "in fugiat"
// }
// ],
// "size": -57367807,
// "start": 711472,
// "limit": -23936898
// }
// }
// Sample code for parsing the JSON response...
// Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
// Chilkat functions returning "const char *" return a pointer to temporary internal memory owned and managed by Chilkat.
Prefix = CkJsonObject_stringOf(jResp,"label.prefix");
Name = CkJsonObject_stringOf(jResp,"label.name");
Id = CkJsonObject_stringOf(jResp,"label.id");
Label = CkJsonObject_stringOf(jResp,"label.label");
Size = CkJsonObject_IntOf(jResp,"associatedContents.size");
Start = CkJsonObject_IntOf(jResp,"associatedContents.start");
Limit = CkJsonObject_IntOf(jResp,"associatedContents.limit");
i = 0;
count_i = CkJsonObject_SizeOfArray(jResp,"associatedContents.results");
while (i < count_i) {
CkJsonObject_putI(jResp,i);
contentType = CkJsonObject_stringOf(jResp,"associatedContents.results[i].contentType");
contentId = CkJsonObject_IntOf(jResp,"associatedContents.results[i].contentId");
title = CkJsonObject_stringOf(jResp,"associatedContents.results[i].title");
i = i + 1;
}
CkHttp_Dispose(http);
CkJsonObject_Dispose(queryParams);
CkStringBuilder_Dispose(sbResponseBody);
CkJsonObject_Dispose(jResp);
}
Curl Command
curl -G -d "name="
-d "type="
-d "start=0"
-d "limit=200"
-H "Authorization: Bearer <access_token>"
https://your-domain.atlassian.net/wiki/rest/api/label
Postman Collection Item JSON
{
"name": "Get Label information.",
"request": {
"auth": {
"type": "oauth2"
},
"method": "GET",
"header": [
],
"url": {
"raw": "{{baseUrl}}/api/label?name=&type=&start=0&limit=200",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"label"
],
"query": [
{
"key": "name",
"value": "",
"description": "(Required) Name of the label to query."
},
{
"key": "type",
"value": "",
"description": "The type of contents that are to be returned."
},
{
"key": "start",
"value": "0",
"description": "The starting offset for the results."
},
{
"key": "limit",
"value": "200",
"description": "The number of results to be returned."
}
]
},
"description": "Returns label information and a list of contents associated with the label.\n\n**[Permissions](https://confluence.atlassian.com/x/_AozKw) required**:\nPermission to access the Confluence site ('Can use' global permission). Only contents\nthat the user is permitted to view is returned."
},
"response": [
{
"name": "Returned if the query fetches zero or more results.",
"originalRequest": {
"method": "GET",
"header": [
{
"description": {
"content": "Added as a part of security scheme: oauth2",
"type": "text/plain"
},
"key": "Authorization",
"value": "<token>"
}
],
"url": {
"raw": "{{baseUrl}}/api/label?name=&type=&start=0&limit=200",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"label"
],
"query": [
{
"key": "name",
"value": ""
},
{
"key": "type",
"value": ""
},
{
"key": "start",
"value": "0"
},
{
"key": "limit",
"value": "200"
}
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"cookie": [
],
"body": "{\n \"label\": {\n \"prefix\": \"est dolore\",\n \"name\": \"elit magna culpa voluptate minim\",\n \"id\": \"fugiat in occaecat\",\n \"label\": \"Excepteur eu culpa qui non\"\n },\n \"associatedContents\": {\n \"results\": [\n {\n \"contentType\": \"attachment\",\n \"contentId\": -15123374,\n \"title\": \"est\"\n },\n {\n \"contentType\": \"attachment\",\n \"contentId\": 29751066,\n \"title\": \"in fugiat\"\n }\n ],\n \"size\": -57367807,\n \"start\": 711472,\n \"limit\": -23936898\n }\n}"
},
{
"name": "Returned if no label name is provide or\nif content type provided in the query is invalid.",
"originalRequest": {
"method": "GET",
"header": [
{
"description": {
"content": "Added as a part of security scheme: oauth2",
"type": "text/plain"
},
"key": "Authorization",
"value": "<token>"
}
],
"url": {
"raw": "{{baseUrl}}/api/label?name=&type=&start=0&limit=200",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"label"
],
"query": [
{
"key": "name",
"value": ""
},
{
"key": "type",
"value": ""
},
{
"key": "start",
"value": "0"
},
{
"key": "limit",
"value": "200"
}
]
}
},
"status": "Bad Request",
"code": 400,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
},
{
"name": "Returned if the calling user does not have permission to view\nany content including label info.",
"originalRequest": {
"method": "GET",
"header": [
{
"description": {
"content": "Added as a part of security scheme: oauth2",
"type": "text/plain"
},
"key": "Authorization",
"value": "<token>"
}
],
"url": {
"raw": "{{baseUrl}}/api/label?name=&type=&start=0&limit=200",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"label"
],
"query": [
{
"key": "name",
"value": ""
},
{
"key": "type",
"value": ""
},
{
"key": "start",
"value": "0"
},
{
"key": "limit",
"value": "200"
}
]
}
},
"status": "Forbidden",
"code": 403,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
},
{
"name": "Returned if the lable name is invalid or if no label is found for a given label.",
"originalRequest": {
"method": "GET",
"header": [
{
"description": {
"content": "Added as a part of security scheme: oauth2",
"type": "text/plain"
},
"key": "Authorization",
"value": "<token>"
}
],
"url": {
"raw": "{{baseUrl}}/api/label?name=&type=&start=0&limit=200",
"host": [
"{{baseUrl}}"
],
"path": [
"api",
"label"
],
"query": [
{
"key": "name",
"value": ""
},
{
"key": "type",
"value": ""
},
{
"key": "start",
"value": "0"
},
{
"key": "limit",
"value": "200"
}
]
}
},
"status": "Not Found",
"code": 404,
"_postman_previewlanguage": "text",
"header": [
{
"key": "Content-Type",
"value": "text/plain"
}
],
"cookie": [
],
"body": ""
}
]
}