Tax Filing Service

<back to all web services

SearchOrders

SearchOrdersSync

Represents a service request from a standard user to search for orders.

Requires Authentication
Required role:AllowAnyUserRequired permission:CanAccess
The following routes are available for this service:
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;
}

JavaScript SearchOrders DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + 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>