> ## Documentation Index
> Fetch the complete documentation index at: https://developer.meow.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Bill Pay Departments

> Returns your company's departments, so you can find the `department_id` values to filter bills by.



## OpenAPI

````yaml GET /billpay/departments
openapi: 3.1.0
info:
  title: Meow API
  description: >
    ## Overview


    The Meow API provides financial services and billing capabilities for your
    business.


    ### Core Features


    - **Financial data access**: access account information, transactions,
    balances, and payment networks.

    - **Crypto operations**: create and manage crypto contacts, and initiate
    USDC transfers across blockchain networks.

    - **Bill pay**: draft bills payable to your vendors and track them through
    payment.


    ### Bill Pay API


    The Bill Pay API lets you create bills for your vendors and track them
    through payment:


    - **Bill drafting**: create bills as drafts. Nothing is paid until someone
    approves the bill in the Meow dashboard.

    - **Attachments**: upload invoices and supporting documents to a bill.

    - **Bulk loads**: send an `Idempotency-Key` with every create so a retry
    never duplicates a bill. Drafting is capped at 500 bills per rolling 24
    hours per creator — your entity key, or the user a user-scoped key acts as.
    Creates past the cap return `429 Too Many Requests`.


    ### Billing API


    The Billing API lets you create and manage invoices and collect payments:


    - **Product management**: create and manage products with custom pricing.

    - **Customer management**: maintain invoicing customers with their
    addresses.

    - **Invoice creation**: generate invoices with line items, discounts, and
    custom notes.

    - **Payment options**: accept payments via ACH, wire, international wire,
    card, and USDC.

    - **Collection accounts**: configure accounts for payment collection.


    ### Getting Started


    Authenticate by sending your API key in the `x-api-key` request header.


    To scope requests to a specific entity, include the `x-entity-id` header.
    Use the `/api-keys/accessible-entities` endpoint to list all entities
    accessible by your API key.


    ### Rate Limits


    Each API key has a limit on requests per minute. The `RateLimit-Policy`
    header on every response shows your key's limit. The limit counts your
    requests in each clock minute, so you can spend the whole minute at once,
    and the count starts over when the minute ends.


    Responses carry the `RateLimit-Policy` and `RateLimit` headers. They show
    your limit, the requests you have left, and the seconds until the current
    minute ends.


    Meow is rolling out enforcement of this limit. Until it is enforced, going
    over the limit is logged, not rejected. Once it is, a request over the limit
    returns `429 Too Many Requests` with a `Retry-After` header, the headers
    above, and a body with `error_code` set to `rate_limited` and a `message`.


    A separate, coarser safeguard protects the API from abusive traffic and can
    also reject requests with `429`. Its response carries `Retry-After` and the
    same body, but not the quota headers.


    Whichever sends it, wait at least `Retry-After` seconds and add a small
    random delay. If the retry is limited again, back off exponentially. Send an
    `Idempotency-Key` when you retry a request that creates something or moves
    money.


    ### Error Responses


    Errors return JSON with `code`, `message`, and `debug_message`. The `code`
    aligns with FDX where possible; use `debug_message` for troubleshooting
    only.


    Common error codes:


    - `500`: Internal server error

    - `501`: Subsystem unavailable

    - `503`: Scheduled maintenance

    - `601`: Data not found

    - `602`: Customer not authorized

    - `701`: Account not found

    - `703`: Invalid input (including invalid date ranges)

    - `704`: Account type not supported

    - `705`: Account is closed

    - `801`: Transaction not found
  contact:
    name: Meow
    url: https://meow.com/
    email: support@meow.com
  version: 1.0.0
  license:
    name: Proprietary
    url: https://www.meow.com/terms-of-service
servers:
  - url: https://api.meow.com/v1
    description: Meow API Production
  - url: https://api.sandbox.meow.com/v1
    description: Meow API Sandbox
  - url: https://api.dev.meow.com/v1
    description: Meow API Development
security:
  - apiKeyAuth: []
tags:
  - name: API Keys
    description: Retrieve metadata about API keys and their accessible entities.
  - name: Accounts
    description: Access and manage accounts.
  - name: Approvals
  - name: Balances
    description: Retrieve account balances and available funds.
  - name: Bill Pay
  - name: Bills
    description: View and manage bills for vendor payments.
  - name: Cards
    description: Manage virtual and physical cards, and view transactions and insights.
  - name: Collection Accounts
    description: Manage accounts for payment collection.
  - name: Contacts
    description: Manage contacts for crypto and USDC transfers.
  - name: Customers
    description: Manage invoicing customers and their details.
  - name: Entities
  - name: Feature Access
    description: >-
      Request access to restricted features, such as international payments, and
      track the status of your requests.
  - name: Invoices
    description: Create and manage invoices.
  - name: Limits
  - name: Line Items
    description: Manage invoice line items.
  - name: Partner Onboarding
    description: Onboard entities using your partner API key.
  - name: Partner Webhooks
  - name: Payment Methods
    description: View available payment method types.
  - name: Payment Networks
    description: Manage payment networks and routing information.
  - name: Products
    description: Manage products and pricing for invoicing.
  - name: Reimbursements
    description: View reimbursement requests by employee.
  - name: Routing Numbers
    description: Validate routing numbers and retrieve bank information.
  - name: Security Policies
  - name: Simulations
    description: >-
      Trigger simulated events (inbound transfers, card authorizations,
      application approval) to test integrations end-to-end without real money
      movement. **Not available in production**: these endpoints exist only in
      sandbox and development environments and return `404 Not Found` in
      production.
  - name: Tax Forms
    description: Retrieve IRS tax forms (1099 family) issued for accounts.
  - name: Transactions
    description: Retrieve account transaction history and details.
  - name: Transfers
    description: >-
      Initiate ACH, wire, book, and crypto transfers, and retrieve transfer
      details.
  - name: Users
    description: View active users for your entity.
  - name: Webhooks
    description: Manage webhook subscriptions and inspect delivery history.
  - name: Wire Drawdowns
    description: >-
      Review vendor requests to draw funds by wire, and pre-authorize trusted
      vendors.
paths:
  /billpay/departments:
    get:
      tags:
        - Bill Pay
      summary: List Bill Pay Departments
      description: >-
        Returns your company's departments, so you can find the `department_id`
        values to filter bills by.
      operationId: list_billpay_departments
      parameters:
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            maximum: 100
            minimum: 1
            description: Maximum number of results to return.
            default: 10
            title: Limit
          description: Maximum number of results to return.
        - name: offset
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                maxLength: 100
              - type: 'null'
            description: >-
              Opaque offset identifier for pagination. Use the nextOffset from a
              previous response.
            title: Offset
          description: >-
            Opaque offset identifier for pagination. Use the nextOffset from a
            previous response.
        - $ref: '#/components/parameters/EntityIdHeader'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillpayDepartmentsResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/ForbiddenAdminKycRequired'
        '429':
          $ref: '#/components/responses/RateLimited'
      security:
        - apiKeyAuth:
            - billpay:read
components:
  parameters:
    EntityIdHeader:
      name: x-entity-id
      in: header
      required: false
      schema:
        type: string
        format: uuid
      description: Optional `entity_id` to scope requests to a specific entity.
  schemas:
    BillpayDepartmentsResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/BillpayDepartmentResponse'
          type: array
          title: Data
          description: Your company's departments, sorted by name.
        page:
          anyOf:
            - $ref: '#/components/schemas/PageMetadata'
            - type: 'null'
          description: Pagination metadata.
      type: object
      required:
        - data
      title: BillpayDepartmentsResponse
    BillpayDepartmentResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
          description: >-
            Identifier for this department. Pass it as `department_id` when
            listing bills to return only bills tagged to it.
        name:
          type: string
          title: Name
          description: The department's name, such as Marketing.
      type: object
      required:
        - id
        - name
      title: BillpayDepartmentResponse
    PageMetadata:
      properties:
        nextOffset:
          anyOf:
            - type: string
            - type: 'null'
          title: Nextoffset
          description: Opaque offset identifier.
          examples:
            - qwer123454q2f
      type: object
      title: PageMetadata
    CustomerApiError:
      oneOf:
        - $ref: '#/components/schemas/CustomerApiServiceError'
        - $ref: '#/components/schemas/CustomerApiGatewayError'
    CustomerApiGatewayError:
      type: object
      required:
        - error_code
        - message
      properties:
        error_code:
          type: string
        message:
          type: string
    CustomerApiServiceError:
      type: object
      required:
        - code
        - message
        - debug_message
      properties:
        code:
          type: integer
        message:
          type: string
        debug_message:
          type: string
  responses:
    BadRequest:
      description: The request could not be processed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerApiError'
    Unauthorized:
      description: Authentication failed.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerApiGatewayError'
    ForbiddenAdminKycRequired:
      description: >-
        The API key is not authorized for this operation, or the user of a
        global API key is an admin or controller without approved KYC. The KYC
        case returns the message `KYC is required for controllers and admins.`
        until that user completes KYC in the Meow dashboard.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerApiGatewayError'
    RateLimited:
      description: Too many requests.
      headers:
        Retry-After:
          schema:
            type: integer
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerApiGatewayError'
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: Your Meow API key, sent in the `x-api-key` header for authentication.
      x-scopes:
        - accounts:read
        - accounts:write
        - accounts:payment-networks
        - accounts:transactions
        - accounts:balances
        - accounts:statements
        - accounts:tax-documents
        - entity:create
        - transfers:crypto:write
        - transfers:usdc:write
        - transfers:ach:write
        - transfers:wire:write
        - transfers:book:write
        - transfers:international:write
        - contacts:read
        - contacts:write
        - billing:products:read
        - billing:products:write
        - billing:customers:read
        - billing:customers:write
        - billing:invoices:read
        - billing:invoices:write
        - billing:accounts:read
        - billpay:read
        - billpay:write
        - onboarding:read
        - onboarding:write
        - cards:read
        - cards:write
        - reimbursements:read
        - users:read
        - users:write
        - webhooks:read
        - webhooks:write
        - partner:onboarding:read
        - partner:onboarding:write
        - partner:webhooks:read
        - partner:webhooks:write
        - simulations:write
        - banking:limits:read
        - banking:limits:write
        - feature-access:read
        - feature-access:write

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.