Ramp Developer API

The Ramp Developer API enables developers to programmatically access and manage Ramp account data, build applications for the Ramp App Center, and automate financial workflows. It provides resources for transactions, cards, users, departments, locations, vendors, accounting integrations, reimbursements, bills, and statements, supporting both reporting and automation use cases.

Documentation

Specifications

Examples

Schemas & Data

Other Resources

OpenAPI Specification

ramp-developer-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Ramp Developer API
  description: >-
    The Ramp Developer API enables developers to access and manage Ramp account
    data, build applications for the Ramp App Center, and automate financial
    workflows. It provides programmatic access to spend management resources
    including transactions, cards, users, departments, locations, vendors,
    accounting integrations, reimbursements, bills, and statements. The API
    supports both reading data for reporting and analytics use cases and
    writing data for automation of financial operations across an organization.
  version: '1.0'
  contact:
    name: Ramp Developer Support
    url: https://docs.ramp.com/developer-api/v1/overview/introduction
  termsOfService: https://ramp.com/legal/platform-agreement
  license:
    name: Ramp Platform Terms
    url: https://ramp.com/legal/platform-agreement
externalDocs:
  description: Ramp Developer API Documentation
  url: https://docs.ramp.com/developer-api/v1/overview/introduction
servers:
  - url: https://api.ramp.com/developer/v1
    description: Production
  - url: https://demo-api.ramp.com/developer/v1
    description: Demo
tags:
  - name: Accounts
    description: General ledger account resources used to map Ramp activity to accounting systems.
  - name: Accounting Fields
    description: Custom accounting fields and field options for categorizing transactions.
  - name: Accounting Connection
    description: Endpoints for managing the connection between Ramp and external accounting platforms.
  - name: Vendors
    description: Vendor records used by accounting integrations and bill pay workflows.
  - name: Tax Codes
    description: Tax code configuration for accounting integrations.
  - name: Inventory Items
    description: Inventory item records used for line item categorization.
  - name: Applications
    description: Financing and credit applications.
  - name: Audit Logs
    description: Audit events recording activity within a Ramp organization.
  - name: Transactions
    description: Card and bill transactions across the organization.
  - name: Cards
    description: Physical and virtual cards issued to users and departments.
  - name: Users
    description: User accounts within a Ramp organization.
  - name: Departments
    description: Department records used to organize spend.
  - name: Locations
    description: Location records used to organize spend.
  - name: Reimbursements
    description: Out-of-pocket reimbursement requests.
  - name: Bills
    description: Bill pay records and approval workflows.
  - name: Statements
    description: Card statement records.
paths:
  /accounting/accounts:
    get:
      tags:
        - Accounts
      summary: List general ledger accounts
      description: Returns a paginated list of general ledger accounts configured for the organization.
      operationId: listAccountingAccounts
      parameters:
        - name: page_size
          in: query
          schema:
            type: integer
        - name: start
          in: query
          schema:
            type: string
      responses:
        '200':
          description: A page of accounting accounts.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountList'
      security:
        - OAuth2:
            - accounting:read
  /accounting/vendors:
    get:
      tags:
        - Vendors
      summary: List accounting vendors
      operationId: listAccountingVendors
      responses:
        '200':
          description: A page of vendor records.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VendorList'
      security:
        - OAuth2:
            - accounting:read
  /transactions:
    get:
      tags:
        - Transactions
      summary: List transactions
      description: Returns a paginated list of transactions for the organization.
      operationId: listTransactions
      parameters:
        - name: from_date
          in: query
          schema:
            type: string
            format: date
        - name: to_date
          in: query
          schema:
            type: string
            format: date
      responses:
        '200':
          description: A page of transactions.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionList'
      security:
        - OAuth2:
            - transactions:read
  /transactions/{id}:
    get:
      tags:
        - Transactions
      summary: Retrieve a transaction
      operationId: getTransaction
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: A transaction record.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Transaction'
      security:
        - OAuth2:
            - transactions:read
  /cards:
    get:
      tags:
        - Cards
      summary: List cards
      operationId: listCards
      responses:
        '200':
          description: A page of cards.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CardList'
      security:
        - OAuth2:
            - cards:read
  /users:
    get:
      tags:
        - Users
      summary: List users
      operationId: listUsers
      responses:
        '200':
          description: A page of users.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserList'
      security:
        - OAuth2:
            - users:read
  /departments:
    get:
      tags:
        - Departments
      summary: List departments
      operationId: listDepartments
      responses:
        '200':
          description: A page of departments.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DepartmentList'
      security:
        - OAuth2:
            - departments:read
  /locations:
    get:
      tags:
        - Locations
      summary: List locations
      operationId: listLocations
      responses:
        '200':
          description: A page of locations.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocationList'
      security:
        - OAuth2:
            - locations:read
  /reimbursements:
    get:
      tags:
        - Reimbursements
      summary: List reimbursements
      operationId: listReimbursements
      responses:
        '200':
          description: A page of reimbursements.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReimbursementList'
      security:
        - OAuth2:
            - reimbursements:read
  /bills:
    get:
      tags:
        - Bills
      summary: List bills
      operationId: listBills
      responses:
        '200':
          description: A page of bills.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillList'
      security:
        - OAuth2:
            - bills:read
  /statements:
    get:
      tags:
        - Statements
      summary: List statements
      operationId: listStatements
      responses:
        '200':
          description: A page of statements.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StatementList'
      security:
        - OAuth2:
            - statements:read
  /audit-logs/events:
    get:
      tags:
        - Audit Logs
      summary: List audit events
      operationId: listAuditEvents
      responses:
        '200':
          description: A page of audit events.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditEventList'
      security:
        - OAuth2:
            - audit:read
components:
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.ramp.com/developer/v1/token
          scopes:
            accounting:read: Read accounting resources
            accounting:write: Write accounting resources
            transactions:read: Read transactions
            cards:read: Read cards
            users:read: Read users
            departments:read: Read departments
            locations:read: Read locations
            reimbursements:read: Read reimbursements
            bills:read: Read bills
            statements:read: Read statements
            audit:read: Read audit logs
            applications:read: Read applications
  schemas:
    Account:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        code:
          type: string
        classification:
          type: string
    AccountList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Account'
        page:
          $ref: '#/components/schemas/Page'
    Vendor:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        code:
          type: string
    VendorList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Vendor'
        page:
          $ref: '#/components/schemas/Page'
    Transaction:
      type: object
      properties:
        id:
          type: string
        amount:
          type: number
        currency_code:
          type: string
        merchant_name:
          type: string
        user_transaction_time:
          type: string
          format: date-time
        state:
          type: string
        sk_category_id:
          type: integer
        card_id:
          type: string
        user_id:
          type: string
    TransactionList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Transaction'
        page:
          $ref: '#/components/schemas/Page'
    Card:
      type: object
      properties:
        id:
          type: string
        cardholder_id:
          type: string
        display_name:
          type: string
        last_four:
          type: string
        state:
          type: string
        is_physical:
          type: boolean
    CardList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Card'
        page:
          $ref: '#/components/schemas/Page'
    User:
      type: object
      properties:
        id:
          type: string
        email:
          type: string
        first_name:
          type: string
        last_name:
          type: string
        role:
          type: string
        department_id:
          type: string
        location_id:
          type: string
        is_manager:
          type: boolean
    UserList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/User'
        page:
          $ref: '#/components/schemas/Page'
    Department:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
    DepartmentList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Department'
        page:
          $ref: '#/components/schemas/Page'
    Location:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
    LocationList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Location'
        page:
          $ref: '#/components/schemas/Page'
    Reimbursement:
      type: object
      properties:
        id:
          type: string
        amount:
          type: number
        currency:
          type: string
        merchant:
          type: string
        user_id:
          type: string
        transaction_date:
          type: string
          format: date
        state:
          type: string
    ReimbursementList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Reimbursement'
        page:
          $ref: '#/components/schemas/Page'
    Bill:
      type: object
      properties:
        id:
          type: string
        amount:
          type: object
        vendor_id:
          type: string
        invoice_number:
          type: string
        due_at:
          type: string
          format: date-time
        status:
          type: string
    BillList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Bill'
        page:
          $ref: '#/components/schemas/Page'
    Statement:
      type: object
      properties:
        id:
          type: string
        start_date:
          type: string
          format: date
        end_date:
          type: string
          format: date
        amount:
          type: number
    StatementList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/Statement'
        page:
          $ref: '#/components/schemas/Page'
    AuditEvent:
      type: object
      properties:
        id:
          type: string
        event_type:
          type: string
        actor_user_id:
          type: string
        target_id:
          type: string
        timestamp:
          type: string
          format: date-time
    AuditEventList:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/AuditEvent'
        page:
          $ref: '#/components/schemas/Page'
    Page:
      type: object
      properties:
        next:
          type: string
        previous:
          type: string