Access Token

Gerando o access_token

Ele deve ser utilizado para todos os requests feitos para a API

curl -X "POST" "https://auth.zagapp.com.br/oauth2/token?grant_type=client_credentials&client_id=<client_id>&scope=<scope>" \
     -H 'Content-Type: application/x-www-form-urlencoded; charset=utf-8'
     -u '<client_id>:<client_secret>'

Response

{
  "access_token": "eyJraWQiOiJrOW...",
  "expires_in": 3600,
  "token_type": "Bearer"
}

Usando o access_token

Todos os requests, precisam de um header Authorizadion, repassando o JWT recebido acima, exemplo:

curl -X "POST" "/graphql" \
     -H 'Authorization: eyJraWQiOiJrO...' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
	"query": "query{allCompanies{edges{node{id name}}}}",
	"variables": {}
}'

Company ID

Alguns endpoints requerem o company id, que pode ser consultado em:

curl -X "POST" "/graphql" \
     -H 'Authorization: eyJraWQiOiJrOW...' \
     -H 'Content-Type: application/json; charset=utf-8' \
     -d $'{
	"query": "query{allCompanies{edges{node{id name}}}}",
	"variables": {}
}'

Response

{
  "data": {
    "allCompanies": {
      "edges": [
        {
          "node": {
            "id": "Q29tcGFueU5vZGU6MQ==",
            "name": "ACME"
          }
        }
      ]
    }
  }
}