Contents
Vendors
Vendors
A vendor record represents a supplier — a company you purchase inventory from.
The Vendor Object
The list response (GET /Vendor/All) returns a projected subset. The single response (GET /Vendor/{id}) returns the raw vendor entity.
List shape:
{
"rec": 201,
"shortId": "ACME-FASTENERS",
"name": "Acme Fasteners Inc",
"contact": "Mark Brennan",
"phone": "555-0200",
"fax": "555-0201",
"email": "[EMAIL]",
"address1": "456 Supply Blvd",
"address2": "",
"city": "Chicago",
"state": "IL",
"zip": "60601",
"country": "US",
"notes": "",
"currency": "USD",
"status": "Active",
"modified": "2025-01-20T14:22:00Z"
}| Field | Type | Description |
|---|---|---|
rec | integer | Internal vendor record ID |
shortId | string | Unique vendor identifier |
name | string | Vendor name |
contact | string | Primary contact name |
phone | string | Phone number |
fax | string | Fax number |
email | string | Email address |
address1 | string | Primary address line |
address2 | string | Secondary address line |
city | string | City |
state | string | State or province |
zip | string | Postal code |
country | string | Country code |
notes | string | Notes |
currency | string | Currency code |
status | string | Active or Discontinued |
modified | datetime | Last modification timestamp |
Note: The single-vendor response (
GET /Vendor/{id}) returns the full vendor entity, which includes additional fields beyond the list projection.
List Active Vendors
GET /VendorReturns active (non-discontinued) vendors with standard pagination parameters. Discontinued vendors are excluded. Supports modifiedSince filtering.
{
"value": [
{
"rec": 201,
"shortId": "ACME-FASTENERS",
"name": "Acme Fasteners Inc",
"contact": "Mark Brennan",
"phone": "555-0200",
"fax": "555-0201",
"email": "[EMAIL]",
"address1": "456 Supply Blvd",
"address2": "",
"city": "Chicago",
"state": "IL",
"zip": "60601",
"country": "US",
"notes": "",
"currency": "USD",
"status": "Active",
"modified": "2025-01-20T14:22:00Z"
}
],
"totalCount": 29,
"page": 1,
"pageSize": 25,
"pageCount": 2,
"hasMore": true
}List All Vendors
GET /Vendor/AllReturns all vendors (including discontinued) with standard pagination parameters. Supports modifiedSince filtering.
{
"value": [
{
"shortId": "ACME-FASTENERS",
"name": "Acme Fasteners Inc",
"contact": "Mark Brennan",
"phone": "555-0200",
"fax": "555-0201",
"email": "[EMAIL]",
"address1": "456 Supply Blvd",
"address2": "",
"city": "Chicago",
"state": "IL",
"zip": "60601",
"country": "US",
"notes": "",
"currency": "USD",
"status": "Active",
"modified": "2025-01-20T14:22:00Z"
},
{
"rec": 202,
"shortId": "GREATLAKES-SUPPLY",
"name": "Great Lakes Supply Co",
"contact": "Lisa Vogel",
"phone": "555-0300",
"fax": "",
"email": "[EMAIL]",
"address1": "200 Lakeshore Dr",
"address2": "",
"city": "Milwaukee",
"state": "WI",
"zip": "53202",
"country": "US",
"notes": "",
"currency": "USD",
"status": "Active",
"modified": "2025-01-20T14:22:00Z"
}
],
"totalCount": 31,
"page": 1,
"pageSize": 25,
"pageCount": 2,
"hasMore": true
}Get a Vendor
GET /Vendor/{id}Returns the full vendor entity by ShortID. Returns 404 if the vendor does not exist.
GET /Vendor/ACME-FASTENERS{
"shortId": "ACME-FASTENERS",
"name": "Acme Fasteners Inc",
"address1": "456 Supply Blvd",
"address2": "",
"city": "Chicago",
"state": "IL",
"zip": "60601",
"country": "US",
"phone": "555-0200",
"fax": "555-0201",
"email": "[EMAIL]",
"contact": "Mark Brennan"
}Create or Update a Vendor
POST /VendorUpserts a vendor. If ShortID matches an existing record it is updated; otherwise a new record is created.
Request
{
"ShortID": "ACME-FASTENERS",
"Name": "Acme Fasteners Inc",
"Contact1": "Mark Brennan",
"Phone": "555-0200",
"Fax": "555-0201",
"Email": "[EMAIL]",
"Address1": "456 Supply Blvd",
"Address2": "",
"City": "Chicago",
"State": "IL",
"Zip": "60601",
"Country": "US",
"Currency": "USD",
"Status": "Active"
}| Field | Type | Required | Description |
|---|---|---|---|
ShortID | string | Yes | Unique identifier. Used to match existing records on upsert. |
Name | string | Yes | Vendor name |
AccNo | string | No | Account number |
Contact1 | string | No | Primary contact name |
Contact2 | string | No | Secondary contact name |
Phone | string | No | Phone number |
Fax | string | No | Fax number |
Email | string | No | Email address |
Address1 | string | No | Primary address line |
Address2 | string | No | Secondary address line |
City | string | No | City |
State | string | No | State or province |
Zip | string | No | Postal code |
Country | string | No | Country code |
Notes | string | No | Notes |
Currency | string | No | Currency code |
Status | string | No | Active or Discontinued |
Website | string | No | Website URL |
Note: The write body uses PascalCase field names.
ShortIDandNameare required.
Response
{
"shortID": "ACME-FASTENERS",
"status": "imported"
}Discontinue a Vendor
DELETE /Vendor/{id}Marks the vendor as discontinued. Historical purchase order records are preserved. Returns 200 with a confirmation message.
DELETE /Vendor/ACME-FASTENERS"Vendor Discontinued: ACME-FASTENERS"Permissions
| Action | Permission |
|---|---|
| List / Get | Suppliers List (SecurityID 19) |
| Create / Update / Discontinue | Create/Modify Supplier (SecurityID 20) |
On this page