Sample code for 30+ languages & platforms
Xojo Plugin

Dynamics CRM Oauth2 Client Credentials

See more Dynamics CRM Examples

Get an OAuth2 access token for Dynamics CRM using client credentials.

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

Dim http As New Chilkat.Http

// Pass the client ID/secret using Basic HTTP authentication.
http.Login = "CLIENT_ID"
http.Password = "CLIENT_SECRET"
http.BasicAuth = True

Dim req As New Chilkat.HttpRequest
req.AddParam "client_secret","CLIENT_SECRET"
req.AddParam "client_id","CLIENT_ID"
req.AddParam "scope","https://yourdynamicsdomain.crm3.dynamics.com/.default"
req.AddParam "grant_type","client_credentials"

// Use your own tenant ID, for example 4d8fdd66-66d1-43b0-ae5c-e31b4b7de5cd
Dim url As String
url = "https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token"
req.HttpVerb = "POST"
req.ContentType = "application/x-www-form-urlencoded"

Dim resp As New Chilkat.HttpResponse
success = http.HttpReq(url,req,resp)
If (success = False) Then
    System.DebugLog(http.LastErrorText)
    Return
End If

Dim statusCode As Int32
statusCode = resp.StatusCode
System.DebugLog("Response status code = " + Str(statusCode))

Dim json As New Chilkat.JsonObject
success = json.Load(resp.BodyStr)

json.EmitCompact = False
System.DebugLog(json.Emit())

If (statusCode = 200) Then
    success = json.WriteFile("qa_data/tokens/dynamicsCrmClientCredentialsToken.json")
    System.DebugLog("Success.")
Else
    System.DebugLog("Failed.")
End If