Required role: | AllowAnyUser | Required permission: | CanAccess |
GET | /sync/orders/search |
---|
"use strict";
export class PaginationBase {
/** @param {{skip?:number,take?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?number}
* @description The number of query results to skip. */
skip;
/**
* @type {?number}
* @description The number of query results to include. */
take;
}
/** @typedef {'Today'|'Yesterday'|'LastWeek'|'Last30Days'|'Last90Days'|'Last180Days'} */
export var PeriodMode;
(function (PeriodMode) {
PeriodMode["Today"] = "Today"
PeriodMode["Yesterday"] = "Yesterday"
PeriodMode["LastWeek"] = "LastWeek"
PeriodMode["Last30Days"] = "Last30Days"
PeriodMode["Last90Days"] = "Last90Days"
PeriodMode["Last180Days"] = "Last180Days"
})(PeriodMode || (PeriodMode = {}));
export class SearchOrdersBase extends PaginationBase {
/** @param {{userName?:string,name?:string,nameStartsWith?:string,nameEndsWith?:string,nameContains?:string,serviceName?:string,serviceNameStartsWith?:string,serviceNameEndsWith?:string,serviceNameContains?:string,before?:string,after?:string,periodStartDate?:string,periodEndDate?:string,periodMode?:PeriodMode,orderRequestSucceeded?:boolean,unitOfMeasurement?:string,unitOfMeasurementStartsWith?:string,unitOfMeasurementEndsWith?:string,unitOfMeasurementContains?:string,processType?:string,processTypeStartsWith?:string,processTypeEndsWith?:string,processTypeContains?:string,dataType?:string,dataTypeStartsWith?:string,dataTypeEndsWith?:string,dataTypeContains?:string,dataName?:string,dataNameStartsWith?:string,dataNameEndsWith?:string,dataNameContains?:string,skip?:number,take?:number,skip?:number,take?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {?string}
* @description The user name of the account. */
userName;
/**
* @type {?string}
* @description The name of the order. */
name;
/**
* @type {?string}
* @description Search by using the name of the order that starts with the specified value. */
nameStartsWith;
/**
* @type {?string}
* @description Search by using the name of the order that ends with the specified value. */
nameEndsWith;
/**
* @type {?string}
* @description Search by using the name of the order that contains the specified value. */
nameContains;
/**
* @type {?string}
* @description Search by using the name of the order that contains the specified value. */
serviceName;
/**
* @type {?string}
* @description Search by using the service name of the order that starts with the specified value. */
serviceNameStartsWith;
/**
* @type {?string}
* @description Search by using the service name of the order that ends with the specified value. */
serviceNameEndsWith;
/**
* @type {?string}
* @description Search by using the service name of the order that contains the specified value. */
serviceNameContains;
/**
* @type {?string}
* @description Search for orders placed before a certain date and time. The specified date is included in the search. */
before;
/**
* @type {?string}
* @description Search for orders placed after a certain date and time. The specified date is included in the search. */
after;
/**
* @type {?string}
* @description Search for orders placed within a date and time period. The specified date is the start of the period and it is included in the search. */
periodStartDate;
/**
* @type {?string}
* @description Search for orders placed within a date and time period. The specified date is the start of the period and it is included in the search. */
periodEndDate;
/**
* @type {?PeriodMode}
* @description Search for orders placed within the last 180 days. Today is included in the search. */
periodMode;
/**
* @type {?boolean}
* @description Was the order request successful? */
orderRequestSucceeded;
/**
* @type {?string}
* @description The unit of measurement for the order. */
unitOfMeasurement;
/**
* @type {?string}
* @description Search by using the unit of measurement of the order that starts with the specified value. */
unitOfMeasurementStartsWith;
/**
* @type {?string}
* @description Search by using the unit of measurement of the order that ends with the specified value. */
unitOfMeasurementEndsWith;
/**
* @type {?string}
* @description Search by using the unit of measurement of the order that contains the specified value. */
unitOfMeasurementContains;
/**
* @type {?string}
* @description The type of process, for which the order is charged. */
processType;
/**
* @type {?string}
* @description Search by using the process type of the order that starts with the specified value. */
processTypeStartsWith;
/**
* @type {?string}
* @description Search by using the process type of the order that ends with the specified value. */
processTypeEndsWith;
/**
* @type {?string}
* @description Search by using the process type of the order that contains the specified value. */
processTypeContains;
/**
* @type {?string}
* @description The type of data, for which the order is charged. */
dataType;
/**
* @type {?string}
* @description Search by using the type of data, for which the order is charged that starts with the specified value. */
dataTypeStartsWith;
/**
* @type {?string}
* @description Search by using the type of data, for which the order is charged that ends with the specified value. */
dataTypeEndsWith;
/**
* @type {?string}
* @description Search by using the type of data, for which the order is charged that contains the specified value. */
dataTypeContains;
/**
* @type {?string}
* @description The name of the data, for which the order is charged. */
dataName;
/**
* @type {?string}
* @description Search by using the name of data, for which the order is charged that starts with the specified value. */
dataNameStartsWith;
/**
* @type {?string}
* @description Search by using the name of data, for which the order is charged that ends with the specified value. */
dataNameEndsWith;
/**
* @type {?string}
* @description Search by using the name of data, for which the order is charged that contains the specified value. */
dataNameContains;
/**
* @type {?number}
* @description The number of query results to skip. */
skip;
/**
* @type {?number}
* @description The number of query results to include. */
take;
}
export class Order {
/** @param {{id?:number,productId?:number,accountId?:number,name?:string,serviceName?:string,requestTimestamp?:string,responseTimestamp?:string,requestUri?:string,requestHttpMethod?:string,requestDuration?:string,responseStatusCode?:HttpStatusCode,clientIPAddress?:string,unitOfMeasurement?:string,processType?:string,dataType?:string,dataName?:string,creationDate?:string,expiryDate?:string,isTest?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The unique identifier of the order. */
id;
/**
* @type {number}
* @description The unique identifier of the product, for which the order is made. */
productId;
/**
* @type {number}
* @description The unique identifier of the user account, who placed the order. */
accountId;
/**
* @type {string}
* @description A name to identify the order. */
name;
/**
* @type {?string}
* @description The name of the service, for which the order was made. */
serviceName;
/**
* @type {?string}
* @description The time stamp at which the order was initiated. */
requestTimestamp;
/**
* @type {?string}
* @description The time stamp at which the order was completed. */
responseTimestamp;
/**
* @type {?string}
* @description The URI from which the order was initiated. */
requestUri;
/**
* @type {?string}
* @description The HTTP method of the order request. */
requestHttpMethod;
/**
* @type {?string}
* @description The duration of the order request. */
requestDuration;
/**
* @type {HttpStatusCode}
* @description The HTTP status code of the order request. */
responseStatusCode;
/**
* @type {?string}
* @description The IP address of client, who placed the order. */
clientIPAddress;
/**
* @type {?string}
* @description The unit of measurement for the order. */
unitOfMeasurement;
/**
* @type {?string}
* @description The type of process, for which the order is charged. */
processType;
/**
* @type {?string}
* @description The type of data, for which the order is charged. */
dataType;
/**
* @type {?string}
* @description The name of the data, for which the order is charged. */
dataName;
/**
* @type {string}
* @description The date of creation of the order. */
creationDate;
/**
* @type {?string}
* @description The final date to retain the order in the records. After this date, the order is expunged from the records. */
expiryDate;
/**
* @type {boolean}
* @description Indicates whether the order is simulated for test purposes. True if the order is simulated for test purposes; otherwise it is a false order for production purposes. */
isTest;
}
export class OrderQueryResponse extends QueryResponse {
/** @param {{offset?:number,total?:number,results?:Order[],meta?:{ [index: string]: string; },responseStatus?:ResponseStatus,offset?:number,total?:number,results?:T[],meta?:{ [index: string]: string; },responseStatus?:ResponseStatus}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
offset;
/** @type {number} */
total;
/** @type {Order[]} */
results;
/** @type {{ [index: string]: string; }} */
meta;
/** @type {ResponseStatus} */
responseStatus;
}
export class SearchOrders extends SearchOrdersBase {
/** @param {{userName?:string,name?:string,nameStartsWith?:string,nameEndsWith?:string,nameContains?:string,serviceName?:string,serviceNameStartsWith?:string,serviceNameEndsWith?:string,serviceNameContains?:string,before?:string,after?:string,periodStartDate?:string,periodEndDate?:string,periodMode?:PeriodMode,orderRequestSucceeded?:boolean,unitOfMeasurement?:string,unitOfMeasurementStartsWith?:string,unitOfMeasurementEndsWith?:string,unitOfMeasurementContains?:string,processType?:string,processTypeStartsWith?:string,processTypeEndsWith?:string,processTypeContains?:string,dataType?:string,dataTypeStartsWith?:string,dataTypeEndsWith?:string,dataTypeContains?:string,dataName?:string,dataNameStartsWith?:string,dataNameEndsWith?:string,dataNameContains?:string,skip?:number,take?:number,userName?:string,name?:string,nameStartsWith?:string,nameEndsWith?:string,nameContains?:string,serviceName?:string,serviceNameStartsWith?:string,serviceNameEndsWith?:string,serviceNameContains?:string,before?:string,after?:string,periodStartDate?:string,periodEndDate?:string,periodMode?:PeriodMode,orderRequestSucceeded?:boolean,unitOfMeasurement?:string,unitOfMeasurementStartsWith?:string,unitOfMeasurementEndsWith?:string,unitOfMeasurementContains?:string,processType?:string,processTypeStartsWith?:string,processTypeEndsWith?:string,processTypeContains?:string,dataType?:string,dataTypeStartsWith?:string,dataTypeEndsWith?:string,dataTypeContains?:string,dataName?:string,dataNameStartsWith?:string,dataNameEndsWith?:string,dataNameContains?:string,skip?:number,take?:number,skip?:number,take?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {?string}
* @description The user name of the account. */
userName;
/**
* @type {?string}
* @description The name of the order. */
name;
/**
* @type {?string}
* @description Search by using the name of the order that starts with the specified value. */
nameStartsWith;
/**
* @type {?string}
* @description Search by using the name of the order that ends with the specified value. */
nameEndsWith;
/**
* @type {?string}
* @description Search by using the name of the order that contains the specified value. */
nameContains;
/**
* @type {?string}
* @description Search by using the name of the order that contains the specified value. */
serviceName;
/**
* @type {?string}
* @description Search by using the service name of the order that starts with the specified value. */
serviceNameStartsWith;
/**
* @type {?string}
* @description Search by using the service name of the order that ends with the specified value. */
serviceNameEndsWith;
/**
* @type {?string}
* @description Search by using the service name of the order that contains the specified value. */
serviceNameContains;
/**
* @type {?string}
* @description Search for orders placed before a certain date and time. The specified date is included in the search. */
before;
/**
* @type {?string}
* @description Search for orders placed after a certain date and time. The specified date is included in the search. */
after;
/**
* @type {?string}
* @description Search for orders placed within a date and time period. The specified date is the start of the period and it is included in the search. */
periodStartDate;
/**
* @type {?string}
* @description Search for orders placed within a date and time period. The specified date is the start of the period and it is included in the search. */
periodEndDate;
/**
* @type {?PeriodMode}
* @description Search for orders placed within the last 180 days. Today is included in the search. */
periodMode;
/**
* @type {?boolean}
* @description Was the order request successful? */
orderRequestSucceeded;
/**
* @type {?string}
* @description The unit of measurement for the order. */
unitOfMeasurement;
/**
* @type {?string}
* @description Search by using the unit of measurement of the order that starts with the specified value. */
unitOfMeasurementStartsWith;
/**
* @type {?string}
* @description Search by using the unit of measurement of the order that ends with the specified value. */
unitOfMeasurementEndsWith;
/**
* @type {?string}
* @description Search by using the unit of measurement of the order that contains the specified value. */
unitOfMeasurementContains;
/**
* @type {?string}
* @description The type of process, for which the order is charged. */
processType;
/**
* @type {?string}
* @description Search by using the process type of the order that starts with the specified value. */
processTypeStartsWith;
/**
* @type {?string}
* @description Search by using the process type of the order that ends with the specified value. */
processTypeEndsWith;
/**
* @type {?string}
* @description Search by using the process type of the order that contains the specified value. */
processTypeContains;
/**
* @type {?string}
* @description The type of data, for which the order is charged. */
dataType;
/**
* @type {?string}
* @description Search by using the type of data, for which the order is charged that starts with the specified value. */
dataTypeStartsWith;
/**
* @type {?string}
* @description Search by using the type of data, for which the order is charged that ends with the specified value. */
dataTypeEndsWith;
/**
* @type {?string}
* @description Search by using the type of data, for which the order is charged that contains the specified value. */
dataTypeContains;
/**
* @type {?string}
* @description The name of the data, for which the order is charged. */
dataName;
/**
* @type {?string}
* @description Search by using the name of data, for which the order is charged that starts with the specified value. */
dataNameStartsWith;
/**
* @type {?string}
* @description Search by using the name of data, for which the order is charged that ends with the specified value. */
dataNameEndsWith;
/**
* @type {?string}
* @description Search by using the name of data, for which the order is charged that contains the specified value. */
dataNameContains;
/**
* @type {?number}
* @description The number of query results to skip. */
skip;
/**
* @type {?number}
* @description The number of query results to include. */
take;
}
/** @typedef T {any} */
export class QueryResponse {
/** @param {{offset?:number,total?:number,results?:T[],meta?:{ [index: string]: string; },responseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
offset;
/** @type {number} */
total;
/** @type {T[]} */
results;
/** @type {{ [index: string]: string; }} */
meta;
/** @type {ResponseStatus} */
responseStatus;
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /sync/orders/search HTTP/1.1 Host: taxfiling.pwc.de Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <OrderQueryResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/PwC.Metering.Core.Services.Contracts.Responses"> <Offset xmlns="http://schemas.servicestack.net/types">0</Offset> <Total xmlns="http://schemas.servicestack.net/types">0</Total> <Results xmlns:d2p1="http://schemas.datacontract.org/2004/07/PwC.Metering.Core.Domain.Concretes.Models" xmlns="http://schemas.servicestack.net/types"> <d2p1:Order> <d2p1:AccountId>0</d2p1:AccountId> <d2p1:ClientIPAddress>String</d2p1:ClientIPAddress> <d2p1:CreationDate>0001-01-01T00:00:00</d2p1:CreationDate> <d2p1:DataName>String</d2p1:DataName> <d2p1:DataType>String</d2p1:DataType> <d2p1:ExpiryDate>0001-01-01T00:00:00</d2p1:ExpiryDate> <d2p1:Id>0</d2p1:Id> <d2p1:IsTest>false</d2p1:IsTest> <d2p1:Name>String</d2p1:Name> <d2p1:ProcessType>String</d2p1:ProcessType> <d2p1:ProductId>0</d2p1:ProductId> <d2p1:RequestDuration>PT0S</d2p1:RequestDuration> <d2p1:RequestHttpMethod>String</d2p1:RequestHttpMethod> <d2p1:RequestTimestamp>0001-01-01T00:00:00</d2p1:RequestTimestamp> <d2p1:RequestUri>String</d2p1:RequestUri> <d2p1:ResponseStatusCode>Continue</d2p1:ResponseStatusCode> <d2p1:ResponseTimestamp>0001-01-01T00:00:00</d2p1:ResponseTimestamp> <d2p1:ServiceName>String</d2p1:ServiceName> <d2p1:UnitOfMeasurement>String</d2p1:UnitOfMeasurement> </d2p1:Order> </Results> <Meta xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns="http://schemas.servicestack.net/types"> <d2p1:KeyValueOfstringstring> <d2p1:Key>String</d2p1:Key> <d2p1:Value>String</d2p1:Value> </d2p1:KeyValueOfstringstring> </Meta> <ResponseStatus xmlns="http://schemas.servicestack.net/types"> <ErrorCode>String</ErrorCode> <Message>String</Message> <StackTrace>String</StackTrace> <Errors> <ResponseError> <ErrorCode>String</ErrorCode> <FieldName>String</FieldName> <Message>String</Message> <Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d5p1:KeyValueOfstringstring> <d5p1:Key>String</d5p1:Key> <d5p1:Value>String</d5p1:Value> </d5p1:KeyValueOfstringstring> </Meta> </ResponseError> </Errors> <Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d3p1:KeyValueOfstringstring> <d3p1:Key>String</d3p1:Key> <d3p1:Value>String</d3p1:Value> </d3p1:KeyValueOfstringstring> </Meta> </ResponseStatus> </OrderQueryResponse>