Skip to content

Vendor

The Vendor Aether manages supplier relationships — the vendors behind your hardware and services, the contracts that govern them, the service levels you’re owed, and the renewals coming up.

The Contracts list with vendor, value, and renewal datepublic/screenshots/vendor-contracts.png
  • Vendors are the suppliers — distinct from the manufacturers catalogued in Infrastructure: a vendor is who you buy and contract with, a manufacturer is who builds the hardware.
  • Contracts are agreements with a vendor; SLAs record the service levels a contract commits to; Renewals surface the contracts coming due.

Supplier records — the companies you hold commercial relationships with, together with their contact and account details. A vendor is who you buy from and contract with, which is deliberately separate from the manufacturer catalogue in Infrastructure.

Fields

FieldTypeNotes
namestring · required
slugstringUnique; auto-derived from name on create if omitted.
accountManagerstringYour named contact at the vendor.
emailstring
phonestring
websitestring
statusstringFree text; defaults to active.
descriptionstring

APIGET/POST /api/vendors, GET/PATCH/DELETE /api/vendors/{id}.

Notessearch matches against name and description; sort accepts name (default) or createdAt. The slug is unique across vendors and is generated from the name when not supplied.

The Vendors list with account manager and statuspublic/screenshots/vendor-vendors.png

Agreements with a vendor — the term, value, and the dates that bound them.

Fields

FieldTypeNotes
namestring · required
vendorIduuid → VendorCascade-deletes with the vendor.
contractNumberstringThe vendor’s reference for the agreement.
startDatedate
endDatedate
valuenumeric(12,2)Contract value.
statusstringFree text; defaults to active.
descriptionstring

APIGET/POST /api/contracts, GET/PATCH/DELETE /api/contracts/{id}.

Notes — Deleting a vendor cascades to its contracts (onDelete: cascade). search matches name and description; sort accepts name (default) or createdAt. value is stored as a fixed-precision numeric, not a money type.

Service-level records — the response, uptime, and target commitments owed by a vendor.

Fields

FieldTypeNotes
namestring · required
vendorIduuid → VendorSet to null if the vendor is deleted.
targetstringThe level being committed to (free text).
responseTimestringResponse-time commitment, e.g. 4h.
uptimestringUptime commitment, e.g. 99.9%.
descriptionstring

APIGET/POST /api/slas, GET/PATCH/DELETE /api/slas/{id}.

Notes — SLAs link to a Vendor, not directly to a contract — there is no contractId on this table. The link is nullable: deleting a vendor sets vendorId to null (onDelete: set null) rather than removing the SLA. target, responseTime, and uptime are free-text strings, not parsed durations. search matches name and description.

Upcoming contract renewals, so nothing lapses unnoticed — each carries the date it falls due and the expected amount.

Fields

FieldTypeNotes
namestring · required
vendorIduuid → VendorSet to null if the vendor is deleted.
contractIduuid → ContractSet to null if the contract is deleted.
renewalDatedateWhen the renewal falls due.
amountnumeric(12,2)Expected renewal cost.
statusstringFree text; defaults to pending.
notesstring

APIGET/POST /api/renewals, GET/PATCH/DELETE /api/renewals/{id}.

Notes — A renewal can reference both a Vendor and a Contract, and both links are independent and nullable (onDelete: set null on each) — neither is required, so a renewal can be logged before either is linked. search matches name and notes; sort accepts name (default) or createdAt.

The Renewals list ordered by due datepublic/screenshots/vendor-renewals.png

Resources are exposed under /api/vendors, /api/contracts, /api/slas, and /api/renewals — see the API reference.