{"openapi":"3.1.0","info":{"title":"QUOTING ENDPOINTS","version":"2.0.0"},"externalDocs":{"description":"Quoting Github docs","url":"https://github.com/pax8/Quoting#readme"},"servers":[{"description":"Public Apis","url":"https://api.pax8.com"}],"security":[{"bearerAuth":[]}],"paths":{"/v2/quote-attachments":{"get":{"description":"Returns the attachment entries associated from the library.","operationId":"getLibraryAttachmentsMetadata","responses":{"200":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}}}},"description":"OK - Returns the list of attachments entries."},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error - Access denied."}},"summary":"Get attachments from the library","tags":["Library attachments"]},"post":{"description":"Uploads attachments to the library.","operationId":"uploadAttachmentToLibrary","requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"attachments":{"type":"array","items":{"type":"string","format":"binary"}}},"required":["attachments"]}}}},"responses":{"201":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Upload attachments to library","tags":["Library attachments"]},"put":{"description":"Update attachments from the library.","operationId":"updateLibraryAttachments","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/UpdateAttachmentPayload"}}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}}}},"description":"OK"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Update library attachments","tags":["Library attachments"]}},"/v2/quote-attachments/shared":{"post":{"description":"Adds existing quote attachments to the library.","operationId":"addQuoteAttachmentsToLibrary","requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CopyAttachmentPayload"}}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Add quote attachments to library","tags":["Library attachments"]}},"/v2/quote-attachments/{attachmentId}":{"delete":{"description":"Deletes single attachment from the library.","operationId":"deleteSingleLibraryAttachment","parameters":[{"in":"path","name":"attachmentId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"content":{"*/*":{"schema":{"type":"string"}}},"description":"No Content"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Delete library attachment","tags":["Library attachments"]},"get":{"description":"Downloads single attachment from the library.","operationId":"getLibraryAttachmentMetadata","parameters":[{"in":"path","name":"attachmentId","required":true,"schema":{"type":"string","format":"uuid"}},{"description":"Must be set to true to download the file.","in":"query","name":"download","schema":{"type":"boolean","enum":["true"]}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttachmentResponse"}},"application/pdf":{"schema":{"format":"binary"}}},"description":"Returns attachment metadata as JSON. When 'download=true' is provided, returns the attachment file as PDF."},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Download library attachment","tags":["Library attachments"]},"patch":{"description":"Replace an existing library attachment with a new one.","operationId":"replaceLibraryAttachment","parameters":[{"in":"path","name":"attachmentId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"attachment":{"type":"string","format":"binary"}},"required":["attachment"]}}}},"responses":{"200":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/AttachmentResponse"}}},"description":"OK"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Replace library attachment","tags":["Library attachments"]}},"/v2/quote-preferences":{"get":{"description":"Returns quote preferences associated to the current user's partner account.","operationId":"getQuotePreferences","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PreferencesResponse"}}},"description":"OK - Returns the quote preferences."},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request - Invalid request parameters."},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error - Access denied."}},"summary":"Get quote preferences","tags":["Quote preferences"]},"put":{"description":"Create or update preferences for quotes.","operationId":"persistQuotePreferences","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PreferencesPayload"}}},"required":true},"responses":{"200":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/QuotePreferencesResult"}}},"description":"OK"},"201":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/QuotePreferencesResult"}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Update quote preferences","tags":["Quote preferences"]}},"/v2/quote-preferences/attachments":{"post":{"description":"Upload preference attachments based on library attachments.","operationId":"uploadPreferencesAttachments","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddPreferenceAttachmentsPayload"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Upload preference attachments","tags":["Preference attachments"]}},"/v2/quote-preferences/attachments/{attachmentId}":{"delete":{"description":"Deletes single attachment from the preferences.","operationId":"deletePreferenceAttachment","parameters":[{"in":"path","name":"attachmentId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"content":{"*/*":{"schema":{"type":"string"}}},"description":"No Content"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Delete preference attachment","tags":["Preference attachments"]}},"/v2/quotes":{"get":{"description":"Fetches a paginated list of quotes with optional search and status filters.","operationId":"getQuotesList","parameters":[{"in":"query","name":"limit","schema":{"type":"number","default":10}},{"in":"query","name":"page","schema":{"type":"number","default":0}},{"description":"Return quotes sorted by fieldName,direction (e.g. sort=status,desc).","in":"query","name":"sort","schema":{"type":"string","enum":["id","status","client.name","createdBy","createdOn","updatedOn","totals.initialTotal","totals.recurringTotal"]}},{"description":"Search on fields like client name, reference code, created by user name, and invoice totals.","in":"query","name":"search","required":false,"schema":{"type":"string"}},{"description":"Filter by status. Multiple values can be provided as a comma-separated list.","in":"query","name":"status","required":false,"schema":{"type":"string","enum":["draft","assigned","sent","closed","declined","accepted","changes_requested","expired","pending"]}},{"in":"query","name":"account","required":false,"schema":{"type":"string","default":"user","enum":["user","partner"]}},{"in":"query","name":"partnerId","required":false,"schema":{"type":"string","format":"uuid"}},{"in":"query","name":"intentType","required":false,"schema":{"type":"string","enum":["PARTNER_TO_CLIENT","PAX8_TO_PARTNER","PAX8_TO_PARTNER_CLIENT"]}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListResponse"}}},"description":"OK"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Get quotes list","tags":["Quotes"]},"post":{"description":"Creates a new quote for the specified clientId.","operationId":"createQuote","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateQuotePayload"}}},"required":true},"responses":{"201":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/QuoteResponse"}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Create quote","tags":["Quotes"]}},"/v2/quotes/{quoteId}":{"delete":{"description":"Deletes a quote by its quoteId.","operationId":"deleteQuoteById","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"content":{"*/*":{"schema":{"type":"string"}}},"description":"No Content"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Delete quote by ID","tags":["Quotes"]},"get":{"description":"Returns a single quote record matching the specified quoteId.","operationId":"getQuoteById","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuoteResponse"}}},"description":"OK - Returns the quote details."},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request - Invalid quote ID."},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error - Access denied."}},"summary":"Get quote by ID","tags":["Quotes"]},"put":{"description":"Updates the details of an existing quote.","operationId":"updateQuote","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateQuotePayload"}}},"required":true},"responses":{"200":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/QuoteResponse"}}},"description":"OK"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Update quote by ID","tags":["Quotes"]}},"/v2/quotes/{quoteId}/access-list":{"get":{"description":"Returns the access list entries associated to the specified quoteId.","operationId":"getQuoteAccessList","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessListResponse"}}},"description":"OK - Returns the access list entries of the quote."},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request - Invalid quote ID."},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error - Access denied."}},"summary":"Get quote access list","tags":["Quote access list"]},"post":{"description":"Share the quote by adding the emails of the intended recipients to this access list.","operationId":"addQuoteAccessListEntry","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AddAccessListEntryPayload"}}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AccessListEntry"}}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Add access list entries","tags":["Quote access list"]}},"/v2/quotes/{quoteId}/access-list/{accessListEntryId}":{"delete":{"description":"Deletes a specific access list entry from a quote.","operationId":"deleteQuoteShareEntry","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"accessListEntryId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"content":{"*/*":{"schema":{"type":"string"}}},"description":"No Content"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Delete quote access list entry","tags":["Quote access list"]}},"/v2/quotes/{quoteId}/attachments":{"get":{"description":"Downloads all quote attachments as a single zip file","operationId":"downloadAllAttachmentsAsZip","parameters":[{"description":"Must be set to true to download the ZIP.","in":"query","name":"downloadZip","schema":{"type":"boolean","enum":["true"]}},{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"content":{"application/zip":{"schema":{"type":"string","format":"binary"}}},"description":"Successful download of attachments as a ZIP file."},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Download all quote attachments","tags":["Quote attachments"]},"post":{"description":"Uploads attachments to the specified quote.","operationId":"uploadAttachmentToQuote","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"multipart/form-data":{"schema":{"type":"object","properties":{"attachments":{"type":"array","items":{"type":"string","format":"binary"}}},"required":["attachments"]}}}},"responses":{"201":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Upload attachments to quote","tags":["Quote attachments"]},"put":{"description":"Update attachments within a specified quote.","operationId":"updateAttachmentsMetadata","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/UpdateAttachmentPayload"}}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}}}},"description":"OK"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Update attachments","tags":["Quote attachments"]}},"/v2/quotes/{quoteId}/attachments/shared":{"post":{"description":"Adds a copy of an existing library document as an attachment to the specified quote.","operationId":"copyAttachmentsToQuoteFromLibrary","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/CopyAttachmentPayload"}}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Copy attachment to quote from library","tags":["Quote attachments"]}},"/v2/quotes/{quoteId}/attachments/{attachmentId}":{"delete":{"description":"Delete an attachment from a specified quote.","operationId":"deleteAttachment","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"attachmentId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"content":{"*/*":{"schema":{"type":"string"}}},"description":"No Content"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Delete attachment","tags":["Quote attachments"]},"get":{"description":"Downloads single attachment from a specified quote.","operationId":"getAttachmentMetadata","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"attachmentId","required":true,"schema":{"type":"string","format":"uuid"}},{"description":"Must be set to true to download the file.","in":"query","name":"download","schema":{"type":"boolean","enum":["true"]}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AttachmentResponse"}},"application/pdf":{"schema":{"format":"binary"}}},"description":"Returns attachment metadata as JSON. When 'download=true' is provided, returns the attachment file as PDF."},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Download attachment","tags":["Quote attachments"]}},"/v2/quotes/{quoteId}/line-items":{"post":{"description":"Limited to 30 total line items. This api supports adding 1 or more at a time.Line items with required relationships must be added together.","operationId":"addLineItems","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/AddCustomLineItemPayload"},{"$ref":"#/components/schemas/AddStandardLineItemPayload"},{"$ref":"#/components/schemas/AddUsageBasedLineItemPayload"}]}}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/LineItemResponse"}}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Add line items","tags":["Quote line items"]},"put":{"description":"Update line items within a specified quote.This api supports updating 1 or more at a time.Modifying relationships is not supported at this time. Delete and re-add instead.","operationId":"updateLineItems","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/UpdateCustomLineItemPayload"},{"$ref":"#/components/schemas/UpdateStandardLineItemPayload"},{"$ref":"#/components/schemas/UpdateUsageBasedLineItemPayload"}]}}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/LineItemResponse"}}}},"description":"OK"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Update line items","tags":["Quote line items"]}},"/v2/quotes/{quoteId}/line-items/bulk-delete":{"post":{"description":"Delete multiple line items from a quote in bulk.","operationId":"bulkDeleteLineItems","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteLineItemsPayload"}}},"required":true},"responses":{"204":{"content":{"*/*":{"schema":{"type":"string"}}},"description":"No Content"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Delete line items","tags":["Quote line items"]}},"/v2/quotes/{quoteId}/line-items/{lineItemId}":{"delete":{"description":"Delete a line item by lineItemId from quote.","operationId":"deleteLineItemById","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}},{"in":"path","name":"lineItemId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"204":{"content":{"*/*":{"schema":{"type":"string"}}},"description":"No Content"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Delete line item by ID","tags":["Quote line items"]}},"/v2/quotes/{quoteId}/sections":{"get":{"description":"Returns a list of sections associated to the specified quoteId.","operationId":"getSections","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SectionsResponse"}}},"description":"OK - Returns the sections of the quote."},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request - Invalid quote ID."},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error - Access denied."}},"summary":"Get quote sections","tags":["Quote sections"]},"post":{"description":"Creates a new section within a specified quote to organize line items.","operationId":"createSection","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSectionPayload"}}},"required":true},"responses":{"201":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/SectionsResponse"}}},"description":"Created"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Create Section","tags":["Quote sections"]},"put":{"description":"Update sections within a specified quote.","operationId":"updateSections","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SectionsPayload"}}},"required":true},"responses":{"200":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/SectionsResponse"}}},"description":"OK"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"}},"summary":"Update Sections","tags":["Quote sections"]}},"/v2/quotes/{quoteId}/take-ownership":{"post":{"description":"Takes ownership of a quote by the current partner user.","operationId":"takeQuoteOwnership","parameters":[{"in":"path","name":"quoteId","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/QuoteResponse"}}},"description":"OK"},"400":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Bad Request"},"403":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Authorization Error"},"404":{"content":{"*/*":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}},"description":"Not Found"}},"summary":"Take quote ownership","tags":["Quotes"]}}},"components":{"schemas":{"AccessListEntry":{"type":"object","properties":{"accountName":{"type":"string"},"accountRole":{"type":"string"},"accountType":{"type":"string","enum":["user","contact","guest"]},"email":{"type":"string"},"id":{"type":"string","format":"uuid"},"link":{"type":"string"},"userId":{"type":"string","format":"uuid"}},"required":["accountType","email","id","link"]},"AccessListResponse":{"type":"object","properties":{"accessList":{"type":"array","items":{"$ref":"#/components/schemas/AccessListEntry"}}},"required":["accessList"]},"AddAccessListEntryPayload":{"type":"object","properties":{"accountName":{"type":"string"},"accountRole":{"type":"string"},"accountType":{"type":"string","enum":["user","contact","guest"]},"email":{"type":"string"},"userId":{"type":"string","format":"uuid"}},"required":["email"]},"AddCustomLineItemPayload":{"allOf":[{"$ref":"#/components/schemas/AddLineItemBasePayload"},{"type":"object","properties":{"billingTerm":{"type":"string","enum":["Monthly","Annual","Trial","One-Time"]},"cost":{"type":"number","format":"double"},"initialTotal":{"type":"number","format":"double"},"productName":{"type":"string","description":"Max length 255 characters. Only alpha numeric characters and spaces allowed."},"productSku":{"type":"string","description":"Max length 100 characters. Only alpha numeric characters, and dashes allowed."}}}],"required":["billingTerm","cost","effectiveDate","initialTotal","price","productName","quantity","type"]},"AddLineItemBasePayload":{"type":"object","discriminator":{"propertyName":"type"},"properties":{"effectiveDate":{"type":"string","format":"date-time"},"note":{"type":"string","description":"Max length 2000 characters."},"price":{"type":"number","format":"double"},"quantity":{"type":"integer","format":"int32"},"type":{"type":"string","description":"Type of line item","enum":["Standard","Custom","UsageBased"]}},"required":["effectiveDate","price","quantity","type"]},"AddPreferenceAttachmentsPayload":{"type":"object","properties":{"attachments":{"type":"array","items":{"type":"string","format":"uuid"}}},"required":["attachments"]},"AddStandardLineItemPayload":{"allOf":[{"$ref":"#/components/schemas/AddLineItemBasePayload"},{"type":"object","properties":{"billingTerm":{"type":"string","enum":["Monthly","Annual","1 Year","2 Year","3 Year","Trial","Activation","One-Time"]},"commitmentTermId":{"type":"string","format":"uuid"},"productId":{"type":"string","format":"uuid"},"requiredLineItemId":{"type":"string","format":"uuid"},"requiredLineItemIndex":{"type":"integer","format":"int32"},"requiredSubscriptionId":{"type":"string","format":"uuid"},"subscriptionId":{"type":"string","format":"uuid"}}}],"required":["billingTerm","effectiveDate","price","productId","quantity","type"]},"AddUsageBasedLineItemPayload":{"allOf":[{"$ref":"#/components/schemas/AddLineItemBasePayload"},{"type":"object","properties":{"billingTerm":{"type":"string","enum":["Monthly","Annual","1 Year","2 Year","3 Year","Trial","Activation","One-Time"]},"commitmentTermId":{"type":"string","format":"uuid"},"cost":{"type":"number","format":"double"},"productId":{"type":"string","format":"uuid"},"requiredLineItemId":{"type":"string","format":"uuid"},"requiredLineItemIndex":{"type":"integer","format":"int32"},"requiredSubscriptionId":{"type":"string","format":"uuid"},"subscriptionId":{"type":"string","format":"uuid"},"usageBased":{"$ref":"#/components/schemas/UsageBased"}}}],"required":["billingTerm","cost","effectiveDate","price","productId","quantity","type","usageBased"]},"AmountCurrency":{"type":"object","properties":{"amount":{"type":"number","format":"double"},"currency":{"type":"string"}},"required":["amount","currency"]},"AttachmentResponse":{"type":"object","properties":{"createdBy":{"$ref":"#/components/schemas/CreatedBy"},"createdOn":{"type":"string","format":"date-time"},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"order":{"type":"integer","format":"int32"},"replacedOn":{"type":"string","format":"date-time"},"type":{"type":"string"},"url":{"type":"string"}},"required":["createdBy","createdOn","id","name","order","type","url"]},"ClientDetails":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"isShadowCompany":{"type":"boolean"},"name":{"type":"string"}},"required":["id","isShadowCompany","name"]},"CommitmentTerm":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"term":{"type":"string"}},"required":["id","term"]},"CopyAttachmentPayload":{"type":"object","properties":{"attachmentId":{"type":"string","format":"uuid"}},"required":["attachmentId"]},"CreateQuotePayload":{"type":"object","properties":{"clientId":{"type":"string","format":"uuid"},"quoteRequestId":{"type":"string","format":"uuid"}},"required":["clientId"]},"CreateSectionPayload":{"type":"object","properties":{"name":{"type":"string"}},"required":["name"]},"CreatedBy":{"type":"object","properties":{"fullName":{"type":"string"},"id":{"type":"string","format":"uuid"},"role":{"type":"string"}},"required":["fullName","id","role"]},"DeleteLineItemsPayload":{"type":"object","properties":{"lineItemIds":{"type":"array","items":{"type":"string","format":"uuid"}}},"required":["lineItemIds"]},"ErrorDetails":{"type":"object","properties":{"message":{"type":"string"},"type":{"type":"string","enum":["ACCESS_DENIED_IMPERSONATION","ACCESS_DENIED_REQUESTED_RESOURCE","ACCESS_LIST_LIMIT_EXCEEDED","CLIENT_ACCESS_DENIED","RESOURCE_NOT_FOUND","BAD_REQUEST","FAILED_ORDER_VALIDATION","INVALID_REQUEST_FIELD","QUOTE_NOT_FOUND","QUOTE_INVALID_STATUS","QUOTE_VALIDATION","QUOTE_EMIT_FAILED","CREATE_QUOTE_FAILED","QUOTE_ALREADY_DELETED","QUOTE_NOT_VALID","QUOTE_UPSERT_FAILED","QUOTE_COMPANY_PARTNER_COMPATIBILITY_CHECK_FAILED","QUOTE_REQUEST_COMPANY_COMPATIBILITY_CHECK_FAILED","QUOTE_ADD_LINE_ITEMS_FAILED","USER_NOT_FOUND","PARTNER_NOT_FOUND","LINE_ITEM_NOT_FOUND","QUOTE_LINE_ITEM_NOT_FOUND","SAVE_LINE_ITEM_FAILED","REQUEST_VALIDATION_FAILED","UNAUTHORIZED_ERROR","LINE_ITEM_LIMIT_EXCEEDED","DUPLICATE_QUOTE_WITH_EMPTY_LINE_ITEMS","DUPLICATE_QUOTE_VALIDATE_ALLOWED_PRODUCTS_FAILED","DUPLICATE_QUOTE_NO_PRODUCTS_ALLOWED","QUOTE_VALIDATION_TRIAL_PARENT_RESTRICTION","QUOTE_INVALID_RESPONSE","COMPANY_NOT_PROVIDED","COMPANY_PARTNER_COMPATIBILITY_MISMATCH","USER_LEVEL_CHECK_FAILED","QUOTE_REQUEST_NOT_FOUND","QUOTE_ACCESS_EMAIL_EXISTS","QUOTE_ACCESS_ENTRY_NOT_FOUND","QUOTE_ACCESS_ENTRY_INVALID_QUOTE_ID","USER_LEVEL_CHECK_FAILED_COMPANY","INVALID_REQUEST_PARAMETER","INVALID_USER_LEVEL","INVALID_REQUEST_BODY","BRANDING_NOT_FOUND","VIEW_NOT_FOUND","INTERNAL_EXCEPTION","REFERENCE_CODE_GENERATION_EXCEPTION","USAGE_BASED_PARAMETERS_MISCONFIGURATION","UNKNOWN_CURRENCY","UNKNOWN_ERROR","UNPROCESSABLE_INPUT","PAYLOAD_VALIDATION","MAX_ATTACHMENTS_EXCEEDED","LIBRARY_MAX_ATTACHMENTS_EXCEEDED","PREFERENCE_MAX_ATTACHMENTS_EXCEEDED","DUPLICATE_QUOTE_ATTACHMENT","QUOTE_ATTACHMENT_NOT_FOUND","LIBRARY_ATTACHMENT_NOT_FOUND","PREFERENCE_ATTACHMENT_NOT_FOUND","LIBRARY_ATTACHMENT_ALREADY_EXISTS","ATTACHMENT_NOT_FOUND","QUOTE_ATTACHMENT_UNSUPPORTED_ORDER_INDEX","LIBRARY_ATTACHMENT_UNSUPPORTED_ORDER_INDEX","PREFERENCE_ATTACHMENT_UNSUPPORTED_ORDER_INDEX","DUPLICATE_PREFERENCE_ATTACHMENT","QUOTE_ALREADY_OWNED","EXECUTION_VALIDATION","SHADOW_COMPANY_EXPECTED","CUSTOMER_COMPANY_EXPECTED","QUOTE_ACCESS_USERID_EXISTS"]}},"required":["message","type"]},"ErrorResponse":{"type":"object","properties":{"details":{"type":"array","items":{"$ref":"#/components/schemas/ErrorDetails"}},"instance":{"type":"string"},"message":{"type":"string"},"status":{"type":"integer","format":"int32"},"type":{"type":"string"}},"required":["details","instance","message","status","type"]},"InvoiceTotals":{"type":"object","properties":{"initialCost":{"$ref":"#/components/schemas/AmountCurrency"},"initialProfit":{"$ref":"#/components/schemas/AmountCurrency"},"initialTotal":{"$ref":"#/components/schemas/AmountCurrency"},"recurringCost":{"$ref":"#/components/schemas/AmountCurrency"},"recurringProfit":{"$ref":"#/components/schemas/AmountCurrency"},"recurringTotal":{"$ref":"#/components/schemas/AmountCurrency"}},"required":["initialCost","initialProfit","initialTotal","recurringCost","recurringProfit","recurringTotal"]},"LineItemRelationship":{"type":"object","properties":{"requiredLineItemId":{"type":"string","format":"uuid"},"requiredSubscriptionId":{"type":"string","format":"uuid"}}},"LineItemResponse":{"type":"object","properties":{"billingTerm":{"type":"string","enum":["Monthly","Annual","1 Year","2 Year","3 Year","Trial","Activation","One-Time"]},"commitmentTerm":{"$ref":"#/components/schemas/CommitmentTerm"},"cost":{"$ref":"#/components/schemas/AmountCurrency"},"effectiveDate":{"type":"string","format":"date-time"},"id":{"type":"string","format":"uuid"},"note":{"type":"string"},"price":{"$ref":"#/components/schemas/AmountCurrency"},"product":{"$ref":"#/components/schemas/Product"},"quantity":{"type":"integer","format":"int64"},"relationship":{"$ref":"#/components/schemas/LineItemRelationship"},"subscriptionId":{"type":"string","format":"uuid"},"totals":{"$ref":"#/components/schemas/InvoiceTotals"},"usageBased":{"$ref":"#/components/schemas/UsageBased"}},"required":["billingTerm","cost","effectiveDate","id","note","price","product","quantity","totals"]},"ListContent":{"allOf":[{"$ref":"#/components/schemas/ListQuotesViewV2"},{"type":"object","properties":{"client":{"$ref":"#/components/schemas/ClientDetails"},"createdBy":{"type":"string"},"createdOn":{"type":"string","format":"date-time"},"id":{"type":"string","format":"uuid"},"intentType":{"type":"string","enum":["PARTNER_TO_CLIENT","PAX8_TO_PARTNER","PAX8_TO_PARTNER_CLIENT"]},"lineItemCounts":{"$ref":"#/components/schemas/ListLineItemCounts"},"ownedBy":{"$ref":"#/components/schemas/OwnedByDetails"},"partner":{"$ref":"#/components/schemas/QuoteListPartnerDetails"},"published":{"type":"boolean"},"publishedOn":{"type":"string","format":"date-time"},"referenceCode":{"type":"string"},"status":{"type":"string","enum":["draft","assigned","sent","closed","declined","accepted","changes_requested","expired","pending"]},"totals":{"$ref":"#/components/schemas/ListTotals"},"updatedOn":{"type":"string","format":"date-time"}}}],"required":["client","createdBy","createdOn","id","lineItemCounts","published","referenceCode","status","totals","updatedOn"]},"ListLineItemCounts":{"type":"object","properties":{"custom":{"type":"integer","format":"int64"},"msp":{"type":"integer","format":"int64"},"total":{"type":"integer","format":"int64"}},"required":["custom","msp","total"]},"ListQuotesViewV2":{},"ListResponse":{"type":"object","properties":{"content":{"type":"array","items":{"$ref":"#/components/schemas/ListContent"}},"page":{"$ref":"#/components/schemas/PageInfo"},"statusCounts":{"$ref":"#/components/schemas/ListStatusCounts"}},"required":["content","page","statusCounts"]},"ListStatusCounts":{"type":"object","properties":{"accepted":{"type":"integer","format":"int32"},"closed":{"type":"integer","format":"int32"},"declined":{"type":"integer","format":"int32"},"draft":{"type":"integer","format":"int32"},"expired":{"type":"integer","format":"int32"},"pending":{"type":"integer","format":"int32"},"sent":{"type":"integer","format":"int32"}},"required":["accepted","closed","declined","draft","expired","sent"]},"ListTotals":{"type":"object","properties":{"initialTotal":{"$ref":"#/components/schemas/AmountCurrency"},"recurringTotal":{"$ref":"#/components/schemas/AmountCurrency"}},"required":["initialTotal","recurringTotal"]},"OwnedByDetails":{"type":"object","properties":{"email":{"type":"string"},"fullName":{"type":"string"},"id":{"type":"string","format":"uuid"},"role":{"type":"string"}},"required":["email","fullName","id","role"]},"PageInfo":{"type":"object","properties":{"number":{"type":"integer","format":"int32"},"size":{"type":"integer","format":"int32"},"totalElements":{"type":"integer","format":"int64"},"totalPages":{"type":"integer","format":"int32"}},"required":["number","size","totalElements","totalPages"]},"ParentPartnerDetails":{"type":"object","properties":{"parentPartnerId":{"type":"string","format":"uuid"},"parentPartnerName":{"type":"string"}},"required":["parentPartnerId","parentPartnerName"]},"PartnerDetails":{"type":"object","properties":{"city":{"type":"string"},"country":{"type":"string"},"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"parentPartner":{"$ref":"#/components/schemas/ParentPartnerDetails"},"postcode":{"type":"string"},"stateOrProvinceCode":{"type":"string"},"street":{"type":"string"},"street2":{"type":"string"}},"required":["city","id","name","postcode","stateOrProvinceCode","street"]},"PreferencesPayload":{"type":"object","properties":{"daysToExpire":{"type":"integer","format":"int32"},"introMessage":{"type":"string"},"salesMarginPercentage":{"type":"number","format":"double"},"termsAndDisclaimers":{"type":"string"}},"required":["daysToExpire","introMessage","termsAndDisclaimers"]},"PreferencesResponse":{"type":"object","properties":{"attachments":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}},"daysToExpire":{"type":"integer","format":"int32"},"introMessage":{"type":"string"},"salesMarginPercentage":{"type":"number","format":"double"},"termsAndDisclaimers":{"type":"string"}},"required":["attachments","daysToExpire","introMessage","salesMarginPercentage","termsAndDisclaimers"]},"Product":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"isMspOnly":{"type":"boolean"},"name":{"type":"string"},"sku":{"type":"string"},"type":{"type":"string","enum":["Standalone","Solution","Custom"]}},"required":["id","isMspOnly","name","sku","type"]},"QuoteListPartnerDetails":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"parentPartner":{"$ref":"#/components/schemas/ParentPartnerDetails"}},"required":["id","name"]},"QuotePreferencesResult":{"type":"object","properties":{"daysToExpire":{"type":"integer","format":"int32"},"introMessage":{"type":"string"},"salesMarginPercentage":{"type":"number","format":"double"},"termsAndDisclaimers":{"type":"string"}},"required":["daysToExpire","introMessage","salesMarginPercentage","termsAndDisclaimers"]},"QuoteResponse":{"type":"object","properties":{"acceptedBy":{"$ref":"#/components/schemas/RespondedBy"},"attachments":{"type":"array","items":{"$ref":"#/components/schemas/AttachmentResponse"}},"client":{"$ref":"#/components/schemas/ClientDetails"},"createdBy":{"type":"string"},"createdByEmail":{"type":"string"},"createdOn":{"type":"string","format":"date-time"},"declinedBy":{"$ref":"#/components/schemas/RespondedBy"},"expiresOn":{"type":"string","format":"date-time"},"id":{"type":"string","format":"uuid"},"intentType":{"type":"string","enum":["PARTNER_TO_CLIENT","PAX8_TO_PARTNER","PAX8_TO_PARTNER_CLIENT"]},"introMessage":{"type":"string"},"lineItems":{"$ref":"#/components/schemas/LineItemResponse"},"ownedBy":{"$ref":"#/components/schemas/UserModel"},"partner":{"$ref":"#/components/schemas/PartnerDetails"},"published":{"type":"boolean"},"publishedOn":{"type":"string","format":"date-time"},"quoteRequestId":{"type":"string","format":"uuid"},"referenceCode":{"type":"string"},"respondedOn":{"type":"string","format":"date-time"},"revokedOn":{"type":"string","format":"date-time"},"salesMarginPercentage":{"type":"number","format":"double"},"status":{"type":"string","enum":["draft","assigned","sent","closed","declined","accepted","changes_requested","expired","pending"]},"termsAndDisclaimers":{"type":"string"},"totals":{"$ref":"#/components/schemas/InvoiceTotals"}},"required":["attachments","client","createdBy","createdByEmail","createdOn","expiresOn","id","introMessage","lineItems","partner","published","referenceCode","status","termsAndDisclaimers","totals"]},"RespondedBy":{"type":"object","properties":{"email":{"type":"string"},"fullName":{"type":"string"},"ipAddress":{"type":"string"}},"required":["email","fullName"]},"Section":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"lineItems":{"type":"array","items":{"$ref":"#/components/schemas/SectionLineItem"}},"name":{"type":"string"},"order":{"type":"integer","format":"int32"}},"required":["id","lineItems","name","order"]},"SectionLineItem":{"type":"object","properties":{"lineItemId":{"type":"string","format":"uuid"},"order":{"type":"integer","format":"int32"}},"required":["lineItemId","order"]},"SectionPayload":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"lineItems":{"type":"array","items":{"$ref":"#/components/schemas/SectionLineItem"}},"name":{"type":"string"},"order":{"type":"integer","format":"int32"}},"required":["id","lineItems","name","order"]},"SectionsPayload":{"type":"object","properties":{"sections":{"type":"array","items":{"$ref":"#/components/schemas/SectionPayload"}}},"required":["sections"]},"SectionsResponse":{"type":"object","properties":{"sections":{"type":"array","items":{"$ref":"#/components/schemas/Section"}}},"required":["sections"]},"UpdateAttachmentPayload":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"order":{"type":"integer","format":"int32"}},"required":["id","name","order"]},"UpdateCustomLineItemPayload":{"allOf":[{"$ref":"#/components/schemas/UpdateLineItemBasePayload"},{"type":"object","properties":{"billingTerm":{"type":"string","enum":["Monthly","Annual","Trial","One-Time"]},"cost":{"type":"number","format":"double"},"initialTotal":{"type":"number","format":"double"},"productName":{"type":"string"},"productSku":{"type":"string"}}}],"required":["billingTerm","cost","effectiveDate","id","initialTotal","price","productName","quantity","type"]},"UpdateLineItemBasePayload":{"type":"object","discriminator":{"propertyName":"type"},"properties":{"effectiveDate":{"type":"string","format":"date-time"},"id":{"type":"string","format":"uuid"},"note":{"type":"string"},"price":{"type":"number","format":"double"},"quantity":{"type":"integer","format":"int32"},"type":{"type":"string","description":"Type of line item","enum":["Standard","Custom","UsageBased"]}},"required":["effectiveDate","id","price","quantity","type"]},"UpdateQuotePayload":{"type":"object","properties":{"expiresOn":{"type":"string","format":"date-time"},"introMessage":{"type":"string"},"published":{"type":"boolean"},"status":{"type":"string","enum":["draft","assigned","sent","closed","declined","accepted","changes_requested","expired","pending"]},"termsAndDisclaimers":{"type":"string"}},"required":["expiresOn","introMessage","published","status","termsAndDisclaimers"]},"UpdateStandardLineItemPayload":{"allOf":[{"$ref":"#/components/schemas/UpdateLineItemBasePayload"},{"type":"object","properties":{"billingTerm":{"type":"string","enum":["Monthly","Annual","1 Year","2 Year","3 Year","Trial","Activation","One-Time"]},"commitmentTermId":{"type":"string","format":"uuid"}}}],"required":["billingTerm","effectiveDate","id","price","quantity","type"]},"UpdateUsageBasedLineItemPayload":{"allOf":[{"$ref":"#/components/schemas/UpdateLineItemBasePayload"},{"type":"object","properties":{"billingTerm":{"type":"string","enum":["Monthly","Annual","1 Year","2 Year","3 Year","Trial","Activation","One-Time"]},"commitmentTermId":{"type":"string","format":"uuid"},"cost":{"type":"number","format":"double"},"usageBased":{"$ref":"#/components/schemas/UsageBased"}}}],"required":["billingTerm","cost","effectiveDate","id","price","quantity","type","usageBased"]},"UsageBased":{"type":"object","properties":{"displayNote":{"type":"boolean"},"type":{"type":"string","enum":["PRICE_FLAT","PRICE_VARIES","QTY_VARIES"]}},"required":["displayNote","type"]},"UserModel":{"type":"object","properties":{"displayName":{"type":"string"},"email":{"type":"string"},"fullName":{"type":"string"},"id":{"type":"string","format":"uuid"},"ipAddress":{"type":"string"},"quoteAcceptedByName":{"type":"string"},"userRole":{"type":"string"}},"required":["displayName","email","fullName","id"]}},"securitySchemes":{"bearerAuth":{"bearerFormat":"JWT","scheme":"bearer","type":"http"}}},"x-readme":{"explorer-enabled":true,"proxy-enabled":true}}