| Requires any of the roles: | Agent, Administrator |
| POST,OPTIONS | /v1/invoice |
|---|
namespace CRM.AgencyPlatform.API.Internal
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type Invoice() =
member val InvoiceID:Int32 = new Int32() with get,set
member val InvoiceUID:Nullable<Guid> = new Nullable<Guid>() with get,set
member val ProjectUID:Nullable<Guid> = new Nullable<Guid>() with get,set
member val InvoiceNumber:String = null with get,set
member val InvoiceDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val DueDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val FromName:String = null with get,set
member val FromPhone:String = null with get,set
member val FromEmail:String = null with get,set
member val FromAddress:String = null with get,set
member val FromDesc:String = null with get,set
member val ToName:String = null with get,set
member val ToPhone:String = null with get,set
member val ToEmail:String = null with get,set
member val ToAddress:String = null with get,set
member val ToDesc:String = null with get,set
member val Notes:String = null with get,set
member val Currency:String = null with get,set
member val Status:Int32 = new Int32() with get,set
member val Total:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val IsPaid:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val PaidDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val IsDeleted:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val IsLocked:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val CreatedDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val ModifiedDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val CreatedByUID:Nullable<Guid> = new Nullable<Guid>() with get,set
[<AllowNullLiteral>]
type InvoiceLineItem() =
member val InvoiceLineItemID:Int32 = new Int32() with get,set
member val InvoiceID:Int32 = new Int32() with get,set
member val Type:String = null with get,set
member val Name:String = null with get,set
member val Quantity:Nullable<Int32> = new Nullable<Int32>() with get,set
member val PercentageAdjust:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val AmountAdjust:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val Price:Nullable<Decimal> = new Nullable<Decimal>() with get,set
member val Description:String = null with get,set
member val Notes:String = null with get,set
member val IsTaxable:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val DisplayOrder:Nullable<Int32> = new Nullable<Int32>() with get,set
member val IsLocked:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val IsDeleted:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val IsPaid:Nullable<Boolean> = new Nullable<Boolean>() with get,set
member val CreatedDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val ModifiedDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
member val CreatedByUID:Nullable<Guid> = new Nullable<Guid>() with get,set
[<AllowNullLiteral>]
type InsertInvoiceRequest() =
member val Invoice:Invoice = null with get,set
member val LineItems:ResizeArray<InvoiceLineItem> = new ResizeArray<InvoiceLineItem>() with get,set
[<AllowNullLiteral>]
type InvoiceIdentification() =
member val InvoiceId:Int32 = new Int32() with get,set
member val InvoiceUid:Guid = new Guid() with get,set
[<AllowNullLiteral>]
type InsertInvoiceResponse() =
member val ResponseStatus:ResponseStatus = null with get,set
member val NewInvoiceIdentification:InvoiceIdentification = null with get,set
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.
POST /v1/invoice HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<InsertInvoiceRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<Invoice>
<CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
<CreatedDate>0001-01-01T00:00:00</CreatedDate>
<Currency>String</Currency>
<DueDate>0001-01-01T00:00:00</DueDate>
<FromAddress>String</FromAddress>
<FromDesc>String</FromDesc>
<FromEmail>String</FromEmail>
<FromName>String</FromName>
<FromPhone>String</FromPhone>
<InvoiceDate>0001-01-01T00:00:00</InvoiceDate>
<InvoiceID>0</InvoiceID>
<InvoiceNumber>String</InvoiceNumber>
<InvoiceUID>00000000-0000-0000-0000-000000000000</InvoiceUID>
<IsDeleted>false</IsDeleted>
<IsLocked>false</IsLocked>
<IsPaid>false</IsPaid>
<ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
<Notes>String</Notes>
<PaidDate>0001-01-01T00:00:00</PaidDate>
<ProjectUID>00000000-0000-0000-0000-000000000000</ProjectUID>
<Status>0</Status>
<ToAddress>String</ToAddress>
<ToDesc>String</ToDesc>
<ToEmail>String</ToEmail>
<ToName>String</ToName>
<ToPhone>String</ToPhone>
<Total>0</Total>
</Invoice>
<LineItems>
<InvoiceLineItem>
<AmountAdjust>0</AmountAdjust>
<CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
<CreatedDate>0001-01-01T00:00:00</CreatedDate>
<Description>String</Description>
<DisplayOrder>0</DisplayOrder>
<InvoiceID>0</InvoiceID>
<InvoiceLineItemID>0</InvoiceLineItemID>
<IsDeleted>false</IsDeleted>
<IsLocked>false</IsLocked>
<IsPaid>false</IsPaid>
<IsTaxable>false</IsTaxable>
<ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
<Name>String</Name>
<Notes>String</Notes>
<PercentageAdjust>0</PercentageAdjust>
<Price>0</Price>
<Quantity>0</Quantity>
<Type>String</Type>
</InvoiceLineItem>
</LineItems>
</InsertInvoiceRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<InsertInvoiceResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<NewInvoiceIdentification>
<InvoiceId>0</InvoiceId>
<InvoiceUid>00000000-0000-0000-0000-000000000000</InvoiceUid>
</NewInvoiceIdentification>
<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>
</InsertInvoiceResponse>