Price Update Many Ep
POST/v1/price_update_many
Create/Update Price Information
Creates a new price record or updates an existing one based on provided criteria. This endpoint is designed for the management of price data related to terminals, products, and suppliers, including effective dates, price amounts, and associated entities.
Request
timezone: TimezoneEnum = TimezoneEnum.utc
The timezone for the effective dates. Defaults to UTC.
effective_from: datetime
Start date of the period a price is effective from.
effective_to: datetime
End date of the period a price is effective to.
price: float
Price amount.
price_type: str
Price type. Supported price types are "rack", "contract", "index", "inventory", and "spot".
terminal_id: str | None = None
Identifier of the terminal for this price.
terminal_source_id: str | None = None
If received from integration, the identifier of the terminal inside the source system.
terminal_source_system_id: str | None = None
If received from integration, the source system identifier.
terminal: str | None = None
Name of the terminal for this price.
product_id: str | None = None
Identifier of the product for this price.
product_source_id: str | None = None
If received from integration, the identifier of the price inside the source system.
product_source_system_id: str | None = None
If received from integration, the source system identifier.
product: str | None = None
Name of the product for the price.
supplier_id: str | None = None
Identifier of the supplier for this price.
supplier_source_id: str | None = None
If received from integration, the identifier of the supplier inside the source system.
supplier_source_system_id: str | None = None
If received from integration, the source system identifier.
supplier: str | None = None
Name of the price supplier.
counterparty_id: str | None = None
Identifier of the counterparty for this price.
counterparty_source_id: str | None = None
If received from integration, the identifier of the counterparty inside the source system.
counterparty_source_system_id: str | None = None
If received from integration, the source system identifier.
counterparty: str | None = None
Name of the counterparty.
store_id: str | None = None
Identifier for the store associated with the price.
store_source_id: str | None = None
If received from integration, the identifier of the site inside the source system.
store_source_system_id: str | None = None
If received from integration, the source system identifier.
store_number: str | None = None
Site number.
enabled: bool = True
Indicates if the price is currently enabled.
disabled_until: datetime | None = None
If the price is disabled, the date until which it is disabled.
expire: datetime | None = None
If the price expires, the expiration date.
min_quantity: int | None = None
Minimum quantity required to purchase at this price.
max_quantity: int | None = None
Maximum quantity that can be purchased at this price.
curve_id: str | None = None
A price curve identifier to associate with the request.
error: str | None = None
If the price has an associated error, a description of the error.
row: int | None = None
The row number in a batch operation for identifying the record.
Response
created: int = 0
The number of new prices successfully created.
end_dated: int = 0
The number of prices that were end-dated as a result of the operation.
duplicates: list[SupplyPriceUpdateResponse]
List of responses for duplicate prices identified during the operation. Each item in the list contains details about the duplicate price entry.
Show Child Attributes
-
contract: str | None =
None
Name of the contract associated with the price. -
timezone: TimezoneEnum =
TimezoneEnum.utc
The timezone for effective dates of the price. -
effective_from: datetime
Start date from which the price is effective. -
effective_to: datetime
End date until which the price remains effective. -
price: float
Amount of the price. -
price_type: str
Type of the price. Supported types include "rack", "contract", "index", "inventory", and "spot". -
terminal_id: str | None =
None
Identifier of the terminal associated with this price. -
terminal_source_id: str | None =
None
If received from integration, the identifier of the terminal within the source system. -
terminal_source_system_id: str | None =
None
If received from integration, the source system identifier. -
terminal: str | None =
None
Name of the terminal associated with this price. -
product_id: str | None =
None
Identifier of the product associated with this price. -
product_source_id: str | None =
None
If received from integration, the identifier of the product within the source system. -
product_source_system_id: str | None =
None
If received from integration, the product's source system identifier. -
product: str | None =
None
Name of the product associated with this price. -
supplier_id: str | None =
None
Identifier of the supplier for this price. -
supplier_source_id: str | None =
None
If received from integration, the identifier of the supplier within the source system. -
supplier_source_system_id: str | None =
None
If received from integration, the supplier's source system identifier. -
supplier: str | None =
None
Name of the supplier for this price. -
counterparty_id: str | None =
None
Identifier of the counterparty for this price. -
counterparty_source_id: str | None =
None
If received from integration, the identifier of the counterparty within the source system. -
counterparty_source_system_id: str | None =
None
If received from integration, the counterparty's source system identifier. -
counterparty: str | None =
None
Name of the counterparty for this price. -
enabled: bool =
True
Indicates whether the price is currently enabled. -
disabled_until: datetime | None =
None
If the price is disabled, specifies the date until it remains disabled. -
min_quantity: int | None =
None
Minimum quantity required to avail this price. -
max_quantity: int | None =
None
Maximum quantity limit to avail this price. -
curve_id: str | None =
None
A price curve identifier associated with the request. -
error: str | None =
None
Describes any error associated with the price. -
row: int | None =
None
Row number in a batch operation for identifying the record. -
source_id: str | None =
None
If received from integration, the identifier within the source system. -
source_system_id: str | None =
None
If received from integration, the source system's identifier.
bad_data: list[SupplyPriceUpdateResponse]
List of responses for price entries that could not be processed due to data issues. Each item in the list provides details about what was incorrect or missing.
Show Child Attributes
-
contract: str | None =
None
Name of the contract associated with the price. -
timezone: TimezoneEnum | None =
TimezoneEnum.utc
The timezone for effective dates of the price. If key is not provided, defaults to UTC. If the key "null" is provided, the system will attempt to infer the timezone based on the terminal or store associated with the price. -
effective_from: datetime
Start date from which the price is effective. -
effective_to: datetime
End date until which the price remains effective. -
price: float
Amount of the price. -
price_type: str
Type of the price. Supported types include "rack", "contract", "index", "inventory", and "spot". -
terminal_id: str | None =
None
Identifier of the terminal associated with this price. -
terminal_source_id: str | None =
None
If received from integration, the identifier of the terminal within the source system. -
terminal_source_system_id: str | None =
None
If received from integration, the source system identifier. -
terminal: str | None =
None
Name of the terminal associated with this price. -
product_id: str | None =
None
Identifier of the product associated with this price. -
product_source_id: str | None =
None
If received from integration, the identifier of the product within the source system. -
product_source_system_id: str | None =
None
If received from integration, the product's source system identifier. -
product: str | None =
None
Name of the product associated with this price. -
supplier_id: str | None =
None
Identifier of the supplier for this price. -
supplier_source_id: str | None =
None
If received from integration, the identifier of the supplier within the source system. -
supplier_source_system_id: str | None =
None
If received from integration, the supplier's source system identifier. -
supplier: str | None =
None
Name of the supplier for this price. -
counterparty_id: str | None =
None
Identifier of the counterparty for this price. -
counterparty_source_id: str | None =
None
If received from integration, the identifier of the counterparty within the source system. -
counterparty_source_system_id: str | None =
None
If received from integration, the counterparty's source system identifier. -
counterparty: str | None =
None
Name of the counterparty for this price. -
enabled: bool =
True
Indicates whether the price is currently enabled. -
disabled_until: datetime | None =
None
If the price is disabled, specifies the date until it remains disabled. -
min_quantity: int | None =
None
Minimum quantity required to avail this price. -
max_quantity: int | None =
None
Maximum quantity limit to avail this price. -
curve_id: str | None =
None
A price curve identifier associated with the request. -
error: str | None =
None
Describes any error associated with the price. -
row: int | None =
None
Row number in a batch operation for identifying the record. -
source_id: str | None =
None
If received from integration, the identifier within the source system. -
source_system_id: str | None =
None
If received from integration, the source system's identifier.
Show Deprecated
exact_match: bool
Deprecated.
Responses
- 200
- 422
Successful Response
- application/json
- Example (from schema)
{
"created": 0,
"end_dated": 0,
"bad_data": [
{
"contract": "string",
"timezone": "UTC",
"effective_from": "2025-12-17T21:49:50.628Z",
"effective_to": "2025-12-17T21:49:50.628Z",
"price": 0,
"price_type": "rack",
"terminal_id": "string",
"terminal_source_id": "string",
"terminal_source_system_id": "string",
"terminal": "string",
"product_id": "string",
"product_source_id": "string",
"product_source_system_id": "string",
"product": "string",
"supplier_id": "string",
"supplier_source_id": "string",
"supplier_source_system_id": "string",
"supplier": "string",
"counterparty_id": "string",
"counterparty_source_id": "string",
"counterparty_source_system_id": "string",
"counterparty": "string",
"enabled": true,
"disabled_until": "2025-12-17T21:49:50.629Z",
"min_quantity": 0,
"max_quantity": 0,
"curve_id": "string",
"error": "string",
"row": 0,
"source_id": "string",
"source_system_id": "string",
"net_or_gross_type": "Net",
"contract_lifting_valuation_method": "TimeOfLifting"
}
],
"duplicates": [
{
"contract": "string",
"timezone": "UTC",
"effective_from": "2025-12-17T21:49:50.629Z",
"effective_to": "2025-12-17T21:49:50.629Z",
"price": 0,
"price_type": "rack",
"terminal_id": "string",
"terminal_source_id": "string",
"terminal_source_system_id": "string",
"terminal": "string",
"product_id": "string",
"product_source_id": "string",
"product_source_system_id": "string",
"product": "string",
"supplier_id": "string",
"supplier_source_id": "string",
"supplier_source_system_id": "string",
"supplier": "string",
"counterparty_id": "string",
"counterparty_source_id": "string",
"counterparty_source_system_id": "string",
"counterparty": "string",
"enabled": true,
"disabled_until": "2025-12-17T21:49:50.629Z",
"min_quantity": 0,
"max_quantity": 0,
"curve_id": "string",
"error": "string",
"row": 0,
"source_id": "string",
"source_system_id": "string",
"net_or_gross_type": "Net",
"contract_lifting_valuation_method": "TimeOfLifting"
}
],
"exact_match": [
{
"contract": "string",
"timezone": "UTC",
"effective_from": "2025-12-17T21:49:50.629Z",
"effective_to": "2025-12-17T21:49:50.629Z",
"price": 0,
"price_type": "rack",
"terminal_id": "string",
"terminal_source_id": "string",
"terminal_source_system_id": "string",
"terminal": "string",
"product_id": "string",
"product_source_id": "string",
"product_source_system_id": "string",
"product": "string",
"supplier_id": "string",
"supplier_source_id": "string",
"supplier_source_system_id": "string",
"supplier": "string",
"counterparty_id": "string",
"counterparty_source_id": "string",
"counterparty_source_system_id": "string",
"counterparty": "string",
"enabled": true,
"disabled_until": "2025-12-17T21:49:50.629Z",
"min_quantity": 0,
"max_quantity": 0,
"curve_id": "string",
"error": "string",
"row": 0,
"source_id": "string",
"source_system_id": "string",
"net_or_gross_type": "Net",
"contract_lifting_valuation_method": "TimeOfLifting"
}
]
}
Validation Error
- application/json
- Example (from schema)
{
"detail": [
{
"loc": [
"string",
0
],
"msg": "string",
"type": "string"
}
]
}