iotoms Docs

End an agreed price

POST
/api/v1/pricing/agreements/{id}/end

Ends an agreed price so it no longer applies going forward. The agreement stays readable, and documents dated inside its old window still resolve to the rate that applied then.

How to use it

  1. Find the ACTIVE agreement's ID with List agreed prices.
  2. Optionally send validTo as the last day the rate applies; it defaults to today.
  3. The agreement becomes ENDED and stops applying after that date; documents dated earlier still resolve to it. It can no longer be revised or updated.

Authorization

BearerAuth
headerAuthorizationBearer <JWT>

Path Parameters

id*string

ID of the record (UUID).

Formatuuid

Query Parameters

actor?string

Name or username of the person making the change, stored on the agreement for audit.

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
validTo?|

Last day the rate applies, YYYY-MM-DD. Defaults to today; cannot be before the agreement's start date.

Formatdate

Response Body

OK

*/*
  1. response
status*string

Outcome of the call: SUCCESS when the request was processed; otherwise an error status.

message*string

Short human-readable message describing the outcome, e.g. which record was saved or why the call failed.

data?

The agreed price. For a revision this is the new agreement, not the one it replaced.

Example Request
curl -X POST 'https://beta.iotoms.com/api/v1/pricing/agreements/497f6eca-6276-4993-bfeb-53cbbbba6f08/end' \  -H 'X-TenantID: your-tenant-code' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "status": "string",  "message": "string",  "data": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "partyRole": "SUPPLIER",    "partyId": "string",    "partyName": "string",    "itemId": "string",    "itemName": "string",    "categoryId": "string",    "uomId": "4df47f00-a69d-4ff2-b50d-4a7649a4b70c",    "uomCode": "string",    "currencyCode": "string",    "rate": 0,    "taxInclusive": true,    "minQty": 0,    "validFrom": "2019-08-24",    "validTo": "2019-08-24",    "status": "ACTIVE",    "supersedesId": "688cf67a-2e6c-4e49-8750-5bc8809fcd6f",    "supersededById": "af9b715c-a460-4411-a694-40645ca4c9a7",    "source": "MANUAL",    "sourceRef": "string",    "notes": "string",    "createdBy": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedBy": "string",    "updatedAt": "2019-08-24T14:15:22Z",    "inForceToday": true  }}