Overview

API Reference

The canonical schema is the OpenAPI specification, covering 170 endpoints. The endpoints below are the ones most integrations start with.

Base URLs: https://api.ramp.com for production, https://demo-api.ramp.com for sandbox. Need a token first? See the Quickstart.

POST/developer/v1/token

Mint an access token. Send client_id:client_secret base64-encoded in the Authorization header as HTTP Basic Auth.

Authorization
Authorizationstring

Sent as the Authorization header. Your key is used only by your browser for this request — it is never sent to Docsbook or stored.

Body
grant_typestringrequired

One of authorization_code, client_credentials, or refresh_token

scopestring

Space-separated list of scopes to grant the returned token

codestring

Authorization code, for the authorization_code flow

redirect_uristring

The redirect URI used in the authorization request

refresh_tokenstring

The refresh token issued to you, to get a new access token

Example
curl -X POST https://api.ramp.com/developer/v1/token \
  -H "Authorization: Basic $(echo -n 'YOUR_CLIENT_ID:YOUR_CLIENT_SECRET' | base64)" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials" \
  -d "scope=transactions:read"
Response
{
  "access_token": "YOUR_ACCESS_TOKEN",
  "token_type": "Bearer",
  "expires_in": 864000,
  "scope": "transactions:read"
}
GET/developer/v1/transactions

List transactions with filters across merchant, user, amount, date, and sync state. Requires transactions:read.

Authorization
Authorizationstring

Sent as the Authorization header. Your key is used only by your browser for this request — it is never sent to Docsbook or stored.

Query
from_datestring

Transactions with a user_transaction_time after this date

to_datestring

Transactions with a user_transaction_time before this date

merchant_idstring

Filter by merchant

user_idstring

Filter by user

card_idstring

Filter by physical card

spend_program_idstring

Filter by spend program

department_idstring

Filter by department

entity_idstring

Filter by business entity

statestring

Filter by transaction state; ALL includes every state

min_amountnumber

Transactions with an amount larger than this value

max_amountnumber

Transactions with an amount smaller than this value

has_been_approvedboolean

Only approved, or only unapproved, transactions

requires_memoboolean

Transactions that require a memo but do not have one

sync_statusstring

Filter by sync status; supersedes sync_ready when set

include_merchant_databoolean

Include all purchase data provided by the merchant

order_by_date_descboolean

Sort by transaction date, newest first

page_sizeinteger

Results per page

startstring

ID of the last entity on the previous page, used as the cursor

Example
curl "https://api.ramp.com/developer/v1/transactions?page_size=10&order_by_date_desc=true" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GET/developer/v1/users

List the people on the account. Requires users:read.

Authorization
Authorizationstring

Sent as the Authorization header. Your key is used only by your browser for this request — it is never sent to Docsbook or stored.

Query
emailstring

Filter by email address

statusstring

USER_DRAFT, INVITE_PENDING, USER_ACTIVE, USER_INACTIVE, USER_SUSPENDED

rolestring

Filter by Ramp role

department_idstring

Filter by department

entity_idstring

Filter by business entity

employee_idstring

Filter by your own employee identifier

page_sizeinteger

Results per page

startstring

Pagination cursor

Example
curl "https://api.ramp.com/developer/v1/users?status=USER_ACTIVE&page_size=25" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GET/developer/v1/bills

List bills with filters across vendor, status, and dates. Requires bills:read.

Authorization
Authorizationstring

Sent as the Authorization header. Your key is used only by your browser for this request — it is never sent to Docsbook or stored.

Query
vendor_idstring

Filter by vendor

entity_idstring

Filter by business entity

invoice_numberstring

Exact invoice number

payment_statusstring

Filter by payment status

approval_statusstring

Bill approval status, separate from payment status

payment_methodstring

Filter by payment method

sync_readyboolean

Only bills ready to sync to the ERP

payment_details_missingboolean

Only bills missing payment details

is_archivedboolean

Show archived bills instead of active ones

from_due_datestring

Bills due on or after this date

to_due_datestring

Bills due on or before this date

min_amountnumber

Bills at or above this amount

max_amountnumber

Bills at or below this amount

page_sizeinteger

Results per page

startstring

Pagination cursor

Example
curl "https://api.ramp.com/developer/v1/bills?sync_ready=true&page_size=50" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Errors
Status Meaning
401 Missing, expired, or wrong-environment token
403 The token's scopes do not cover this endpoint
429 Rate limit exceeded — 200 requests per 10-second window
504 Request exceeded the 60-second timeout; paginate into smaller pages
  • Conventions — pagination, monetary values, deferred tasks, and error shapes.
  • Authorization — the scope each endpoint requires.
  • Webhooks — event delivery instead of polling these endpoints.

Updated

Was this page helpful?