Back to Collection Items
IncludeFile "CkJsonObject.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpResponse.pb"
Procedure ChilkatExample()
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
http.i = CkHttp::ckCreate()
If http.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success.i
; Use this online tool to generate code from sample JSON: Generate Code to Create JSON
; The following JSON is sent in the request body.
; {
; "endpoint": {
; "deploymentType": "CH",
; "isCloudHub": null,
; "muleVersion4OrAbove": null,
; "proxyUri": null,
; "referencesUserDomain": null,
; "responseTimeout": null,
; "type": "raml",
; "uri": null
; },
; "providerId": null,
; "instanceLabel": null,
; "spec": {
; "assetId": "hello-word",
; "groupId": "af696110-60f8-4a47-9367-e2464a468949",
; "version": "0.0.1"
; }
; }
json.i = CkJsonObject::ckCreate()
If json.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckUpdateString(json,"endpoint.deploymentType","CH")
CkJsonObject::ckUpdateNull(json,"endpoint.isCloudHub")
CkJsonObject::ckUpdateNull(json,"endpoint.muleVersion4OrAbove")
CkJsonObject::ckUpdateNull(json,"endpoint.proxyUri")
CkJsonObject::ckUpdateNull(json,"endpoint.referencesUserDomain")
CkJsonObject::ckUpdateNull(json,"endpoint.responseTimeout")
CkJsonObject::ckUpdateString(json,"endpoint.type","raml")
CkJsonObject::ckUpdateNull(json,"endpoint.uri")
CkJsonObject::ckUpdateNull(json,"providerId")
CkJsonObject::ckUpdateNull(json,"instanceLabel")
CkJsonObject::ckUpdateString(json,"spec.assetId","hello-word")
CkJsonObject::ckUpdateString(json,"spec.groupId","af696110-60f8-4a47-9367-e2464a468949")
CkJsonObject::ckUpdateString(json,"spec.version","0.0.1")
; Adds the "Authorization: Bearer {{token}}" header.
CkHttp::setCkAuthToken(http, "{{token}}")
resp.i = CkHttp::ckPostJson3(http,"https://domain.com/apimanager/api/v1/organizations/{{organization_id}}/environments/{{environment_id}}/apis","application/json",json)
If CkHttp::ckLastMethodSuccess(http) = 0
Debug CkHttp::ckLastErrorText(http)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndIf
Debug Str(CkHttpResponse::ckStatusCode(resp))
Debug CkHttpResponse::ckBodyStr(resp)
CkHttpResponse::ckDispose(resp)
CkHttp::ckDispose(http)
CkJsonObject::ckDispose(json)
ProcedureReturn
EndProcedure
Curl Command
curl -X POST
-H "Authorization: Bearer {{token}}"
-d '{
"endpoint":{
"deploymentType":"CH",
"isCloudHub":null,
"muleVersion4OrAbove":null,
"proxyUri":null,
"referencesUserDomain":null,
"responseTimeout":null,
"type":"raml",
"uri":null
},
"providerId":null,
"instanceLabel":null,
"spec":{
"assetId":"hello-word",
"groupId":"af696110-60f8-4a47-9367-e2464a468949",
"version":"0.0.1"
}
}'
https://domain.com/apimanager/api/v1/organizations/{{organization_id}}/environments/{{environment_id}}/apis
Postman Collection Item JSON
{
"name": "Create API from Exchange",
"request": {
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "Bearer {{token}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"endpoint\":{\r\n \"deploymentType\":\"CH\",\r\n \"isCloudHub\":null,\r\n \"muleVersion4OrAbove\":null,\r\n \"proxyUri\":null,\r\n \"referencesUserDomain\":null,\r\n \"responseTimeout\":null,\r\n \"type\":\"raml\",\r\n \"uri\":null\r\n },\r\n \"providerId\":null,\r\n \"instanceLabel\":null,\r\n \"spec\":{\r\n \"assetId\":\"hello-word\",\r\n \"groupId\":\"af696110-60f8-4a47-9367-e2464a468949\",\r\n \"version\":\"0.0.1\"\r\n }\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "{{url}}/apimanager/api/v1/organizations/{{organization_id}}/environments/{{environment_id}}/apis",
"host": [
"{{url}}"
],
"path": [
"apimanager",
"api",
"v1",
"organizations",
"{{organization_id}}",
"environments",
"{{environment_id}}",
"apis"
]
}
},
"response": [
]
}