Authentication
All PulsePoint Life APIs utilize the same mechanism for authenticating against the services. Please use the API reference to test out your keys and interact with the API's authentication.
Contact your PulsePoint representative to obtain an API "Client ID" and "Client Secret" to be used on the authorization end point. Once you have your ID and secret, you will use your preferred means of making REST API calls. We use curl below for general demonstration of the API.
Step 1 — Obtain an Access Token
Send your credentials to the token endpoint using Basic Auth (base64-encoded client_id:client_secret) along with your Life username and password.
Endpoint
POST https://lifeapi.pulsepoint.com/RestApi/oauth/token
Request Parameters
| Parameter | Location | Required | Description |
|---|---|---|---|
| Authorization | Header | yes | Basic Auth — base64-encoded client_id:client_secret |
| Content-Type | Header | yes | Must be application/x-www-form-urlencoded |
| grant_type | Body | yes | Must be password for initial token request |
| username | Body | yes | Your Life platform username |
| password | Body | yes | Your Life platform password |
Example Request
curl --request POST \
--url https://lifeapi.pulsepoint.com/RestApi/oauth/token \
--header 'accept: application/json' \
--header 'authorization: Basic ODkxMDAxODA6Mzk4MDI4MDI=' \
--header 'content-type: application/x-www-form-urlencoded' \
--data grant_type=password \
--data username=your_username \
--data password=your_passwordStep 2 — Extract Tokens from the Response
A successful request returns a JSON response containing your access and refresh tokens.
Example Response
{
"access_token": "49923c00-bfca-4591-a54a-b308dc811a76",
"token_type": "bearer",
"refresh_token": "22bedfd4-62d3-42bc-9467-668b20966110",
"expires_in": 6000,
"scope": "read write"
}Response Field List
| Field | Type | Description |
|---|---|---|
| access_token | string | The bearer token to include in all subsequent API requests |
| token_type | string | Always bearer |
| refresh_token | string | Used to obtain a new access token without re-entering credentials. Valid for 7 days (604800 seconds) |
| expires_in | integer | Seconds until the access token expires. The access token is valid for 100 minutes (6000 seconds) |
| scope | string | The access scope granted to this token |
Step 3 — Make API Calls
Include the access token in the Authorization header for all subsequent API requests.
curl --location 'https://lifeapi.pulsepoint.com/RestApi/v2/account/{accountId}/campaigns' \
--header 'Authorization: Bearer <access_token>'Refreshing Your Token
Access tokens expire after 100 minutes. If your session will exceed this duration, use your refresh token to obtain a new access token without re-entering your username and password.
Request Parameters
| Parameter | Location | Required | Description |
|---|---|---|---|
| Authorization | Header | yes | Basic Auth — base64-encoded client_id:client_secret |
| Content-Type | Header | yes | Must be application/x-www-form-urlencoded |
| grant_type | Body | yes | Must be refresh_token |
| refresh_token | Body | yes | The refresh token returned in your original token response |
Example Request
curl --request POST \
--url 'https://lifeapi.pulsepoint.com/RestApi/oauth/token' \
--header 'content-type: application/x-www-form-urlencoded' \
--user '$client_id:$client_secret' \
--data grant_type=refresh_token \
--data refresh_token=$REFRESH_TOKENNote: Refresh tokens are valid for 7 days. If your refresh token has also expired, you will need to repeat Step 1 with your username and password to obtain new tokens.
Updated about 1 month ago
