Requires the role: | manager |
GET | /customers |
---|
import java.math.*;
import java.util.*;
import net.servicestack.client.*;
public class dtos
{
public static class SearchAllCustomersRequest extends SearchOperationTenanted<SearchAllCustomersResponse>
{
}
public static class SearchOperationTenanted<TResponse> extends SearchOperationUnTenanted<TResponse> implements ITenantedRequest
{
public String organisationId = null;
public String getOrganisationId() { return organisationId; }
public SearchOperationTenanted<TResponse> setOrganisationId(String value) { this.organisationId = value; return this; }
}
public static class SearchOperationUnTenanted<TResponse> extends GetOperationUnTenanted<TResponse> implements IHasSearchOptions
{
public String distinct = null;
public Integer limit = null;
public Integer offset = null;
public String sort = null;
public String filter = null;
public String search = null;
public String getDistinct() { return distinct; }
public SearchOperationUnTenanted<TResponse> setDistinct(String value) { this.distinct = value; return this; }
public Integer getLimit() { return limit; }
public SearchOperationUnTenanted<TResponse> setLimit(Integer value) { this.limit = value; return this; }
public Integer getOffset() { return offset; }
public SearchOperationUnTenanted<TResponse> setOffset(Integer value) { this.offset = value; return this; }
public String getSort() { return sort; }
public SearchOperationUnTenanted<TResponse> setSort(String value) { this.sort = value; return this; }
public String getFilter() { return filter; }
public SearchOperationUnTenanted<TResponse> setFilter(String value) { this.filter = value; return this; }
public String getSearch() { return search; }
public SearchOperationUnTenanted<TResponse> setSearch(String value) { this.search = value; return this; }
}
public static class GetOperationUnTenanted<TResponse> implements IHasGetOptions, IGet
{
public String embed = null;
public String getEmbed() { return embed; }
public GetOperationUnTenanted<TResponse> setEmbed(String value) { this.embed = value; return this; }
}
public static class SearchAllCustomersResponse
{
public ResponseStatus responseStatus = null;
public ArrayList<Customer> customers = null;
public SearchMetadata metadata = null;
public ResponseStatus getResponseStatus() { return responseStatus; }
public SearchAllCustomersResponse setResponseStatus(ResponseStatus value) { this.responseStatus = value; return this; }
public ArrayList<Customer> getCustomers() { return customers; }
public SearchAllCustomersResponse setCustomers(ArrayList<Customer> value) { this.customers = value; return this; }
public SearchMetadata getMetadata() { return metadata; }
public SearchAllCustomersResponse setMetadata(SearchMetadata value) { this.metadata = value; return this; }
}
public static class Customer implements IIdentifiableResource
{
public String id = null;
public String firstName = null;
public String lastName = null;
public Date dateOfBirth = null;
public String driversLicenceNo = null;
public String email = null;
public String phone = null;
public String preferredContactMethod = null;
public String addressLine1 = null;
public String addressLine2 = null;
public String suburb = null;
public String stateTerritory = null;
public String postcode = null;
public BankAccount bankAccount = null;
public String userAccountId = null;
public String getId() { return id; }
public Customer setId(String value) { this.id = value; return this; }
public String getFirstName() { return firstName; }
public Customer setFirstName(String value) { this.firstName = value; return this; }
public String getLastName() { return lastName; }
public Customer setLastName(String value) { this.lastName = value; return this; }
public Date getDateOfBirth() { return dateOfBirth; }
public Customer setDateOfBirth(Date value) { this.dateOfBirth = value; return this; }
public String getDriversLicenceNo() { return driversLicenceNo; }
public Customer setDriversLicenceNo(String value) { this.driversLicenceNo = value; return this; }
public String getEmail() { return email; }
public Customer setEmail(String value) { this.email = value; return this; }
public String getPhone() { return phone; }
public Customer setPhone(String value) { this.phone = value; return this; }
public String getPreferredContactMethod() { return preferredContactMethod; }
public Customer setPreferredContactMethod(String value) { this.preferredContactMethod = value; return this; }
public String getAddressLine1() { return addressLine1; }
public Customer setAddressLine1(String value) { this.addressLine1 = value; return this; }
public String getAddressLine2() { return addressLine2; }
public Customer setAddressLine2(String value) { this.addressLine2 = value; return this; }
public String getSuburb() { return suburb; }
public Customer setSuburb(String value) { this.suburb = value; return this; }
public String getStateTerritory() { return stateTerritory; }
public Customer setStateTerritory(String value) { this.stateTerritory = value; return this; }
public String getPostcode() { return postcode; }
public Customer setPostcode(String value) { this.postcode = value; return this; }
public BankAccount getBankAccount() { return bankAccount; }
public Customer setBankAccount(BankAccount value) { this.bankAccount = value; return this; }
public String getUserAccountId() { return userAccountId; }
public Customer setUserAccountId(String value) { this.userAccountId = value; return this; }
}
public static class BankAccount
{
public String bsbNumber = null;
public String accountNumber = null;
public String getBsbNumber() { return bsbNumber; }
public BankAccount setBsbNumber(String value) { this.bsbNumber = value; return this; }
public String getAccountNumber() { return accountNumber; }
public BankAccount setAccountNumber(String value) { this.accountNumber = value; return this; }
}
public static class SearchMetadata
{
public Integer total = null;
public Integer limit = null;
public Integer offset = null;
public Sorting sort = null;
public Filtering filter = null;
public Integer getTotal() { return total; }
public SearchMetadata setTotal(Integer value) { this.total = value; return this; }
public Integer getLimit() { return limit; }
public SearchMetadata setLimit(Integer value) { this.limit = value; return this; }
public Integer getOffset() { return offset; }
public SearchMetadata setOffset(Integer value) { this.offset = value; return this; }
public Sorting getSort() { return sort; }
public SearchMetadata setSort(Sorting value) { this.sort = value; return this; }
public Filtering getFilter() { return filter; }
public SearchMetadata setFilter(Filtering value) { this.filter = value; return this; }
}
public static class Sorting
{
public String by = null;
public SortDirection direction = null;
public String getBy() { return by; }
public Sorting setBy(String value) { this.by = value; return this; }
public SortDirection getDirection() { return direction; }
public Sorting setDirection(SortDirection value) { this.direction = value; return this; }
}
public static enum SortDirection
{
Ascending,
Descending;
}
public static class Filtering
{
public ArrayList<String> fields = null;
public String search = null;
public ArrayList<String> getFields() { return fields; }
public Filtering setFields(ArrayList<String> value) { this.fields = value; return this; }
public String getSearch() { return search; }
public Filtering setSearch(String value) { this.search = value; return this; }
}
}
Java SearchAllCustomersRequest DTOs
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 /customers HTTP/1.1 Host: staging-api.billiecart.com.au Accept: application/xml
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <SearchAllCustomersResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Infrastructure.Api.Interfaces.ServiceOperations.Customers"> <Customers xmlns:d2p1="http://schemas.datacontract.org/2004/07/Application.Interfaces.Resources"> <d2p1:Customer> <d2p1:AddressLine1>String</d2p1:AddressLine1> <d2p1:AddressLine2>String</d2p1:AddressLine2> <d2p1:BankAccount> <d2p1:AccountNumber>String</d2p1:AccountNumber> <d2p1:BsbNumber>String</d2p1:BsbNumber> </d2p1:BankAccount> <d2p1:DateOfBirth>0001-01-01T00:00:00</d2p1:DateOfBirth> <d2p1:DriversLicenceNo>String</d2p1:DriversLicenceNo> <d2p1:Email>String</d2p1:Email> <d2p1:FirstName>String</d2p1:FirstName> <d2p1:Id>String</d2p1:Id> <d2p1:LastName>String</d2p1:LastName> <d2p1:Phone>String</d2p1:Phone> <d2p1:Postcode>String</d2p1:Postcode> <d2p1:PreferredContactMethod>String</d2p1:PreferredContactMethod> <d2p1:StateTerritory>String</d2p1:StateTerritory> <d2p1:Suburb>String</d2p1:Suburb> <d2p1:UserAccountId>String</d2p1:UserAccountId> </d2p1:Customer> </Customers> <Metadata xmlns:d2p1="http://schemas.datacontract.org/2004/07/Application.Interfaces"> <d2p1:Filter> <d2p1:Fields xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <d4p1:string>String</d4p1:string> </d2p1:Fields> <d2p1:Search>String</d2p1:Search> </d2p1:Filter> <d2p1:Limit>0</d2p1:Limit> <d2p1:Offset>0</d2p1:Offset> <d2p1:Sort> <d2p1:By>String</d2p1:By> <d2p1:Direction>Ascending</d2p1:Direction> </d2p1:Sort> <d2p1:Total>0</d2p1:Total> </Metadata> <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types"> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:Message>String</d2p1:Message> <d2p1:StackTrace>String</d2p1:StackTrace> <d2p1:Errors> <d2p1:ResponseError> <d2p1:ErrorCode>String</d2p1:ErrorCode> <d2p1:FieldName>String</d2p1:FieldName> <d2p1:Message>String</d2p1:Message> <d2p1: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> </d2p1:Meta> </d2p1:ResponseError> </d2p1:Errors> <d2p1: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> </d2p1:Meta> </ResponseStatus> </SearchAllCustomersResponse>