Trendsic Platform Service

<back to all web services

CreateQuoteRequest

Requires Authentication
The following routes are available for this service:
POST,OPTIONS/v1/quote
import java.math.*;
import java.util.*;
import java.io.InputStream;
import net.servicestack.client.*;

public class dtos
{

    public static class CreateQuoteRequest
    {
        public Quote Quote = null;
        
        public Quote getQuote() { return Quote; }
        public CreateQuoteRequest setQuote(Quote value) { this.Quote = value; return this; }
    }

    public static class Quote
    {
        public Integer QuoteID = null;
        public UUID QuoteUID = null;
        public UUID TenantId = null;
        public UUID BranchId = null;
        public Integer ProjectID = null;
        public UUID ProjectUID = null;
        public String ProjectName = null;
        public String Name = null;
        public String Status = null;
        public BigDecimal Total = null;
        public String Notes = null;
        public String Currency = null;
        public String FromName = null;
        public String FromPhone = null;
        public String FromEmail = null;
        public String FromAddress = null;
        public String ToName = null;
        public String ToPhone = null;
        public String ToEmail = null;
        public String ToAddress = null;
        public Date ExpiresAt = null;
        public Boolean IsLocked = null;
        public Boolean FinalPriceAfterCompletion = null;
        public String ApprovedByName = null;
        public Date ApprovedAt = null;
        public String DeclinedByName = null;
        public Date DeclinedAt = null;
        public String DeclineReason = null;
        public String CreatedBy = null;
        public Date CreatedAt = null;
        public String UpdatedBy = null;
        public Date UpdatedAt = null;
        public ArrayList<QuoteItem> Items = new ArrayList<QuoteItem>();
        
        public Integer getQuoteID() { return QuoteID; }
        public Quote setQuoteID(Integer value) { this.QuoteID = value; return this; }
        public UUID getQuoteUID() { return QuoteUID; }
        public Quote setQuoteUID(UUID value) { this.QuoteUID = value; return this; }
        public UUID getTenantId() { return TenantId; }
        public Quote setTenantId(UUID value) { this.TenantId = value; return this; }
        public UUID getBranchId() { return BranchId; }
        public Quote setBranchId(UUID value) { this.BranchId = value; return this; }
        public Integer getProjectID() { return ProjectID; }
        public Quote setProjectID(Integer value) { this.ProjectID = value; return this; }
        public UUID getProjectUID() { return ProjectUID; }
        public Quote setProjectUID(UUID value) { this.ProjectUID = value; return this; }
        public String getProjectName() { return ProjectName; }
        public Quote setProjectName(String value) { this.ProjectName = value; return this; }
        public String getName() { return Name; }
        public Quote setName(String value) { this.Name = value; return this; }
        public String getStatus() { return Status; }
        public Quote setStatus(String value) { this.Status = value; return this; }
        public BigDecimal getTotal() { return Total; }
        public Quote setTotal(BigDecimal value) { this.Total = value; return this; }
        public String getNotes() { return Notes; }
        public Quote setNotes(String value) { this.Notes = value; return this; }
        public String getCurrency() { return Currency; }
        public Quote setCurrency(String value) { this.Currency = value; return this; }
        public String getFromName() { return FromName; }
        public Quote setFromName(String value) { this.FromName = value; return this; }
        public String getFromPhone() { return FromPhone; }
        public Quote setFromPhone(String value) { this.FromPhone = value; return this; }
        public String getFromEmail() { return FromEmail; }
        public Quote setFromEmail(String value) { this.FromEmail = value; return this; }
        public String getFromAddress() { return FromAddress; }
        public Quote setFromAddress(String value) { this.FromAddress = value; return this; }
        public String getToName() { return ToName; }
        public Quote setToName(String value) { this.ToName = value; return this; }
        public String getToPhone() { return ToPhone; }
        public Quote setToPhone(String value) { this.ToPhone = value; return this; }
        public String getToEmail() { return ToEmail; }
        public Quote setToEmail(String value) { this.ToEmail = value; return this; }
        public String getToAddress() { return ToAddress; }
        public Quote setToAddress(String value) { this.ToAddress = value; return this; }
        public Date getExpiresAt() { return ExpiresAt; }
        public Quote setExpiresAt(Date value) { this.ExpiresAt = value; return this; }
        public Boolean getIsLocked() { return IsLocked; }
        public Quote setIsLocked(Boolean value) { this.IsLocked = value; return this; }
        public Boolean isFinalPriceAfterCompletion() { return FinalPriceAfterCompletion; }
        public Quote setFinalPriceAfterCompletion(Boolean value) { this.FinalPriceAfterCompletion = value; return this; }
        public String getApprovedByName() { return ApprovedByName; }
        public Quote setApprovedByName(String value) { this.ApprovedByName = value; return this; }
        public Date getApprovedAt() { return ApprovedAt; }
        public Quote setApprovedAt(Date value) { this.ApprovedAt = value; return this; }
        public String getDeclinedByName() { return DeclinedByName; }
        public Quote setDeclinedByName(String value) { this.DeclinedByName = value; return this; }
        public Date getDeclinedAt() { return DeclinedAt; }
        public Quote setDeclinedAt(Date value) { this.DeclinedAt = value; return this; }
        public String getDeclineReason() { return DeclineReason; }
        public Quote setDeclineReason(String value) { this.DeclineReason = value; return this; }
        public String getCreatedBy() { return CreatedBy; }
        public Quote setCreatedBy(String value) { this.CreatedBy = value; return this; }
        public Date getCreatedAt() { return CreatedAt; }
        public Quote setCreatedAt(Date value) { this.CreatedAt = value; return this; }
        public String getUpdatedBy() { return UpdatedBy; }
        public Quote setUpdatedBy(String value) { this.UpdatedBy = value; return this; }
        public Date getUpdatedAt() { return UpdatedAt; }
        public Quote setUpdatedAt(Date value) { this.UpdatedAt = value; return this; }
        public ArrayList<QuoteItem> getItems() { return Items; }
        public Quote setItems(ArrayList<QuoteItem> value) { this.Items = value; return this; }
    }

    public static class QuoteItem
    {
        public Integer QuoteItemID = null;
        public Integer QuoteID = null;
        public String ItemType = null;
        public Integer SourceRefId = null;
        public Integer JobID = null;
        public String Name = null;
        public String Description = null;
        public BigDecimal Quantity = null;
        public BigDecimal UnitPrice = null;
        public Boolean IsTaxable = null;
        public Integer DisplayOrder = null;
        public Boolean IsDeleted = null;
        
        public Integer getQuoteItemID() { return QuoteItemID; }
        public QuoteItem setQuoteItemID(Integer value) { this.QuoteItemID = value; return this; }
        public Integer getQuoteID() { return QuoteID; }
        public QuoteItem setQuoteID(Integer value) { this.QuoteID = value; return this; }
        public String getItemType() { return ItemType; }
        public QuoteItem setItemType(String value) { this.ItemType = value; return this; }
        public Integer getSourceRefId() { return SourceRefId; }
        public QuoteItem setSourceRefId(Integer value) { this.SourceRefId = value; return this; }
        public Integer getJobID() { return JobID; }
        public QuoteItem setJobID(Integer value) { this.JobID = value; return this; }
        public String getName() { return Name; }
        public QuoteItem setName(String value) { this.Name = value; return this; }
        public String getDescription() { return Description; }
        public QuoteItem setDescription(String value) { this.Description = value; return this; }
        public BigDecimal getQuantity() { return Quantity; }
        public QuoteItem setQuantity(BigDecimal value) { this.Quantity = value; return this; }
        public BigDecimal getUnitPrice() { return UnitPrice; }
        public QuoteItem setUnitPrice(BigDecimal value) { this.UnitPrice = value; return this; }
        public Boolean getIsTaxable() { return IsTaxable; }
        public QuoteItem setIsTaxable(Boolean value) { this.IsTaxable = value; return this; }
        public Integer getDisplayOrder() { return DisplayOrder; }
        public QuoteItem setDisplayOrder(Integer value) { this.DisplayOrder = value; return this; }
        public Boolean getIsDeleted() { return IsDeleted; }
        public QuoteItem setIsDeleted(Boolean value) { this.IsDeleted = value; return this; }
    }

    public static class QuoteResponse
    {
        public ResponseStatus ResponseStatus = null;
        public Quote Quote = null;
        
        public ResponseStatus getResponseStatus() { return ResponseStatus; }
        public QuoteResponse setResponseStatus(ResponseStatus value) { this.ResponseStatus = value; return this; }
        public Quote getQuote() { return Quote; }
        public QuoteResponse setQuote(Quote value) { this.Quote = value; return this; }
    }

}

Java CreateQuoteRequest 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.

POST /v1/quote HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Quote: 
	{
		QuoteID: 0,
		QuoteUID: 00000000000000000000000000000000,
		TenantId: 00000000000000000000000000000000,
		BranchId: 00000000000000000000000000000000,
		ProjectID: 0,
		ProjectUID: 00000000000000000000000000000000,
		ProjectName: String,
		Name: String,
		Status: String,
		Total: 0,
		Notes: String,
		Currency: String,
		FromName: String,
		FromPhone: String,
		FromEmail: String,
		FromAddress: String,
		ToName: String,
		ToPhone: String,
		ToEmail: String,
		ToAddress: String,
		ExpiresAt: 0001-01-01,
		IsLocked: False,
		FinalPriceAfterCompletion: False,
		ApprovedByName: String,
		ApprovedAt: 0001-01-01,
		DeclinedByName: String,
		DeclinedAt: 0001-01-01,
		DeclineReason: String,
		CreatedBy: String,
		CreatedAt: 0001-01-01,
		UpdatedBy: String,
		UpdatedAt: 0001-01-01,
		Items: 
		[
			{
				QuoteItemID: 0,
				QuoteID: 0,
				ItemType: String,
				SourceRefId: 0,
				JobID: 0,
				Name: String,
				Description: String,
				Quantity: 0,
				UnitPrice: 0,
				IsTaxable: False,
				DisplayOrder: 0,
				IsDeleted: False
			}
		]
	}
}
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
		}
	},
	Quote: 
	{
		QuoteID: 0,
		QuoteUID: 00000000000000000000000000000000,
		TenantId: 00000000000000000000000000000000,
		BranchId: 00000000000000000000000000000000,
		ProjectID: 0,
		ProjectUID: 00000000000000000000000000000000,
		ProjectName: String,
		Name: String,
		Status: String,
		Total: 0,
		Notes: String,
		Currency: String,
		FromName: String,
		FromPhone: String,
		FromEmail: String,
		FromAddress: String,
		ToName: String,
		ToPhone: String,
		ToEmail: String,
		ToAddress: String,
		ExpiresAt: 0001-01-01,
		IsLocked: False,
		FinalPriceAfterCompletion: False,
		ApprovedByName: String,
		ApprovedAt: 0001-01-01,
		DeclinedByName: String,
		DeclinedAt: 0001-01-01,
		DeclineReason: String,
		CreatedBy: String,
		CreatedAt: 0001-01-01,
		UpdatedBy: String,
		UpdatedAt: 0001-01-01,
		Items: 
		[
			{
				QuoteItemID: 0,
				QuoteID: 0,
				ItemType: String,
				SourceRefId: 0,
				JobID: 0,
				Name: String,
				Description: String,
				Quantity: 0,
				UnitPrice: 0,
				IsTaxable: False,
				DisplayOrder: 0,
				IsDeleted: False
			}
		]
	}
}