iotoms Docs

Create a request for quote

POST
/api/v1/procurement/rfqs

Creates a new request for quote in draft status with the items you want priced and the vendors to invite. Nothing is posted to the accounts.

How to use it

  1. Pick the items with List items and the vendors to invite with List vendors; optionally pick a delivery stockroom with List inventory locations.
  2. Send each item once with a required quantity above zero, plus the vendorIds to invite; either list can be filled in later, but both are needed before sending. Keep responseDueDate on or before neededBy.
  3. The request is created as DRAFT with a new request number; edit it with Update a request for quote until it is sent.

Authorization

BearerAuth
headerAuthorizationBearer <JWT>

Header Parameters

X-TenantID*string

Your merchant's tenant code — the value typed in the Domain field on the iotoms login screen. See Concepts.

Request Body

application/json
  1. body
deliveryLocationId?|

Optional stockroom ID from List inventory locations where goods should be delivered.

Formatuuid
responseDueDate?|

Date vendors should reply by (YYYY-MM-DD). Must not be after neededBy.

Formatdate
neededBy?|

Date the goods are needed by (YYYY-MM-DD).

Formatdate
notes?|

Free-text notes.

items*array<>

Items to be priced. Each item may appear once. Can be empty on a draft but is required before sending.

vendorIds*array<>

Vendor IDs from List vendors to invite. Can be empty on a draft but is required before sending.

Response Body

OK

*/*
  1. response
status*string

Outcome of the call: SUCCESS when the request worked, ERROR when it did not.

message*string

Short human-readable message describing the result, for logs or display; do not parse it.

data?

The request for quote as it now stands, with its lines and invited vendors.

Example Request
curl -X POST 'https://beta.iotoms.com/api/v1/procurement/rfqs' \  -H 'X-TenantID: your-tenant-code' \  -H 'Content-Type: application/json' \  -d '{  "items": [    {      "itemId": "string",      "requiredQty": 0    }  ],  "vendorIds": [    "d1773a70-67cc-404e-a789-1a838844a885"  ]}'
Example Response
{  "status": "string",  "message": "string",  "data": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "rfqNumber": "string",    "status": "string",    "requisitionId": "a9bbc60e-08a6-4a17-9a18-6ef431a5aaaa",    "deliveryLocationId": "88e6bf49-abb5-45e8-9ea4-a579b32ec7db",    "deliveryLocationName": "string",    "responseDueDate": "2019-08-24",    "neededBy": "2019-08-24",    "notes": "string",    "awardReason": "string",    "awardedBy": "string",    "awardedAt": "2019-08-24T14:15:22Z",    "items": [      {        "id": 0,        "itemId": "string",        "itemName": "string",        "requiredQty": 0,        "unitOfMeasure": "string",        "uomId": "4df47f00-a69d-4ff2-b50d-4a7649a4b70c",        "notes": "string"      }    ],    "vendors": [      {        "id": 0,        "vendorId": "e9b57fab-1850-44d4-8499-71fd15c845a0",        "vendorName": "string",        "status": "string",        "invitedAt": "2019-08-24T14:15:22Z",        "quotationId": "98c8afab-b1d9-462f-9483-5a2dbf34985f",        "quotationTotal": 0      }    ],    "invitedCount": 0,    "quotedCount": 0,    "createdBy": "string",    "createdAt": "2019-08-24T14:15:22Z"  }}