| GET,POST,PUT,DELETE | /{Workspace}/PricingList/{ObjectId} | ||
|---|---|---|---|
| GET | /{Workspace}/PricingList |
namespace Field2Office.API.Model.PricingLists
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type PricingListItem() =
member val ObjectId:String = null with get,set
member val Description:String = null with get,set
member val Details:String = null with get,set
member val Manufacturer:String = null with get,set
member val Model:String = null with get,set
member val Photo:String = null with get,set
member val IsTaxable:Boolean = new Boolean() with get,set
member val Unit:String = null with get,set
member val UnitPrice:Double = new Double() with get,set
member val Barcode:String = null with get,set
[<AllowNullLiteral>]
type PricingListCat() =
member val ObjectId:String = null with get,set
member val Name:String = null with get,set
member val Categories:ResizeArray<PricingListCat> = new ResizeArray<PricingListCat>() with get,set
member val Items:ResizeArray<PricingListItem> = new ResizeArray<PricingListItem>() with get,set
///<summary>
///Represents a DTO for a pricing list in a workspace. Calls without an ObjectId will retrieve an array of all active pricing list objects for the workspace.
///</summary>
[<AllowNullLiteral>]
type PricingList() =
member val Workspace:String = null with get,set
member val ObjectId:String = null with get,set
member val VersionId:String = null with get,set
member val BasedOn:String = null with get,set
member val Name:String = null with get,set
member val Categories:ResizeArray<PricingListCat> = new ResizeArray<PricingListCat>() with get,set
member val Items:ResizeArray<PricingListItem> = new ResizeArray<PricingListItem>() with get,set
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 /{Workspace}/PricingList/{ObjectId} HTTP/1.1
Host: dev.fieldsquared.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Workspace: String,
ObjectId: String,
VersionId: String,
BasedOn: String,
Name: String,
Categories:
[
{
ObjectId: String,
Name: String,
Categories:
[
{
ObjectId: String,
Name: String,
Categories:
[
{
ObjectId: String,
Name: String,
Items:
[
{
ObjectId: String,
Description: String,
Details: String,
Manufacturer: String,
Model: String,
Photo: String,
IsTaxable: False,
Unit: String,
UnitPrice: 0,
Barcode: String
}
]
}
],
Items:
[
{
ObjectId: String,
Description: String,
Details: String,
Manufacturer: String,
Model: String,
Photo: String,
IsTaxable: False,
Unit: String,
UnitPrice: 0,
Barcode: String
}
]
}
],
Items:
[
{
ObjectId: String,
Description: String,
Details: String,
Manufacturer: String,
Model: String,
Photo: String,
IsTaxable: False,
Unit: String,
UnitPrice: 0,
Barcode: String
}
]
}
],
Items:
[
{
ObjectId: String,
Description: String,
Details: String,
Manufacturer: String,
Model: String,
Photo: String,
IsTaxable: False,
Unit: String,
UnitPrice: 0,
Barcode: String
}
]
}