List BILL Vendors
GET/api/billcom/vendors
List the vendors mirrored from a BILL.com organization, with the SKU.io supplier each one is matched to.
This endpoint currently requires session authentication; Personal Access Token scope support is in progress.
Authentication: Requires Bearer token.
Required: integration_instance_id — the BILL.com instance to read. An unknown ID returns 404.
Search: filter[search] matches the vendor ID (exact), name, email, BILL vendor ID and the matched supplier name. Restrict it with search_columns (id, name, email, billcom_id, supplier_name) and force exact matching with search_strict_columns.
Filters: each column below can be filtered with filter[{column}.{operator}]=value (a bare filter[{column}]=value is an implicit is), or combined into an AND/OR tree passed as filter_groups — base64-encoded JSON shaped like {"conjunction":"and","children":[{"type":"condition","condition":{"column":"…","operator":"is","value":"…"}}]}. A column/operator pair that is not listed returns HTTP 400.
Filterable columns: name, email, billcom_id, network_status, bank_account_status, supplier_name, matched (value matched or unmatched) — text; id — numeric; created_at, updated_at — date-time.
Operators: text columns accept contains, does_not_contain, is, is_not, is_one_of, is_not_one_of, starts_with, does_not_start_with, ends_with, does_not_end_with, is_empty, is_not_empty; numeric columns accept is, is_not, is_one_of, is_not_one_of, greater_than, less_than, greater_than_or_equal, less_than_or_equal, between, is_empty, is_not_empty; date and date-time columns accept is, is_not, before, after, on_or_before, on_or_after, between, is_empty, is_not_empty, today, yesterday, tomorrow.
Sorting: sort, prefix with - for descending. Default name. Allowed: id, name, email, billcom_id, network_status, bank_account_status, created_at, updated_at.
Pagination: page, per_page (default 10).
supplier_reference and supplier_route describe the matched supplier and are null when the vendor is unmatched.
Request
Responses
- 200
- 401
- 403
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.