Find a contactid given a fullname.
curl -X GET https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/contacts
-H "Accept: application/json" \
-H "OData-MaxVersion: 4.0" \
-H "OData-Version: 4.0" \
-d "$select=contactid" \
-d "$filter=fullname eq 'Tomasz Bochenek'" \
-H "Authorization: Bearer DYNAMICS_CRM_ACCESS_TOKEN"
Dim rest As New Chilkat.Rest
Dim success As Boolean
// URL: https://my-dynamics-domain.api.crm.dynamics.com/api/data/v9.0/contacts
Dim bTls As Boolean
bTls = True
Dim port As Int32
port = 443
Dim bAutoReconnect As Boolean
bAutoReconnect = True
success = rest.Connect("my-dynamics-domain.api.crm.dynamics.com",port,bTls,bAutoReconnect)
If (success <> True) Then
System.DebugLog("ConnectFailReason: " + Str(rest.ConnectFailReason))
System.DebugLog(rest.LastErrorText)
Return
End If
rest.AddQueryParam("$select","contactid")
rest.AddQueryParam("$filter","fullname eq 'Tomasz Bochenek'")
rest.AddHeader("OData-MaxVersion","4.0")
rest.AddHeader("Accept","application/json")
rest.AddHeader("OData-Version","4.0")
rest.AddHeader("Authorization","Bearer DYNAMICS_CRM_ACCESS_TOKEN")
Dim sbResponseBody As New Chilkat.StringBuilder
success = rest.FullRequestNoBodySb("GET","/api/data/v9.0/contacts",sbResponseBody)
If (success <> True) Then
System.DebugLog(rest.LastErrorText)
Return
End If
Dim respStatusCode As Int32
respStatusCode = rest.ResponseStatusCode
If (respStatusCode >= 400) Then
System.DebugLog("Response Status Code = " + Str(respStatusCode))
System.DebugLog("Response Header:")
System.DebugLog(rest.ResponseHeader)
System.DebugLog("Response Body:")
System.DebugLog(sbResponseBody.GetAsString())
Return
End If
Dim jsonResponse As New Chilkat.JsonObject
jsonResponse.LoadSb(sbResponseBody)
Dim i As Int32
Dim count_i As Int32
Dim odataContext As String
odataContext = jsonResponse.StringOf("""@odata.context""")
i = 0
count_i = jsonResponse.SizeOfArray("value")
While i < count_i
jsonResponse.I = i
Dim odataEtag As String
odataEtag = jsonResponse.StringOf("value[i].""@odata.etag""")
Dim contactid As String
contactid = jsonResponse.StringOf("value[i].contactid")
i = i + 1
Wend
{
"@odata.context": "https://mydomain.api.crm.dynamics.com/api/data/v9.0/$metadata#contacts(contactid)",
"value": [
{
"@odata.etag": "W/\"1162210\"",
"contactid": "1fa1e5b9-88df-e311-b8e5-6c3be5a8b200"
}
]
}