Trendsic Platform Service

<back to all web services

InvoiceGenerateRequest

Requires Authentication
Requires any of the roles:Agent, Administrator
The following routes are available for this service:
GET,OPTIONS/v1/invoice/generate/{ProjectUID}/{InvoiceStartDate}/{InvoiceEndDate}
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class InvoiceGenerateRequest
    {
        public UUID ProjectUID = null;
        public Date InvoiceStartDate = null;
        public Date InvoiceEndDate = null;
        
        public UUID getProjectUID() { return ProjectUID; }
        public InvoiceGenerateRequest setProjectUID(UUID value) { this.ProjectUID = value; return this; }
        public Date getInvoiceStartDate() { return InvoiceStartDate; }
        public InvoiceGenerateRequest setInvoiceStartDate(Date value) { this.InvoiceStartDate = value; return this; }
        public Date getInvoiceEndDate() { return InvoiceEndDate; }
        public InvoiceGenerateRequest setInvoiceEndDate(Date value) { this.InvoiceEndDate = value; return this; }
    }

    public static class InvoiceGenerateResponse
    {
        public ResponseStatus ResponseStatus = null;
        public ArrayList<InvoiceLineItem> ProjectInvoice = new ArrayList<InvoiceLineItem>();
        
        public ResponseStatus getResponseStatus() { return ResponseStatus; }
        public InvoiceGenerateResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
        public ArrayList<InvoiceLineItem> getProjectInvoice() { return ProjectInvoice; }
        public InvoiceGenerateResponse setProjectInvoice(ArrayList<InvoiceLineItem> value) { this.ProjectInvoice = value; return this; }
    }

    public static class InvoiceLineItem
    {
        public Integer InvoiceLineItemID = null;
        public Integer InvoiceID = null;
        public String Type = null;
        public String Name = null;
        public Integer Quantity = null;
        public BigDecimal PercentageAdjust = null;
        public BigDecimal AmountAdjust = null;
        public BigDecimal Price = null;
        public String Description = null;
        public String Notes = null;
        public Boolean IsTaxable = null;
        public Integer DisplayOrder = null;
        public Boolean IsLocked = null;
        public Boolean IsDeleted = null;
        public Boolean IsPaid = null;
        public Date CreatedDate = null;
        public Date ModifiedDate = null;
        public UUID CreatedByUID = null;
        
        public Integer getInvoiceLineItemID() { return InvoiceLineItemID; }
        public InvoiceLineItem setInvoiceLineItemID(Integer value) { this.InvoiceLineItemID = value; return this; }
        public Integer getInvoiceID() { return InvoiceID; }
        public InvoiceLineItem setInvoiceID(Integer value) { this.InvoiceID = value; return this; }
        public String getType() { return Type; }
        public InvoiceLineItem setType(String value) { this.Type = value; return this; }
        public String getName() { return Name; }
        public InvoiceLineItem setName(String value) { this.Name = value; return this; }
        public Integer getQuantity() { return Quantity; }
        public InvoiceLineItem setQuantity(Integer value) { this.Quantity = value; return this; }
        public BigDecimal getPercentageAdjust() { return PercentageAdjust; }
        public InvoiceLineItem setPercentageAdjust(BigDecimal value) { this.PercentageAdjust = value; return this; }
        public BigDecimal getAmountAdjust() { return AmountAdjust; }
        public InvoiceLineItem setAmountAdjust(BigDecimal value) { this.AmountAdjust = value; return this; }
        public BigDecimal getPrice() { return Price; }
        public InvoiceLineItem setPrice(BigDecimal value) { this.Price = value; return this; }
        public String getDescription() { return Description; }
        public InvoiceLineItem setDescription(String value) { this.Description = value; return this; }
        public String getNotes() { return Notes; }
        public InvoiceLineItem setNotes(String value) { this.Notes = value; return this; }
        public Boolean getIsTaxable() { return IsTaxable; }
        public InvoiceLineItem setIsTaxable(Boolean value) { this.IsTaxable = value; return this; }
        public Integer getDisplayOrder() { return DisplayOrder; }
        public InvoiceLineItem setDisplayOrder(Integer value) { this.DisplayOrder = value; return this; }
        public Boolean getIsLocked() { return IsLocked; }
        public InvoiceLineItem setIsLocked(Boolean value) { this.IsLocked = value; return this; }
        public Boolean getIsDeleted() { return IsDeleted; }
        public InvoiceLineItem setIsDeleted(Boolean value) { this.IsDeleted = value; return this; }
        public Boolean getIsPaid() { return IsPaid; }
        public InvoiceLineItem setIsPaid(Boolean value) { this.IsPaid = value; return this; }
        public Date getCreatedDate() { return CreatedDate; }
        public InvoiceLineItem setCreatedDate(Date value) { this.CreatedDate = value; return this; }
        public Date getModifiedDate() { return ModifiedDate; }
        public InvoiceLineItem setModifiedDate(Date value) { this.ModifiedDate = value; return this; }
        public UUID getCreatedByUID() { return CreatedByUID; }
        public InvoiceLineItem setCreatedByUID(UUID value) { this.CreatedByUID = value; return this; }
    }

}

Java InvoiceGenerateRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/invoice/generate/{ProjectUID}/{InvoiceStartDate}/{InvoiceEndDate} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	ProjectInvoice: 
	[
		{
			InvoiceLineItemID: 0,
			InvoiceID: 0,
			Type: String,
			Name: String,
			Quantity: 0,
			PercentageAdjust: 0,
			AmountAdjust: 0,
			Price: 0,
			Description: String,
			Notes: String,
			IsTaxable: False,
			DisplayOrder: 0,
			IsLocked: False,
			IsDeleted: False,
			IsPaid: False,
			CreatedDate: 0001-01-01,
			ModifiedDate: 0001-01-01,
			CreatedByUID: 00000000000000000000000000000000
		}
	]
}