List vendors
List vendors, each enriched with the number of transactions booked against it. The response shape depends on `limit`: send it and you get `{ items, totalCount }`, omit it and you get a bare array of every vendor. `q` matches on name. `nrTransactions` is omitted entirely for callers without `transactions:read`, so absence of the key means no permission rather than zero transactions.
Authentication
sf_… API key in the bearerAuth field below.A SaaSFlow API key (format sf_…) or an OAuth bearer token. Paste only the key — the proxy adds the Bearer prefix. Create an API key in Settings → Company settings → API keys — see API keys.
In: header
Path Parameters
1 <= lengthQuery Parameters
1 <= value <= 5000 <= valueResponse Body
application/json
curl -X GET "https://example.com/companies/string/vendors"nullUpdate external id
Replace a customer's external ids with the list you send. This is a full replacement, not a merge, so include the ids you want to keep. An id already claimed by a different customer in the same company is refused with 409, which keeps imports from splitting one customer across two records.
Create vendor
Create a vendor. `defaultCategorization` is the template applied to every future transaction matched to this vendor: category, date rule, P&L split, and pass-through tax. Getting it right once is what keeps recurring spend categorizing itself. `domains` feed the matching. A default categorization booking a transfer must name an account that can actually receive one, otherwise the request fails with 400.