| All Verbs | /customers/{Id} |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports Northwind.ServiceModel
Imports Northwind.ServiceModel.Types
Namespace Global
Namespace Northwind.ServiceModel
<DataContract>
Public Partial Class CustomerDetailsResponse
<DataMember>
Public Overridable Property Customer As Customer
<DataMember>
Public Overridable Property Orders As List(Of CustomerOrder) = New List(Of CustomerOrder)
<DataMember>
Public Overridable Property ResponseStatus As ResponseStatus
End Class
Public Partial Class GetCustomerDetails
Implements IGet
Public Overridable Property Id As String
End Class
End Namespace
Namespace Northwind.ServiceModel.Types
<DataContract>
Public Partial Class Customer
<DataMember>
Public Overridable Property Id As String
<DataMember>
Public Overridable Property CompanyName As String
<DataMember>
Public Overridable Property ContactName As String
<DataMember>
Public Overridable Property ContactTitle As String
<DataMember>
Public Overridable Property Address As String
<DataMember>
Public Overridable Property City As String
<DataMember>
Public Overridable Property Region As String
<DataMember>
Public Overridable Property PostalCode As String
<DataMember>
Public Overridable Property Country As String
<DataMember>
Public Overridable Property Phone As String
<DataMember>
Public Overridable Property Fax As String
End Class
<DataContract>
Public Partial Class CustomerOrder
<DataMember>
Public Overridable Property Order As Order
<DataMember>
Public Overridable Property OrderDetails As List(Of OrderDetail) = New List(Of OrderDetail)
End Class
<DataContract>
Public Partial Class Order
<DataMember>
Public Overridable Property Id As Integer
<DataMember>
Public Overridable Property CustomerId As String
<DataMember>
Public Overridable Property EmployeeId As Integer
<DataMember>
Public Overridable Property OrderDate As Date?
<DataMember>
Public Overridable Property RequiredDate As Date?
<DataMember>
Public Overridable Property ShippedDate As Date?
<DataMember>
Public Overridable Property ShipVia As Integer?
<DataMember>
Public Overridable Property Freight As Decimal
<DataMember>
Public Overridable Property ShipName As String
<DataMember>
Public Overridable Property ShipAddress As String
<DataMember>
Public Overridable Property ShipCity As String
<DataMember>
Public Overridable Property ShipRegion As String
<DataMember>
Public Overridable Property ShipPostalCode As String
<DataMember>
Public Overridable Property ShipCountry As String
End Class
<DataContract>
Public Partial Class OrderDetail
<DataMember>
Public Overridable Property OrderId As Integer
<DataMember>
Public Overridable Property ProductId As Integer
<DataMember>
Public Overridable Property UnitPrice As Decimal
<DataMember>
Public Overridable Property Quantity As Short
<DataMember>
Public Overridable Property Discount As Double
End Class
End Namespace
End Namespace
VB.NET GetCustomerDetails DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /customers/{Id} HTTP/1.1
Host: uitestapi.occupass.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
id: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
customer:
{
id: String,
companyName: String,
contactName: String,
contactTitle: String,
address: String,
city: String,
region: String,
postalCode: String,
country: String,
phone: String,
fax: String
},
orders:
[
{
order:
{
id: 0,
customerId: String,
employeeId: 0,
orderDate: 0001-01-01,
requiredDate: 0001-01-01,
shippedDate: 0001-01-01,
shipVia: 0,
freight: 0,
shipName: String,
shipAddress: String,
shipCity: String,
shipRegion: String,
shipPostalCode: String,
shipCountry: String
},
orderDetails:
[
{
orderId: 0,
productId: 0,
unitPrice: 0,
quantity: 0,
discount: 0
}
]
}
],
responseStatus:
{
errorCode: String,
message: String,
stackTrace: String,
errors:
[
{
errorCode: String,
fieldName: String,
message: String,
meta:
{
String: String
}
}
],
meta:
{
String: String
}
}
}