Retrieves a paginated list of vendors with optional filtering
Use this endpoint to list vendors with server-side pagination and filtering.
To find a specific vendor by code or name, use the filter parameter (e.g., filter=vendorCode equals ‘VENDOR-001’).
Vendors can also be filtered by an associated account’s name or code (e.g., filter=accountInfo like ‘Main’); account
matching is limited to accounts within the user’s organizational scope.
To filter by account linkage, use filter=hasLinkedAccounts equals true (vendors with one or more accounts in scope)
or filter=hasLinkedAccounts equals false (vendors with none); omit it to include all vendors. Linkage is based only on
accounts within the user’s organizational scope.
For full details of a single vendor by ID, use GET /vendor/{vendorId}.
Paginated endpoint — This API returns paginated results. Use the pageNumber and pageSize query parameters to control which page of results is returned. The response includes pagination metadata in the response headers. See the Pagination guide for details.
Request Headers
| Header | Value | Required | Description |
|---|---|---|---|
| ECI-ApiKey | string | Yes | Your API key. See Authentication. |
| Content-Type | application/json | Yes | All requests must specify JSON content type. |
Query Parameters
| Name | Description | Type | Required |
|---|---|---|---|
| filter | Optional vendor filter; supports vendor and associated-account fields, plus equality filtering on hasLinkedAccounts | string (string) | Optional |
| pageSize | The number of elements to return in a page | integer (int32) | Optional |
| pageNumber | The current page number | integer (int32) | Optional |
Filters
| Filter | Description | Type | Operators |
|---|---|---|---|
| accountCode | Account Number | String | equals not equals one of like not like not one of |
| accountInfo | Account Name | String | equals not equals one of like not like not one of |
| city | City | String | equals not equals one of like not like not one of |
| commodityCode | Commodity Code | String | equals not equals one of like not like not one of |
| commodityId | Integer | equals not equals less than between one of greater than less than equal greater than equal not one of | |
| commodityInfo | Commodity Name | String | equals not equals one of like not like not one of |
| hasLinkedAccounts | Has Linked Accounts | Boolean | equals |
| postalCode | Postal Code | String | equals not equals one of like not like not one of |
| splitAccountChargesConfigured | Vendor Split Charges Configured | Boolean | equals |
| state | State/Province | String | equals not equals one of like not like not one of |
| vendorCode | Vendor Code | String | equals not equals one of like not like not one of |
| vendorId | Integer | equals not equals less than between one of greater than less than equal greater than equal not one of | |
| vendorInfo | Vendor Name | String | equals not equals one of like not like not one of |
Response Headers
This endpoint returns pagination metadata in the response headers.
| Header | Type | Description |
|---|---|---|
| PageNumber | integer | The current page number (1-based). |
| PageSize | integer | The maximum number of items per page. |
| TotalNumberOfRecords | integer | The total number of records matching the query across all pages. |
| TotalPages | integer | The total number of pages. Increment pageNumber until it equals this value to retrieve all results. |
See the Pagination guide for iteration examples and best practices.
Responses
200
OK
The request succeeded and the response body contains the requested data.
Response Body Parameters
Array of:
VendorResponse
| Property | Description | Type | ||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| address | AddressChild | |||||||||||||||||||||||||||||||||||||||||||
|
AddressChild properties
|
||||||||||||||||||||||||||||||||||||||||||||
| consentToRepresent | A link to the document containing the customer’s consent for us to represent them to the vendor | string | ||||||||||||||||||||||||||||||||||||||||||
| createdBy | UserChild | |||||||||||||||||||||||||||||||||||||||||||
|
UserChild properties
|
||||||||||||||||||||||||||||||||||||||||||||
| createdDate | The date and time the vendor was created | string (date-time) | ||||||||||||||||||||||||||||||||||||||||||
| ediCode | The vendor’s edi code | string | ||||||||||||||||||||||||||||||||||||||||||
| The vendor’s email address | string | |||||||||||||||||||||||||||||||||||||||||||
| masterVendorId | The identifier of the master vendor, if any | integer (int32) | ||||||||||||||||||||||||||||||||||||||||||
| modifiedBy | UserChild | |||||||||||||||||||||||||||||||||||||||||||
|
UserChild properties
|
||||||||||||||||||||||||||||||||||||||||||||
| modifiedDate | The date and time of the most recent modification | string (date-time) | ||||||||||||||||||||||||||||||||||||||||||
| payDays | The pay days | integer (int32) | ||||||||||||||||||||||||||||||||||||||||||
| phoneNumber | The vendor’s phone number | string | ||||||||||||||||||||||||||||||||||||||||||
| rates | The vendor’s rates | RateChildResponse[] | ||||||||||||||||||||||||||||||||||||||||||
|
RateChildResponse properties
|
||||||||||||||||||||||||||||||||||||||||||||
| splitAccountChargesConfigured | If there are settings configured to split account charges for this vendor This will only be true when the setting applies to all accounts for this vendor | boolean | ||||||||||||||||||||||||||||||||||||||||||
| vendorCode | The vendor code | string | ||||||||||||||||||||||||||||||||||||||||||
| vendorCodeAliases | An array of vendor code aliases | string[] | ||||||||||||||||||||||||||||||||||||||||||
| vendorDescription | A description of the vendor | string | ||||||||||||||||||||||||||||||||||||||||||
| vendorId | The vendor identifier | integer (int32) | ||||||||||||||||||||||||||||||||||||||||||
| vendorInfo | The vendor info | string | ||||||||||||||||||||||||||||||||||||||||||
| website | The vendor’s website | string | ||||||||||||||||||||||||||||||||||||||||||
Example Response
[
{ "address": { "addressTypeId": 1, "city": "string", "country": "string", "latitude": 1.0, "line1": "string", "line2": "string", "line3": "string", "longitude": 1.0, "postalCode": "string", "remitTo": "string", "state": "string"
}, "consentToRepresent": "string", "createdBy": { "fullName": "string", "userCode": "string", "userId": 1
}, "createdDate": "2026-09-30", "ediCode": "string", "email": "string", "masterVendorId": 1, "modifiedBy": { "fullName": "string", "userCode": "string", "userId": 1
}, "modifiedDate": "2026-09-30", "payDays": 1, "phoneNumber": "string", "rates": [
{ "commodity": {}, "name": "string", "rateId": 1
}
], "splitAccountChargesConfigured": false, "vendorCode": "string", "vendorCodeAliases": [
"string"
], "vendorDescription": "string", "vendorId": 1, "vendorInfo": "string", "website": "string"
}
]