Solvimon quoteVersions API
The quoteVersions API from Solvimon — 9 operation(s) for quoteversions.
The quoteVersions API from Solvimon — 9 operation(s) for quoteversions.
openapi: 3.1.0
info:
title: Configuration alertRules quoteVersions API
version: 1.0.0
servers:
- url: https://test.api.solvimon.com
description: The TEST environment for our API
- url: https://api.solvimon.com
description: The live environment for our API
tags:
- name: quoteVersions
paths:
/v{version}/quote-versions:
get:
operationId: getQuoteVersions
summary: Get a list of all quote versions
description: Requires the QUOTE.VIEW permission.
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: quote_id
in: query
description: Filter based of quote resource ID
required: true
schema:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersionResponseWrapper'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
post:
operationId: postQuoteVersions
summary: Create a quote version
description: Requires the QUOTE.CREATE permission.
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersionCreateRequest'
/v{version}/quote-versions/{resourceId}:
get:
operationId: getQuoteVersionsByResourceId
summary: Get a quote version by resource ID
description: Requires the QUOTE.VIEW permission.
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: expand[]
in: query
description: The id fields of the resources that are going to be expanded.
required: false
schema:
type: array
items:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
delete:
operationId: deleteQuoteVersionsByResourceId
summary: Delete a quote version
description: Requires the QUOTE.DELETE permission.
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
patch:
operationId: patchQuoteVersionsByResourceId
summary: Update a quote version
description: Requires the QUOTE.UPDATE permission.
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersionUpdateRequest'
/v{version}/quote-versions/{resourceId}/pdf:
get:
operationId: getQuoteVersionsByResourceIdPdf
summary: Get the quote version as PDF
description: Requires the QUOTE.VIEW permission.
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/octet-stream:
schema:
type: string
format: binary
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
/v{version}/quote-versions/{resourceId}/finalize:
post:
operationId: postQuoteVersionsByResourceIdFinalize
summary: Finalize the quote version
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
/v{version}/quote-versions/{resourceId}/send:
post:
operationId: postQuoteVersionsByResourceIdSend
summary: Send the quote version
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersionActionSendCreateRequest'
/v{version}/quote-versions/{resourceId}/accept:
post:
operationId: postQuoteVersionsByResourceIdAccept
summary: Accept the quote version
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersionActionAcceptCreateRequest'
/v{version}/quote-versions/{resourceId}/reject:
post:
operationId: postQuoteVersionsByResourceIdReject
summary: Reject the quote version
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersionActionRejectCreateRequest'
/v{version}/quote-versions/{resourceId}/request-signature:
post:
operationId: postQuoteVersionsByResourceIdRequestSignature
summary: Request signature for the quote version
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersionActionRequestSignatureBodyCreateRequest'
/v{version}/quote-versions/{resourceId}/create-subscription:
post:
operationId: postQuoteVersionsByResourceIdCreateSubscription
summary: Create the subscription based on a approved quote version
tags:
- quoteVersions
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersion'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QuoteVersionActionCreateSubscriptionCreateRequest'
components:
schemas:
SignatureRequestQuoteVersion:
type: object
properties:
quote_version_id:
type:
- string
- 'null'
description: The ID of the quote version this signature request belongs to.
title: SignatureRequestQuoteVersion
QuoteVersionRecipientDataUpdateRequestRole:
type: string
enum:
- SIGNER
- VIEWER
description: The role of the recipient.
title: QuoteVersionRecipientDataUpdateRequestRole
QuoteVersionActionAcceptCreateRequest:
type: object
properties:
name:
$ref: '#/components/schemas/NameCreateRequest'
description: The name of the accepter
role:
type:
- string
- 'null'
description: The role of the accepter
title: QuoteVersionActionAcceptCreateRequest
QuoteVersionActionCreateSubscriptionCreateRequest:
type: object
properties:
pricing_plan_subscription_id:
type:
- string
- 'null'
description: The create pricing plan subscription based on the quote version
title: QuoteVersionActionCreateSubscriptionCreateRequest
QuoteVersionAction:
type: object
properties:
created_at:
type:
- string
- 'null'
type:
type:
- string
- 'null'
status:
type:
- string
- 'null'
send:
oneOf:
- $ref: '#/components/schemas/QuoteVersionActionSend'
- type: 'null'
accept:
oneOf:
- $ref: '#/components/schemas/QuoteVersionActionAccept'
- type: 'null'
reject:
oneOf:
- $ref: '#/components/schemas/QuoteVersionActionReject'
- type: 'null'
create_subscription:
oneOf:
- $ref: '#/components/schemas/QuoteVersionActionCreateSubscription'
- type: 'null'
request_signature:
oneOf:
- $ref: '#/components/schemas/QuoteVersionActionRequestSignature'
- type: 'null'
sign:
oneOf:
- $ref: '#/components/schemas/QuoteVersionActionSign'
- type: 'null'
title: QuoteVersionAction
QuoteVersionContentUpdateRequestType:
type: string
enum:
- DEFAULT
- TIPTAP
description: The type of content used by the quote version.
title: QuoteVersionContentUpdateRequestType
LinkedIntegration:
type: object
properties:
id:
type: string
link_details:
type: array
items:
$ref: '#/components/schemas/LinkDetail'
title: LinkedIntegration
IntegrationDetails:
type: object
properties:
id:
type:
- string
- 'null'
reference:
type:
- string
- 'null'
payment_gateway_variant:
$ref: '#/components/schemas/IntegrationDetailsPaymentGatewayVariant'
adyen:
$ref: '#/components/schemas/AdyenIntegrationDetails'
stripe:
$ref: '#/components/schemas/StripeIntegrationDetails'
title: IntegrationDetails
QuoteVersionStatus:
type: string
enum:
- DRAFT
- FINAL
- WAITING_APPROVAL
- APPROVED
- DECLINED
- SEND
- SIGNATURE_REQUESTED
- SIGNED
- ACCEPTED
- REJECTED
- CLOSED
title: QuoteVersionStatus
PortalUrlLink:
type: object
properties:
expiry_period:
$ref: '#/components/schemas/Period'
portal_url_id:
type:
- string
- 'null'
url:
type:
- string
- 'null'
title: PortalUrlLink
ApiErrorType:
type: string
enum:
- API_ERROR
- INVALID_REQUEST
title: ApiErrorType
Contact:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
description: A custom reference assigned to the contact.
customer_id:
type: string
description: The ID of the customer.
name:
$ref: '#/components/schemas/Name'
description: A custom name assigned to the contact.
email:
type: string
description: The email of the contact.
notification_preferences:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/NotificationPreference'
description: Notification preferences for contact-related communications.
custom_fields:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CustomFieldValue'
linked_integrations:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/LinkedIntegration'
title: Contact
ApiError:
type: object
properties:
type:
$ref: '#/components/schemas/ApiErrorType'
code:
$ref: '#/components/schemas/ApiErrorCode'
field:
type:
- string
- 'null'
message:
type: string
resource_id:
type:
- string
- 'null'
resource_type:
oneOf:
- $ref: '#/components/schemas/ApiErrorResourceType'
- type: 'null'
required:
- type
- code
- message
title: ApiError
SignatureRequestRecipientData:
type: object
properties:
id:
type:
- string
- 'null'
description: The unique identifier of this recipient.
contact_id:
type:
- string
- 'null'
description: The contact ID, present when the recipient originates from a contact.
name:
oneOf:
- $ref: '#/components/schemas/Name'
- type: 'null'
description: The name of the recipient.
email:
type:
- string
- 'null'
description: The email of the recipient.
role:
oneOf:
- $ref: '#/components/schemas/SignatureRequestRecipientDataRole'
- type: 'null'
description: The role of the recipient.
status:
oneOf:
- $ref: '#/components/schemas/SignatureRequestRecipientDataStatus'
- type: 'null'
description: The status of the recipient.
title: SignatureRequestRecipientData
QuoteVersionDefaultContent:
type: object
properties:
header:
type:
- string
- 'null'
description: Text shown above the pricing plan.
footer:
type:
- string
- 'null'
description: Text shown below the pricing plan.
title: QuoteVersionDefaultContent
PricingPlanSubscriptionInfo:
type: object
properties:
id:
type:
- string
- 'null'
upgraded_from_pricing_plan_subscription_id:
type:
- string
- 'null'
title: PricingPlanSubscriptionInfo
QuoteVersionRecipientDataUpdateRequestType:
type: string
enum:
- CONTACT
- DETAILS
description: The type of the recipient.
title: QuoteVersionRecipientDataUpdateRequestType
QuoteVersionResponseWrapper:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/QuoteVersion'
page:
type:
- integer
- 'null'
limit:
type:
- integer
- 'null'
total_number_of_pages:
type:
- integer
- 'null'
links:
$ref: '#/components/schemas/PaginationLinks'
required:
- data
title: QuoteVersionResponseWrapper
SignatureRequestType:
type: string
enum:
- QUOTE_VERSION
description: The type of the signature request.
title: SignatureRequestType
QuoteVersionRecipientDataType:
type: string
enum:
- CONTACT
- DETAILS
description: The type of the recipient.
title: QuoteVersionRecipientDataType
QuoteVersionActionReject:
type: object
properties:
name:
$ref: '#/components/schemas/Name'
description: The name of the rejecter
role:
type:
- string
- 'null'
description: The role of the rejecter
reason:
type:
- string
- 'null'
description: The reason of the rejection
title: QuoteVersionActionReject
QuoteVersionInvoicesInfoUpdateRequest:
type: object
properties:
first_invoice_summary:
oneOf:
- $ref: '#/components/schemas/InvoiceTaxTotalSummary'
- type: 'null'
description: Base, tax, and total costs on the first invoice generated by quote version.
title: QuoteVersionInvoicesInfoUpdateRequest
QuoteVersionActionUpdateRequest:
type: object
properties:
created_at:
type:
- string
- 'null'
type:
type:
- string
- 'null'
status:
type:
- string
- 'null'
send:
oneOf:
- $ref: '#/components/schemas/QuoteVersionActionSend'
- type: 'null'
# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/solvimon/refs/heads/main/openapi/solvimon-quoteversions-api-openapi.yml