/* tslint:disable */ /* eslint-disable */ /** * Geins Management API * Geins Management API is a RESTful api that powers your applications and helps you manage your Geins services. Geins provides an easy-to-use and scalable solution for managing all aspects of an online store, from product listings and customer information to order processing and payment transactions. :::tip Tip With this API, you can build custom applications and integrate with third-party systems, feeds, dashboards and other bussiness logic apps. ::: ## Getting started Once you have created an account, you can start using the Management API by creating an `API User`. You can create as many API users as you need. Each `API user` is connected to a specific account so you can keep track of operations and manage keys. You can find all your API credentials in `Geins Merchant Center`. ### Fast track Use one of our [SDKs](https://docs.geins.io/docs/sdk/introduction) to get started quickly. The SDKs are available for the most popular programming languages and frameworks. Or, if you prefer to just take it for a test run: [![Run in Postman](https://run.pstmn.io/button.svg)](https://god.gw.postman.com/run-collection/25895885-aaf6598f-1a7c-4949-85d7-ba846c42d553?action=collection%2Ffork&collection-url=entityId%3D25895885-aaf6598f-1a7c-4949-85d7-ba846c42d553%26entityType%3Dcollection%26workspaceId%3Da2a179ce-158e-46b0-8d06-e9640f45112c) ### Authentication Two authentication methods are required: - `Basic Auth` - `API Key` All API credentials can be found in `Geins Merchant Center`. #### Basic Auth A Basic auth `Authorization` header needs to be included in every request. The value should be `Basic ` where `` is the Base64 encoding of your `API username` and `API password` joined by a single colon `:`. See [Wikipedia](https://en.wikipedia.org/wiki/Basic_access_authentication) for more information on Basic auth. #### API Key An `X-ApiKey` header needs to be included in every request. This header should contain the value of your `API key`. #### Example ```bash curl -X GET \"https://mgmtapi.geins.io/API/Market/List\" \\ -H \"Authorization: Basic [USER-CREDENTIALS-BASE64-ENCODED]\" \\ -H \"X-ApiKey: [API-KEY]\" ``` * * The version of the OpenAPI document: v1.10.1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { APIOrderOrderComment, APIOrderTransactionData, BaseEnvelope, EnvelopeAPIOrderOrderCreationValidationStatus, EnvelopeInt, EnvelopeOrderCapture, OrderModelsOrder, OrderModelsOrderQuery, OrderModelsOrderStatus, OrderModelsOrderUpdate, OrderProcessedCapture, OrderValidateOrderCreationRequest, } from '../models'; import { APIOrderOrderCommentFromJSON, APIOrderOrderCommentToJSON, APIOrderTransactionDataFromJSON, APIOrderTransactionDataToJSON, BaseEnvelopeFromJSON, BaseEnvelopeToJSON, EnvelopeAPIOrderOrderCreationValidationStatusFromJSON, EnvelopeAPIOrderOrderCreationValidationStatusToJSON, EnvelopeIntFromJSON, EnvelopeIntToJSON, EnvelopeOrderCaptureFromJSON, EnvelopeOrderCaptureToJSON, OrderModelsOrderFromJSON, OrderModelsOrderToJSON, OrderModelsOrderQueryFromJSON, OrderModelsOrderQueryToJSON, OrderModelsOrderStatusFromJSON, OrderModelsOrderStatusToJSON, OrderModelsOrderUpdateFromJSON, OrderModelsOrderUpdateToJSON, OrderProcessedCaptureFromJSON, OrderProcessedCaptureToJSON, OrderValidateOrderCreationRequestFromJSON, OrderValidateOrderCreationRequestToJSON, } from '../models'; export interface AddOrderCommentRequest { id: number; orderComment: APIOrderOrderComment; } export interface CancelOrderRowRequest { orderId: number; orderRowId: number; skipRestock?: boolean; } export interface CountOrdersRequest { email: string; } export interface CreateOrderRequest { order: OrderModelsOrder; } export interface DeleteOrderRequest { id: number; operation: DeleteOrderOperationEnum; } export interface GetCaptureRequest { captureId: string; } export interface GetOrderIdRequest { id: number; include: string; combineProductContainerRows?: boolean; } export interface GetOrderPublicIdRequest { publicId: string; include: string; combineProductContainerRows?: boolean; } export interface PartialUpdateOfOrderRequest { id: number; order: OrderModelsOrderUpdate; } export interface QueryOrdersRequest { query: OrderModelsOrderQuery; } export interface SetCaptureAsProcessedRequest { processedCapture: OrderProcessedCapture; } export interface SetPaymentAsPaidRequest { paymentDetailId: number; } export interface UpdateOrderStatusRequest { id: number; status: UpdateOrderStatusStatusEnum; transactionId: string; secondaryTransactionId: string; } export interface UpdateTransactionDataRequest { id: number; transactionData: APIOrderTransactionData; } export interface ValidateOrderRequest { request: OrderValidateOrderCreationRequest; } /** * */ export class OrderApi extends runtime.BaseAPI { /** * Adds a comment to an order. This does not replace any previous comments. * Add order comment */ async addOrderCommentRaw(requestParameters: AddOrderCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling addOrderComment.'); } if (requestParameters.orderComment === null || requestParameters.orderComment === undefined) { throw new runtime.RequiredError('orderComment','Required parameter requestParameters.orderComment was null or undefined when calling addOrderComment.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/{id}/Comment`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'POST', headers: headerParameters, query: queryParameters, body: APIOrderOrderCommentToJSON(requestParameters.orderComment), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BaseEnvelopeFromJSON(jsonValue)); } /** * Adds a comment to an order. This does not replace any previous comments. * Add order comment */ async addOrderComment(requestParameters: AddOrderCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.addOrderCommentRaw(requestParameters, initOverrides); return await response.value(); } /** * Cancels an order row. Can only be done on an order that has not been delivered or cancelled. * Cancel order row */ async cancelOrderRowRaw(requestParameters: CancelOrderRowRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.orderId === null || requestParameters.orderId === undefined) { throw new runtime.RequiredError('orderId','Required parameter requestParameters.orderId was null or undefined when calling cancelOrderRow.'); } if (requestParameters.orderRowId === null || requestParameters.orderRowId === undefined) { throw new runtime.RequiredError('orderRowId','Required parameter requestParameters.orderRowId was null or undefined when calling cancelOrderRow.'); } const queryParameters: any = {}; if (requestParameters.skipRestock !== undefined) { queryParameters['skipRestock'] = requestParameters.skipRestock; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/{orderId}/OrderRow/{orderRowId}`.replace(`{${"orderId"}}`, encodeURIComponent(String(requestParameters.orderId))).replace(`{${"orderRowId"}}`, encodeURIComponent(String(requestParameters.orderRowId))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BaseEnvelopeFromJSON(jsonValue)); } /** * Cancels an order row. Can only be done on an order that has not been delivered or cancelled. * Cancel order row */ async cancelOrderRow(requestParameters: CancelOrderRowRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.cancelOrderRowRaw(requestParameters, initOverrides); return await response.value(); } /** * Gets the number of orders placed with the supplied email address. * Count orders */ async countOrdersRaw(requestParameters: CountOrdersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.email === null || requestParameters.email === undefined) { throw new runtime.RequiredError('email','Required parameter requestParameters.email was null or undefined when calling countOrders.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/Count/{email}`.replace(`{${"email"}}`, encodeURIComponent(String(requestParameters.email))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.TextApiResponse(response) as any; } /** * Gets the number of orders placed with the supplied email address. * Count orders */ async countOrders(requestParameters: CountOrdersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.countOrdersRaw(requestParameters, initOverrides); return await response.value(); } /** * Create a new order. * Create order */ async createOrderRaw(requestParameters: CreateOrderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.order === null || requestParameters.order === undefined) { throw new runtime.RequiredError('order','Required parameter requestParameters.order was null or undefined when calling createOrder.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order`, method: 'POST', headers: headerParameters, query: queryParameters, body: OrderModelsOrderToJSON(requestParameters.order), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => EnvelopeIntFromJSON(jsonValue)); } /** * Create a new order. * Create order */ async createOrder(requestParameters: CreateOrderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.createOrderRaw(requestParameters, initOverrides); return await response.value(); } /** * Create a new order id. * Create order id */ async createOrderIdRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/Id`, method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => EnvelopeIntFromJSON(jsonValue)); } /** * Create a new order id. * Create order id */ async createOrderId(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.createOrderIdRaw(initOverrides); return await response.value(); } /** * Deletes or deactivates an order. * Delete order */ async deleteOrderRaw(requestParameters: DeleteOrderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling deleteOrder.'); } if (requestParameters.operation === null || requestParameters.operation === undefined) { throw new runtime.RequiredError('operation','Required parameter requestParameters.operation was null or undefined when calling deleteOrder.'); } const queryParameters: any = {}; if (requestParameters.operation !== undefined) { queryParameters['operation'] = requestParameters.operation; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'DELETE', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response); } /** * Deletes or deactivates an order. * Delete order */ async deleteOrder(requestParameters: DeleteOrderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.deleteOrderRaw(requestParameters, initOverrides); return await response.value(); } /** * Get capture */ async getCaptureRaw(requestParameters: GetCaptureRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.captureId === null || requestParameters.captureId === undefined) { throw new runtime.RequiredError('captureId','Required parameter requestParameters.captureId was null or undefined when calling getCapture.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/Capture/{captureId}`.replace(`{${"captureId"}}`, encodeURIComponent(String(requestParameters.captureId))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => EnvelopeOrderCaptureFromJSON(jsonValue)); } /** * Get capture */ async getCapture(requestParameters: GetCaptureRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getCaptureRaw(requestParameters, initOverrides); return await response.value(); } /** * Get order by id. * Get order (id) */ async getOrderIdRaw(requestParameters: GetOrderIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling getOrderId.'); } if (requestParameters.include === null || requestParameters.include === undefined) { throw new runtime.RequiredError('include','Required parameter requestParameters.include was null or undefined when calling getOrderId.'); } const queryParameters: any = {}; if (requestParameters.combineProductContainerRows !== undefined) { queryParameters['combineProductContainerRows'] = requestParameters.combineProductContainerRows; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/{id}/{include}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))).replace(`{${"include"}}`, encodeURIComponent(String(requestParameters.include))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => OrderModelsOrderFromJSON(jsonValue)); } /** * Get order by id. * Get order (id) */ async getOrderId(requestParameters: GetOrderIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getOrderIdRaw(requestParameters, initOverrides); return await response.value(); } /** * Get order by public id. * Get order (public id) */ async getOrderPublicIdRaw(requestParameters: GetOrderPublicIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.publicId === null || requestParameters.publicId === undefined) { throw new runtime.RequiredError('publicId','Required parameter requestParameters.publicId was null or undefined when calling getOrderPublicId.'); } if (requestParameters.include === null || requestParameters.include === undefined) { throw new runtime.RequiredError('include','Required parameter requestParameters.include was null or undefined when calling getOrderPublicId.'); } const queryParameters: any = {}; if (requestParameters.combineProductContainerRows !== undefined) { queryParameters['combineProductContainerRows'] = requestParameters.combineProductContainerRows; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/OrderByPublicId/{publicId}/{include}`.replace(`{${"publicId"}}`, encodeURIComponent(String(requestParameters.publicId))).replace(`{${"include"}}`, encodeURIComponent(String(requestParameters.include))), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => OrderModelsOrderFromJSON(jsonValue)); } /** * Get order by public id. * Get order (public id) */ async getOrderPublicId(requestParameters: GetOrderPublicIdRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.getOrderPublicIdRaw(requestParameters, initOverrides); return await response.value(); } /** * Get a list of available order statuses. * Get order statuses */ async getOrderStatusesRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/Statuses`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OrderModelsOrderStatusFromJSON)); } /** * Get a list of available order statuses. * Get order statuses */ async getOrderStatuses(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.getOrderStatusesRaw(initOverrides); return await response.value(); } /** * Partial update of an order */ async partialUpdateOfOrderRaw(requestParameters: PartialUpdateOfOrderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling partialUpdateOfOrder.'); } if (requestParameters.order === null || requestParameters.order === undefined) { throw new runtime.RequiredError('order','Required parameter requestParameters.order was null or undefined when calling partialUpdateOfOrder.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'PATCH', headers: headerParameters, query: queryParameters, body: OrderModelsOrderUpdateToJSON(requestParameters.order), }, initOverrides); return new runtime.JSONApiResponse(response); } /** * Partial update of an order */ async partialUpdateOfOrder(requestParameters: PartialUpdateOfOrderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.partialUpdateOfOrderRaw(requestParameters, initOverrides); return await response.value(); } /** * Queries orders. * Query orders */ async queryOrdersRaw(requestParameters: QueryOrdersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>> { if (requestParameters.query === null || requestParameters.query === undefined) { throw new runtime.RequiredError('query','Required parameter requestParameters.query was null or undefined when calling queryOrders.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/Query`, method: 'POST', headers: headerParameters, query: queryParameters, body: OrderModelsOrderQueryToJSON(requestParameters.query), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(OrderModelsOrderFromJSON)); } /** * Queries orders. * Query orders */ async queryOrders(requestParameters: QueryOrdersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { const response = await this.queryOrdersRaw(requestParameters, initOverrides); return await response.value(); } /** * Sets a capture as processed (= captured). * Set capture as processed */ async setCaptureAsProcessedRaw(requestParameters: SetCaptureAsProcessedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.processedCapture === null || requestParameters.processedCapture === undefined) { throw new runtime.RequiredError('processedCapture','Required parameter requestParameters.processedCapture was null or undefined when calling setCaptureAsProcessed.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/Capture/SetAsProcessed`, method: 'POST', headers: headerParameters, query: queryParameters, body: OrderProcessedCaptureToJSON(requestParameters.processedCapture), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BaseEnvelopeFromJSON(jsonValue)); } /** * Sets a capture as processed (= captured). * Set capture as processed */ async setCaptureAsProcessed(requestParameters: SetCaptureAsProcessedRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.setCaptureAsProcessedRaw(requestParameters, initOverrides); return await response.value(); } /** * Set payment as paid */ async setPaymentAsPaidRaw(requestParameters: SetPaymentAsPaidRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.paymentDetailId === null || requestParameters.paymentDetailId === undefined) { throw new runtime.RequiredError('paymentDetailId','Required parameter requestParameters.paymentDetailId was null or undefined when calling setPaymentAsPaid.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/PaymentDetail/{paymentDetailId}/SetAsPaid`.replace(`{${"paymentDetailId"}}`, encodeURIComponent(String(requestParameters.paymentDetailId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BaseEnvelopeFromJSON(jsonValue)); } /** * Set payment as paid */ async setPaymentAsPaid(requestParameters: SetPaymentAsPaidRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.setPaymentAsPaidRaw(requestParameters, initOverrides); return await response.value(); } /** * Update order status */ async updateOrderStatusRaw(requestParameters: UpdateOrderStatusRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling updateOrderStatus.'); } if (requestParameters.status === null || requestParameters.status === undefined) { throw new runtime.RequiredError('status','Required parameter requestParameters.status was null or undefined when calling updateOrderStatus.'); } if (requestParameters.transactionId === null || requestParameters.transactionId === undefined) { throw new runtime.RequiredError('transactionId','Required parameter requestParameters.transactionId was null or undefined when calling updateOrderStatus.'); } if (requestParameters.secondaryTransactionId === null || requestParameters.secondaryTransactionId === undefined) { throw new runtime.RequiredError('secondaryTransactionId','Required parameter requestParameters.secondaryTransactionId was null or undefined when calling updateOrderStatus.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/{id}/Status/{status}/{transactionId}/{secondaryTransactionId}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))).replace(`{${"status"}}`, encodeURIComponent(String(requestParameters.status))).replace(`{${"transactionId"}}`, encodeURIComponent(String(requestParameters.transactionId))).replace(`{${"secondaryTransactionId"}}`, encodeURIComponent(String(requestParameters.secondaryTransactionId))), method: 'POST', headers: headerParameters, query: queryParameters, }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BaseEnvelopeFromJSON(jsonValue)); } /** * Update order status */ async updateOrderStatus(requestParameters: UpdateOrderStatusRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.updateOrderStatusRaw(requestParameters, initOverrides); return await response.value(); } /** * Updates transaction data on an order. * Update transaction data */ async updateTransactionDataRaw(requestParameters: UpdateTransactionDataRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling updateTransactionData.'); } if (requestParameters.transactionData === null || requestParameters.transactionData === undefined) { throw new runtime.RequiredError('transactionData','Required parameter requestParameters.transactionData was null or undefined when calling updateTransactionData.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/{id}/TransactionData`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'POST', headers: headerParameters, query: queryParameters, body: APIOrderTransactionDataToJSON(requestParameters.transactionData), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => BaseEnvelopeFromJSON(jsonValue)); } /** * Updates transaction data on an order. * Update transaction data */ async updateTransactionData(requestParameters: UpdateTransactionDataRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.updateTransactionDataRaw(requestParameters, initOverrides); return await response.value(); } /** * Validates order data for order creation. * Validate order */ async validateOrderRaw(requestParameters: ValidateOrderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise> { if (requestParameters.request === null || requestParameters.request === undefined) { throw new runtime.RequiredError('request','Required parameter requestParameters.request was null or undefined when calling validateOrder.'); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters["X-ApiKey"] = this.configuration.apiKey("X-ApiKey"); // apiKey authentication } if (this.configuration && (this.configuration.username !== undefined || this.configuration.password !== undefined)) { headerParameters["Authorization"] = "Basic " + btoa(this.configuration.username + ":" + this.configuration.password); } const response = await this.request({ path: `/API/Order/ValidateCreation`, method: 'POST', headers: headerParameters, query: queryParameters, body: OrderValidateOrderCreationRequestToJSON(requestParameters.request), }, initOverrides); return new runtime.JSONApiResponse(response, (jsonValue) => EnvelopeAPIOrderOrderCreationValidationStatusFromJSON(jsonValue)); } /** * Validates order data for order creation. * Validate order */ async validateOrder(requestParameters: ValidateOrderRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise { const response = await this.validateOrderRaw(requestParameters, initOverrides); return await response.value(); } } /** * @export */ export const DeleteOrderOperationEnum = { NUMBER_0: 0, NUMBER_1: 1, NUMBER_2: 2 } as const; export type DeleteOrderOperationEnum = typeof DeleteOrderOperationEnum[keyof typeof DeleteOrderOperationEnum]; /** * @export */ export const UpdateOrderStatusStatusEnum = { NUMBER_0: 0, NUMBER_1: 1, NUMBER_2: 2, NUMBER_3: 3, NUMBER_4: 4, NUMBER_5: 5, NUMBER_6: 6, NUMBER_7: 7 } as const; export type UpdateOrderStatusStatusEnum = typeof UpdateOrderStatusStatusEnum[keyof typeof UpdateOrderStatusStatusEnum];