Download OpenAPI / Postman

Use these downloads to explore the API and run calls in Postman. The OpenAPI file is machine readable, and the Postman assets include ready to use environments for Sandbox and Production.

What you can download

Asset
Purpose
Format

OpenAPI v1

Full REST specification for all public endpoints

JSON

Postman Collection

All endpoints with example requests and response bodies

JSON

Postman Environment Sandbox

Variables for Sandbox including base URL and token URL

JSON

Postman Environment Production

Variables for Production including base URL and token URL

JSON

Base URLs used by the assets

Environment
REST API base URL
OAuth token URL

Sandbox

https://api.test.devs.beadpay.io

https://identity.beadpay.io/realms/<realm>/protocol/openid-connect/token

Production

https://api.beadpay.io

https://identity.beadpay.io/realms/<realm>/protocol/openid-connect/token

Note The token path follows OpenID Connect. Your realm value differs by environment. If you are unsure which realm to use, contact your Bead representative.

Quick start in Postman

  1. Download the Postman Collection and the environment for the environment you plan to use.

  2. Import both files into Postman.

  3. Open the imported environment and confirm the variables match your credentials.

  4. Request a token with your OAuth client details and save it in the environment as access_token.

  5. Send any request in the collection. All requests read {{baseUrl}} and {{access_token}} from the active environment.

Environment variables included

Variable
Description
Example value Sandbox
Example value Production

baseUrl

Host for API requests

https://api.test.devs.beadpay.io

https://api.beadpay.io

tokenUrl

OAuth token endpoint

https://identity.beadpay.io/realms/<realm>/protocol/openid-connect/token

https://identity.beadpay.io/realms/<realm>/protocol/openid-connect/token

clientId

OAuth client identifier assigned to you

your-sandbox-client-id

your-prod-client-id

clientSecret

OAuth client secret

••••••••

••••••••

username

When using password grant

password

When using password grant

••••••••

••••••••

scope

Optional scope string

openid profile email

openid profile email

access_token

Bearer token stored after authentication

set by you

set by you

merchantId

Helpful for location and terminal examples

mer_4e5a13aa

mer_4e5a13aa

partnerId

Helpful for partner scoped examples

par_12345678

par_12345678

Credential profiles Many teams use separate credentials for Boarding and for Payments. Create one Postman environment per credential set, or duplicate the environment and change clientId, clientSecret, and user credentials accordingly.

How to fetch a token

Use your preferred grant type. The example below shows a password grant. Client credentials grant follows the same token URL with grant_type=client_credentials.

curl -X POST "{{tokenUrl}}" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=password" \
  -d "client_id={{clientId}}" \
  -d "client_secret={{clientSecret}}" \
  -d "username={{username}}" \
  -d "password={{password}}" \
  -d "scope={{scope}}"

Copy the access_token value into your Postman environment variable named access_token.

Example request using variables

curl -X GET "{{baseUrl}}/health" \
  -H "Authorization: Bearer {{access_token}}"

Versioning and updates

Topic
Guidance

Spec version

OpenAPI v1 is the current public specification

Backward compatibility

Breaking changes are announced on the Changelog and communicated to registered partners

Regeneration

If your code generator requires a local file, re download the OpenAPI file when you see a new date on the Changelog

Troubleshooting

Symptom
Likely cause
Fix

401 on every request

Missing or expired token

Refresh the token and confirm the Authorization header reads Bearer {{access_token}}

403 on valid token

Token from the other environment or missing permission

Confirm you used the correct environment and credentials for the endpoint

404 on known endpoint

Wrong base URL

Confirm baseUrl points to the correct environment

Request timeouts

Local firewall or VPN rules

Allow outbound traffic to the base URL and the identity host

Next steps

Action
Where

Review Authentication and OAuth

Reference Guide

Import the Location Management examples

Entity Management section

Set up webhook receivers

Webhook Event Reference

Last updated