Sample code for 30+ languages & platforms
VB.NET

SugarCRM Authenticate

See more SugarCRM Examples

Demonstrates how to authenticate to the SugarCRM REST v10 API. This is how an OAuth2 access token is obtained.

Chilkat VB.NET Downloads

VB.NET
Dim success As Boolean = False

Dim rest As New Chilkat.Rest

success = rest.Connect("your.site.domain",443,True,True)
If (success <> True) Then
    Debug.WriteLine(rest.LastErrorText)
    Exit Sub
End If


rest.AddHeader("Cache-Control","no-cache")

' The following code creates the JSON request body.
' The JSON created by this code is shown below.
Dim jsonReq As New Chilkat.JsonObject
jsonReq.UpdateString("grant_type","password")
jsonReq.UpdateString("client_id","sugar")
jsonReq.UpdateString("client_secret","CLIENT_SECRET")
jsonReq.UpdateString("username","admin")
jsonReq.UpdateString("password","password")
jsonReq.UpdateString("platform","custom_api")

' The JSON request body created by the above code:

' {
'   "grant_type": "password",
'   "client_id": "sugar",
'   "client_secret": "CLIENT_SECRET",
'   "username": "admin",
'   "password": "password",
'   "platform": "custom_api"
' }

Dim sbReq As New Chilkat.StringBuilder
jsonReq.EmitSb(sbReq)

rest.AddHeader("Content-Type","application/json")

Dim sbJson As New Chilkat.StringBuilder
success = rest.FullRequestSb("POST","/rest/v10/oauth2/token",sbReq,sbJson)
If (success <> True) Then
    Debug.WriteLine(rest.LastErrorText)
    Exit Sub
End If


If (rest.ResponseStatusCode <> 200) Then
    Debug.WriteLine("Received error response code: " & rest.ResponseStatusCode)
    Debug.WriteLine("Response body:")
    Debug.WriteLine(sbJson.GetAsString())
    Exit Sub
End If


Dim json As New Chilkat.JsonObject
json.LoadSb(sbJson)

' The following code parses the JSON response.
' A sample JSON response is shown below the sample code.
Dim access_token As String
Dim expires_in As Integer
Dim token_type As String
Dim scope As Boolean
Dim refresh_token As String
Dim refresh_expires_in As Integer
Dim download_token As String

access_token = json.StringOf("access_token")
expires_in = json.IntOf("expires_in")
token_type = json.StringOf("token_type")
scope = json.IsNullOf("scope")
refresh_token = json.StringOf("refresh_token")
refresh_expires_in = json.IntOf("refresh_expires_in")
download_token = json.StringOf("download_token")

' A sample JSON response body that is parsed by the above code:

' {
'   "access_token": "c6d495c9-bb25-81d2-5f81-533ef6479f9b",
'   "expires_in": 3600,
'   "token_type": "bearer",
'   "scope": null,
'   "refresh_token": "cbc40e67-12bc-4b56-a1d9-533ef62f2601",
'   "refresh_expires_in": 1209600,
'   "download_token": "cc5d1a9f-6627-3349-96e5-533ef6b1a493"
' }

Debug.WriteLine("Example Completed.")