Authentication

The APIs described in this documentation use OAuth 2.0 authentication. Every request must include an access token. You get this token by sending your Client ID and Client Secret in an authentication request.

Get an access token

To begin the backend integration process, you must first get an access token. This requires your Client ID and Client Secret. Getnet sends them by email when you register on the Merchant Portal. If you haven't received them, contact Getnet support.
Please note that each access token is valid for 60 minutes. We recommend that you refresh the token automatically before it expires. This keeps your access to the APIs uninterrupted.
To call the APIs, set the host_getnet_api variable to the following base URL:
Example request with cURL
JSON
curl --location '{{host_getnet_api}}/authentication/oauth2/access_token' --header 'Content-Type: application/x-www-form-urlencoded' --header 'Accept: application/json' --data-urlencode 'grant_type=client_credentials' --data-urlencode 'client_id={{PUT_YOUR_CLIENT_ID_HERE}}' --data-urlencode 'client_secret={{PUT_YOUR_CLIENT_SECRET_HERE}}'
Response
JSON
{ "access_token": "eyJ0eXAiOiJKV1QiLCJraWQiOiI1amhLMy9xK0ZpK0tTRkIrRUwwN3VhMFYwdGM9Ii...", "scope": "name-scope:r", "token_type": "Bearer", "expires_in": 3599 }
Example request with Node.js (Axios)
JSON
const axios = require('axios'); const qs = require('qs'); let data = qs.stringify({ 'grant_type': 'client_credentials', 'client_id': '{{client_id}}', 'client_secret': '{{client_secret}}' }); let config = { method: 'post', maxBodyLength: Infinity, url: '{{host_getnet_api}}/authentication/oauth2/access_token', headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Accept': 'application/json' }, data : data }; axios.request(config) .then((response) => { console.log(JSON.stringify(response.data)); }) .catch((error) => { console.log(error); });
Example request with PHP (Guzzle)
JSON
<?php $client = new Client(); $headers = [ 'Content-Type' => 'application/x-www-form-urlencoded', 'Accept' => 'application/json' ]; $options = [ 'form_params' => [ 'grant_type' => 'client_credentials', 'client_id' => '{{client_id}}', 'client_secret' => '{{client_secret}}' ]]; $request = new Request('POST', '{{host_getnet_api}}/authentication/oauth2/access_token', $headers); $res = $client->sendAsync($request, $options)->wait(); echo $res->getBody();

Next steps

Now that you have completed the authentication process, proceed to the next steps: