Gets the accountid by name.
curl -X GET https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/accounts
-H "Accept: application/json" \
-H "OData-MaxVersion: 4.0" \
-H "OData-Version: 4.0" \
-d "$select=accountid" \
-d "$filter=name eq 'Blue Yonder Airlines'" \
-H "Authorization: Bearer DYNAMICS_CRM_ACCESS_TOKEN"
IncludeFile "CkJsonObject.pb"
IncludeFile "CkStringBuilder.pb"
IncludeFile "CkRest.pb"
Procedure ChilkatExample()
rest.i = CkRest::ckCreate()
If rest.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success.i
; URL: https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/accounts
bTls.i = 1
port.i = 443
bAutoReconnect.i = 1
success = CkRest::ckConnect(rest,"my-dynamics-domain.api.crm.dynamics.com",port,bTls,bAutoReconnect)
If success <> 1
Debug "ConnectFailReason: " + Str(CkRest::ckConnectFailReason(rest))
Debug CkRest::ckLastErrorText(rest)
CkRest::ckDispose(rest)
ProcedureReturn
EndIf
CkRest::ckAddQueryParam(rest,"$select","accountid")
CkRest::ckAddQueryParam(rest,"$filter","name eq 'Blue Yonder Airlines'")
CkRest::ckAddHeader(rest,"OData-MaxVersion","4.0")
CkRest::ckAddHeader(rest,"Accept","application/json")
CkRest::ckAddHeader(rest,"OData-Version","4.0")
CkRest::ckAddHeader(rest,"Authorization","Bearer DYNAMICS_CRM_ACCESS_TOKEN")
sbResponseBody.i = CkStringBuilder::ckCreate()
If sbResponseBody.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
success = CkRest::ckFullRequestNoBodySb(rest,"GET","/api/data/v9.0/accounts",sbResponseBody)
If success <> 1
Debug CkRest::ckLastErrorText(rest)
CkRest::ckDispose(rest)
CkStringBuilder::ckDispose(sbResponseBody)
ProcedureReturn
EndIf
respStatusCode.i = CkRest::ckResponseStatusCode(rest)
If respStatusCode >= 400
Debug "Response Status Code = " + Str(respStatusCode)
Debug "Response Header:"
Debug CkRest::ckResponseHeader(rest)
Debug "Response Body:"
Debug CkStringBuilder::ckGetAsString(sbResponseBody)
CkRest::ckDispose(rest)
CkStringBuilder::ckDispose(sbResponseBody)
ProcedureReturn
EndIf
jsonResponse.i = CkJsonObject::ckCreate()
If jsonResponse.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkJsonObject::ckLoadSb(jsonResponse,sbResponseBody)
i.i
count_i.i
odataContext.s = CkJsonObject::ckStringOf(jsonResponse,Chr(34) + "@odata.context" + Chr(34))
i = 0
count_i = CkJsonObject::ckSizeOfArray(jsonResponse,"value")
While i < count_i
CkJsonObject::setCkI(jsonResponse, i)
odataEtag.s = CkJsonObject::ckStringOf(jsonResponse,"value[i]." + Chr(34) + "@odata.etag" + Chr(34))
accountid.s = CkJsonObject::ckStringOf(jsonResponse,"value[i].accountid")
i = i + 1
Wend
CkRest::ckDispose(rest)
CkStringBuilder::ckDispose(sbResponseBody)
CkJsonObject::ckDispose(jsonResponse)
ProcedureReturn
EndProcedure
{
"@odata.context": "https://mydomain.api.crm.dynamics.com/api/data/v9.0/$metadata#accounts(accountid)",
"value": [
{
"@odata.etag": "W/\"1817216\"",
"accountid": "aca19cdd-88df-e311-b8e5-6c3be5a8b200"
}
]
}