This example queries the accounts entity set and uses the $select system query option to return the name property for each account.
curl -X GET https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/accounts?$select=name \
-H "Accept: application/json" \
-H "OData-MaxVersion: 4.0" \
-H "OData-Version: 4.0" \
-H "Authorization: Bearer DYNAMICS_CRM_ACCESS_TOKEN"
Use ChilkatAx-9.5.0-win32.pkg
Procedure Test
Handle hoRest
Boolean iSuccess
Boolean iBTls
Integer iPort
Boolean iBAutoReconnect
Variant vSbResponseBody
Handle hoSbResponseBody
Integer iRespStatusCode
Handle hoJsonResponse
Integer i
Integer iCount_i
String sOdataContext
String sOdataEtag
String sName
String sAccountid
String sTemp1
Integer iTemp1
Get Create (RefClass(cComChilkatRest)) To hoRest
If (Not(IsComObjectCreated(hoRest))) Begin
Send CreateComObject of hoRest
End
// URL: https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/accounts?$select=name
Move True To iBTls
Move 443 To iPort
Move True To iBAutoReconnect
Get ComConnect Of hoRest "my-dynamics-domain.api.crm.dynamics.com" iPort iBTls iBAutoReconnect To iSuccess
If (iSuccess <> True) Begin
Get ComConnectFailReason Of hoRest To iTemp1
Showln "ConnectFailReason: " iTemp1
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComAddHeader Of hoRest "OData-MaxVersion" "4.0" To iSuccess
Get ComAddHeader Of hoRest "Accept" "application/json" To iSuccess
Get ComAddHeader Of hoRest "OData-Version" "4.0" To iSuccess
Get ComAddHeader Of hoRest "Authorization" "Bearer DYNAMICS_CRM_ACCESS_TOKEN" To iSuccess
Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody
If (Not(IsComObjectCreated(hoSbResponseBody))) Begin
Send CreateComObject of hoSbResponseBody
End
Get pvComObject of hoSbResponseBody to vSbResponseBody
Get ComFullRequestNoBodySb Of hoRest "GET" "/api/data/v9.0/accounts?$select=name" vSbResponseBody To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoRest To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComResponseStatusCode Of hoRest To iRespStatusCode
If (iRespStatusCode >= 400) Begin
Showln "Response Status Code = " iRespStatusCode
Showln "Response Header:"
Get ComResponseHeader Of hoRest To sTemp1
Showln sTemp1
Showln "Response Body:"
Get ComGetAsString Of hoSbResponseBody To sTemp1
Showln sTemp1
Procedure_Return
End
Get Create (RefClass(cComChilkatJsonObject)) To hoJsonResponse
If (Not(IsComObjectCreated(hoJsonResponse))) Begin
Send CreateComObject of hoJsonResponse
End
Get pvComObject of hoSbResponseBody to vSbResponseBody
Get ComLoadSb Of hoJsonResponse vSbResponseBody To iSuccess
Get ComStringOf Of hoJsonResponse '"@odata.context"' To sOdataContext
Move 0 To i
Get ComSizeOfArray Of hoJsonResponse "value" To iCount_i
While (i < iCount_i)
Set ComI Of hoJsonResponse To i
Get ComStringOf Of hoJsonResponse 'value[i]."@odata.etag"' To sOdataEtag
Get ComStringOf Of hoJsonResponse "value[i].name" To sName
Get ComStringOf Of hoJsonResponse "value[i].accountid" To sAccountid
Move i + 1 To i
Loop
End_Procedure
{
"@odata.context": "https://mydomain.api.crm.dynamics.com/api/data/v8.2/$metadata#accounts(name)",
"value": [
{
"@odata.etag": "W/\"1817213\"",
"name": "A. Datum",
"accountid": "475b158c-541c-e511-80d3-3863bb347ba8"
},
{
"@odata.etag": "W/\"1817214\"",
"name": "Adventure Works",
"accountid": "a8a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817215\"",
"name": "Alpine Ski House",
"accountid": "aaa19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817216\"",
"name": "Blue Yonder Airlines",
"accountid": "aca19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817217\"",
"name": "City Power & Light",
"accountid": "aea19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817218\"",
"name": "Coho Winery",
"accountid": "b0a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817219\"",
"name": "Consolidated Messenger",
"accountid": "b2a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817220\"",
"name": "Fabrikam, Inc.",
"accountid": "b4a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817221\"",
"name": "Fourth Coffee",
"accountid": "b6a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817222\"",
"name": "Graphic Design Institute",
"accountid": "b8a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817223\"",
"name": "Humongous Insurance",
"accountid": "baa19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817224\"",
"name": "Litware",
"accountid": "bca19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817225\"",
"name": "Lucerne Publishing",
"accountid": "bea19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817226\"",
"name": "Margie's Travel",
"accountid": "c0a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817227\"",
"name": "Northwind Traders",
"accountid": "c2a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817228\"",
"name": "Proseware, Inc.",
"accountid": "c4a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817229\"",
"name": "School of Fine Art",
"accountid": "c6a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817230\"",
"name": "Southridge Video",
"accountid": "c8a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817231\"",
"name": "Tailspin Toys",
"accountid": "caa19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817232\"",
"name": "The Phone Company",
"accountid": "cca19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817233\"",
"name": "Trey Research",
"accountid": "cea19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817234\"",
"name": "Wide World Importers",
"accountid": "d0a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817235\"",
"name": "Wingtip Toys",
"accountid": "d2a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817236\"",
"name": "Woodgrove Bank",
"accountid": "d4a19cdd-88df-e311-b8e5-6c3be5a8b200"
},
{
"@odata.etag": "W/\"1817237\"",
"name": "Best o' Sales",
"accountid": "2123455d-be62-e411-80d6-b4b52f567ec8"
},
{
"@odata.etag": "W/\"1817238\"",
"name": "Microsoft",
"accountid": "d3ae1b3a-8bd2-e411-80ef-c4346bac7be8"
}
]
}