Authentication at Pion
The Pion API provides an OAuth Client Credentials grant flow for accessing our services. Client credentials can be self-served in the Pion Portal. This will create a new pairing of a clientId and clientSecret that is used to fetch an access token that must be passed into requests that require authentication. Once you’ve got client credentials, you can send a request to the /auth/token endpoint. This is a post request with two body parameters. Client ID The Client ID is a unique identifier that is attached to your credentials by Pion. This should be considered sensitive data and stored securely. Client Secret The Client Secret is a confidential key that should be stored securely. This is used in conjunction with the Client ID to grant access to the Pion API. This endpoint will return an access token that can then be used in subsequent requests that require authentication. Access Token A short-lived token that is used to verify that a client has permissions to access Pion data.Leads
The Lead Service captures rich, consented data directly from a brands verification integrations and marketplace, allowing you to enrich customer profiles and enhance your existing CRM. Leads are returned in batches of 1000. When a request has more than 1000 leads, an optional cursor attribute will be present in the response, which can be used to fetch the next batch of 1000 leads.
Once you have a valid access token, retrieved via the /auth endpoint. You can use this token to request lead data for your organisation. This is a GET request with two query parameters.
From - This is the date, formatted dd-mm-yyyy, that you would like the earliest lead data from.
To - This is the date, formatted dd-mm-yyyy, that you would like the latest lead data from.
Cursor - This is the optional reference object for the next item in the batch
This endpoint will return a list of the lead data between the two ranges.
Technical Documentation
[POST] /auth/token
POST https://api.wearepion.com/auth/tokenBody Params
Example Request Body**:**
Headers
Example Responses
200 OK
400 Bad Request
- JSON body required
- clientId required
- clientSecret required
401 Unauthorised
[GET] /leads
GET https://api.wearepion.com/leads?from=13-01-2026&to=13-02-2026Headers
Query Parameters
Example Responses
GET https://api.wearepion.com/leads?from=13-01-2026&to=13-02-2026
A request for leads data that does not contain the fields query parameter will return all available leads data within range.
400 Bad Request
401 Unauthorised
[GET] /leads - Request Selected Fields Only
Using the optional fields query parameter you may request leads data to return only selected fields. Available fields:- lead_type
- sbid
- first_name
- second_name
- gender
- date_of_birth
- country
- institution
- grad_year
Example Responses
200 OK
GET https://api.wearepion.com/leads?from=13-01-2026&to=13-02-2026&fields[lead]=email,institution,grad_year
422 Bad Request
GET https://api.wearepion.com/leads?from=13-01-2026&to=13-02-2026&fields[lead]=email,institution,potatoes
422 Bad Request
GET https://api.wearepion.com/leads?from=13-01-2026&to=13-02-2026&fields[lead]=