Authentication

Procuro APIs all require a Bearer token to be sent with each request. To obtain this token, you will need to have an approved account set up by Procuro Support. Once approved, all credential information will be sent to you via email.

Overview

  • Make a request to token endpoint (https://idp.procuro.com/connect/token)
  • Get the access_token value from the response of the token endpoint
  • Add the Authorization header to your API request. (e.g. "Authorization": "Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IkJE...")

Note: you can store the access_token value for reuse until it expires.

Authentication Token

To request a token, you will need to make a request to the following endpoint

POST https://idp.procuro.com/connect/token

Parameters Used to Request Token

Name Value Description
client_id [CLIENT-ID] Application ClientID provided to you
client_secret [CLIENT-PASSWORD] Application Client Password provided to you
username [YOUR-USERNAME] Your Procuro account username
password [YOUR-PASSWORD] Your Procuro account password
grant_type password This does not change
scope procuro.public.api.scope This does not change

.

Postman Example

Replace the values in < > with your credentials

curl --location --request POST 'https://idp.procuro.com/connect/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'client_id=<your-client-id>' \
--data-urlencode 'client_secret=<your-client-secret>' \
--data-urlencode 'scope=procuro.public.api.scope' \
--data-urlencode 'username=<your-procuro-username>' \
--data-urlencode 'password=<your-procuro-password'
Sample Result
{
    "access_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjI4ND...",
    "expires_in": 3600,
    "token_type": "Bearer",
    "scope": "procuro.public.api.scope"
}
Property Description
access_token Bearer token to be used with every api request
expires_in Token expiration in minutes
token_type Type of token
scope Valid scopes