Rillet Vendors API

The Vendors API from Rillet — 2 operation(s) for vendors.

Operations 5

GET /vendors Lists all vendors #
POST /vendors Creates a vendor #
GET /vendors/{vendor_id} Retrieves a vendor #
PUT /vendors/{vendor_id} Updates a vendor #
DELETE /vendors/{vendor_id} Deletes a vendor #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/rillet-vendors-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

rillet-vendors-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Rillet Accounting Vendors API
  version: v4.0
servers:
- url: https://api.rillet.com
  description: Production server url
- url: https://sandbox.api.rillet.com
  description: Test server url
security:
- bearerAuth: []
tags:
- name: Vendors
paths:
  /vendors:
    get:
      tags:
      - Vendors
      operationId: list-all-vendors
      summary: Lists all vendors
      description: 'Returns vendors with pagination and optional status or currency filters.

        Vendor ids feed bill creation, vendor credits, and payment workflows.

        '
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - name: updated.gt
        in: query
        required: false
        description: Filter vendors updated after this timestamp
        schema:
          type: string
          format: date-time
          example: '2023-01-01T00:00:00Z'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                required:
                - vendors
                - pagination
                type: object
                properties:
                  vendors:
                    type: array
                    items:
                      $ref: '#/components/schemas/VendorResponse'
                  pagination:
                    $ref: '#/components/schemas/Pagination'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    post:
      tags:
      - Vendors
      operationId: create-a-vendor
      summary: Creates a vendor
      description: 'Adds a vendor master record the accounts-payable team can select on bills, vendor credits, and payments.

        Capture legal name, remit-to address, default currency, and payment terms so downstream bills inherit correct due dates and banking instructions.

        '
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VendorRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VendorResponse'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      parameters: []
  /vendors/{vendor_id}:
    get:
      tags:
      - Vendors
      operationId: retrieve-a-vendor
      summary: Retrieves a vendor
      description: 'Fetches the full vendor profile including identifiers you must echo back on PUT updates.

        Use before editing to avoid wiping optional fields, and when validating tax or payment metadata during bill entry.

        '
      parameters:
      - name: vendor_id
        in: path
        description: UUID of the vendor to be used in this operation.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VendorResponse'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    put:
      tags:
      - Vendors
      operationId: update-a-vendor
      summary: Updates a vendor
      description: 'IMPORTANT: This is a full-replace operation (PUT semantics). All fields must be

        included in the request body — omitting any field will set it to null, wiping

        existing data. Always call retrieve-a-vendor first to fetch the current record,

        then include ALL existing fields in your update request along with your changes.

        '
      parameters:
      - name: vendor_id
        in: path
        description: UUID of the vendor to be used in this operation.
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VendorRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VendorResponse'
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      tags:
      - Vendors
      operationId: delete-a-vendor
      summary: Deletes a vendor
      description: 'Removes a vendor you no longer expect to pay. Confirm no open bills, credits, or scheduled payments still reference this vendor to avoid orphaned payables.

        '
      parameters:
      - name: vendor_id
        in: path
        description: UUID of the vendor to be used in this operation.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
        default:
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    PageLimit:
      type: integer
      minimum: 1
      maximum: 100
      default: 25
    VendorResponse:
      allOf:
      - $ref: '#/components/schemas/VendorRequest'
      - type: object
        required:
        - id
        - updated_at
        properties:
          id:
            type: string
            format: uuid
          updated_at:
            type: string
            format: date-time
    VendorRequest:
      type: object
      required:
      - name
      properties:
        name:
          type: string
          example: MyVendor
        account_code:
          $ref: '#/components/schemas/AccountCode'
        address:
          $ref: '#/components/schemas/Address'
        email:
          type: string
          format: email
        payment_terms:
          type: integer
          format: int32
          minimum: 0
          maximum: 180
        external_references:
          uniqueItems: true
          type: array
          items:
            $ref: '#/components/schemas/ExternalReference'
        ten_ninety_nine_eligible:
          type: boolean
        tax_id:
          type: string
          example: '123'
        fields:
          $ref: '#/components/schemas/FieldAssignments'
    Pagination:
      type: object
      properties:
        next_cursor:
          $ref: '#/components/schemas/PageCursor'
    PageCursor:
      type: string
      description: If defined, a cursor to retrieve the next page.
      example: iLQvkEj3sh3UiweC
    Address:
      type: object
      required:
      - city
      - country
      - line1
      - state
      - zip_code
      properties:
        line1:
          type: string
          example: 123 Main St
        line2:
          type: string
          example: Apt 4B
        city:
          type: string
          example: Nashville
        state:
          type: string
          example: TN
          description: State or province code (e.g. 'TN', 'CA' for US; 'ON' for Canada). Required when address is provided.
        zip_code:
          type: string
          example: '37201'
        country:
          $ref: '#/components/schemas/CountryCode'
    CountryCode:
      type: string
      description: Two-letter country code (ISO 3166-1 alpha-2).
      example: US
    AccountCode:
      type: string
      description: The account code found in the Chart of Accounts
      example: '11112'
    ExternalReference:
      type: object
      required:
      - type
      - id
      properties:
        type:
          type: string
          example: xyzSystemId
        id:
          type: string
          example: '234'
        url:
          type: string
          format: uri
          example: https://xyzsystempage.com/ids/234
      description: For requests, only pre-defined custom IDs are accepted. In responses, an object imported through an integration (e.g. Stripe) would return the provider's object ID.
    FieldAssignments:
      type: array
      items:
        type: object
        required:
        - field_id
        - field_value_id
        properties:
          field_id:
            type: string
            format: uuid
          field_value_id:
            type: string
            format: uuid
    Error:
      type: object
      required:
      - type
      - title
      properties:
        type:
          type: string
          format: uri
          description: A URI reference that identifies the error type.
          example: https://rillet.io/forbidden
        title:
          type: string
          description: Summary of the problem.
          example: Forbidden
        status:
          type: integer
          description: The HTTP status code generated by the origin server for this occurrence of the error.
          example: 403
        detail:
          type: string
          description: Explanation specific to this occurrence of the error.
          example: User does not have rights to perform this operation.
  parameters:
    limit:
      name: limit
      in: query
      required: false
      description: Maximum number of rows to return in the page.
      schema:
        $ref: '#/components/schemas/PageLimit'
    cursor:
      name: cursor
      in: query
      required: false
      description: Pagination cursor to navigate through the full response.
      schema:
        $ref: '#/components/schemas/PageCursor'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
x-mcp-ready: true
x-readme:
  headers:
  - key: X-Rillet-API-Version
    value: '4'