Forum Discussion

Sri1999's avatar
Sri1999
Frequent Visitor
1 year ago
Solved

Authentication Issue while connecting to API with OAuth 2.0



I am able to get the access token Dynamically, but could not able to retrieve data.
Please help me with this issue. Below is the M code for your reference

Thank you.


let // Define API details
tokenUrl = "https://auth.servicetitan.io/connect/token",
apiUrl = "https://api.servicetitan.io/crm/v2/tenant/{tenant_id}/export/customers",
clientId = "%client_id%",
clientSecret = "%client_secret%",


// Get access token
tokenResponse = Json.Document(Web.Contents(tokenUrl, [
Content = Text.ToBinary("grant_type=client_credentials&client_id=" & clientId & "&client_secret=" & clientSecret & "&scope=" & scope),
Headers = [
Authorization = "Basic " & Binary.ToText(Text.ToBinary(clientId & ":" & clientSecret), BinaryEncoding.Base64),
Accept = "application/json",
#"Content-Type" = "application/x-www-form-urlencoded"
],
ManualStatusHandling = {400, 401, 403}
])),

accessToken = if Record.HasFields(tokenResponse, "access_token") then tokenResponse[access_token] else error "Failed to get access token",

// Call API with the access token
apiResponse = Web.Contents(apiUrl, [Headers=[Accept="application/json"]])

// Return data

in apiResponse

3 Replies

  • v-menakakota's avatar
    v-menakakota
    Community Support

    Hi Sri1999 ,

    Thank you lbendlin  for providing possible solution. I hope this information is helpful. Please let me know if you have any further questions or if you'd like to discuss this further. If this answers your question, please Accept it as a solution and give it a 'Kudos' so others can find it easily.

    Thank you.