* @license https://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * @link https://www.temando.com/ */ interface FulfillmentApiInterface { /** * @param ItemRequestInterface $request * * @return Fulfillment * @throws AdapterException */ public function getFulfillment(ItemRequestInterface $request); /** * @param ListRequestInterface $request * * @return Fulfillment[] * @throws AdapterException */ public function getFulfillments(ListRequestInterface $request); /** * Create fulfillment at the platform. * * @param FulfillmentRequestInterface $request * * @return Fulfillment * @throws AdapterException */ public function createFulfillment(FulfillmentRequestInterface $request); /** * Update fulfillment at the platform. * * @param FulfillmentRequestInterface $request * * @return Fulfillment * @throws AdapterException */ public function updateFulfillment(FulfillmentRequestInterface $request); }