All Verbs | /orders | ||
---|---|---|---|
All Verbs | /orders/page/{Page} | ||
All Verbs | /customers/{CustomerId}/orders |
Imports System
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
Public Partial Class GetOrders
Implements IGet
Public Overridable Property Page As Nullable(Of Integer)
Public Overridable Property CustomerId As String
End Class
<DataContract>
Public Partial Class OrdersResponse
Public Sub New()
Results = New List(Of CustomerOrder)
End Sub
<DataMember>
Public Overridable Property Results As List(Of CustomerOrder)
<DataMember>
Public Overridable Property ResponseStatus As ResponseStatus
End Class
End Namespace
Namespace Northwind.ServiceModel.Types
<DataContract>
Public Partial Class CustomerOrder
Public Sub New()
OrderDetails = New List(Of OrderDetail)
End Sub
<DataMember>
Public Overridable Property Order As Order
<DataMember>
Public Overridable Property OrderDetails As 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 Nullable(Of Date)
<DataMember>
Public Overridable Property RequiredDate As Nullable(Of Date)
<DataMember>
Public Overridable Property ShippedDate As Nullable(Of Date)
<DataMember>
Public Overridable Property ShipVia As Nullable(Of 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
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 /orders HTTP/1.1
Host: northwind.netcore.io
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
page: 0,
customerId: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { results: [ { 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 } } }