Solvimon quotes API
The quotes API from Solvimon — 5 operation(s) for quotes.
The quotes API from Solvimon — 5 operation(s) for quotes.
openapi: 3.1.0
info:
title: Configuration alertRules quotes 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: quotes
paths:
/v{version}/quotes:
get:
operationId: getQuotes
summary: Get a list of all quotes
description: Requires the QUOTE.VIEW permission.
tags:
- quotes
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: customer_id
in: query
description: Filter based of customer resource ID
required: false
schema:
type: string
- name: status
in: query
description: Filter invoices based on quote status
required: false
schema:
type: string
- name: owner_user_id
in: query
description: Filter based on owner resource ID
required: false
schema:
type: string
- name: custom_field
in: query
description: Filter based on custom field value in the format 'reference:value'
required: false
schema:
type: string
- name: limit
in: query
description: The amount of records shown in the list
required: false
schema:
type: integer
- name: page
in: query
description: The page which is going to be shown
required: false
schema:
type: integer
- name: order_by
in: query
description: The parameter by which the response is ordered.
required: false
schema:
type: string
- name: order_direction
in: query
description: The order direction by which the response is ordered.
required: false
schema:
type: string
- 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/QuotesResponseWrapper'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
post:
operationId: postQuotes
summary: Create a quote
description: Requires the QUOTE.CREATE permission.
tags:
- quotes
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/Quote'
'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'
'404':
description: Not Found
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/QuoteCreateRequest'
/v{version}/quotes/init:
post:
operationId: postQuotesInit
summary: Create a quote pricing plan subscription together with a pricing plan schedule
description: Requires the QUOTE.CREATE permission.
tags:
- quotes
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/QuoteInitAction'
'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'
'404':
description: Not Found
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/QuoteInitActionCreateRequest'
/v{version}/quotes/upgrade:
post:
operationId: postQuotesUpgrade
summary: Create a quote based on an existing subscription together with a pricing plan schedule
description: Requires the QUOTE.CREATE permission.
tags:
- quotes
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/QuoteUpgradeActionResponse'
'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'
'404':
description: Not Found
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/QuoteUpgradeActionRequestCreateRequest'
/v{version}/quotes/approval-requests:
get:
operationId: getQuotesApprovalRequests
summary: Get quotes that require approval review by the logged in user
description: Requires the QUOTE.VIEW permission.
tags:
- quotes
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: expand[]
in: query
description: The fields that should be expanded to have the full data along with the id.
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/GetQuotesList'
'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'
/v{version}/quotes/{resourceId}:
get:
operationId: getQuotesByResourceId
summary: Get a quote by resource ID
description: Requires the QUOTE.VIEW permission.
tags:
- quotes
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/Quote'
'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'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
delete:
operationId: deleteQuotesByResourceId
summary: Delete a quote
description: Requires the QUOTE.DELETE permission.
tags:
- quotes
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/Quote'
'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: patchQuotesByResourceId
summary: Update a quote
description: Requires the QUOTE.UPDATE permission.
tags:
- quotes
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: field_actions
in: query
description: The list of actions for specific fields.
required: false
schema:
type: object
additionalProperties:
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/Quote'
'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/QuoteUpdateRequest'
components:
schemas:
EInvoicingMapping:
type: object
properties:
target:
type: string
description: The target field for a UBL Invoice
source:
type:
- string
- 'null'
description: The source field from a Solvimon Invoice
description:
type:
- string
- 'null'
description: Optional description for the mapping
title: EInvoicingMapping
SignatureRequestQuoteVersion:
type: object
properties:
quote_version_id:
type:
- string
- 'null'
description: The ID of the quote version this signature request belongs to.
title: SignatureRequestQuoteVersion
PricingPlanVersionSelectorType:
type: string
enum:
- LATEST
- VERSION
description: The type of the selector to determine pricing plan version (by default LATEST).
title: PricingPlanVersionSelectorType
WalletTypeCreditAmountGrantTaxCategory:
type: string
enum:
- STANDARD
- NO_TAX
- EXEMPT
description: The tax category to for what the wallet can be applied to.
title: WalletTypeCreditAmountGrantTaxCategory
QuoteUpgradeActionResponse:
type: object
properties:
quote:
oneOf:
- $ref: '#/components/schemas/Quote'
- type: 'null'
quote_version:
oneOf:
- $ref: '#/components/schemas/QuoteVersion'
- type: 'null'
pricing_plan_subscription:
oneOf:
- $ref: '#/components/schemas/PricingPlanSubscription'
- type: 'null'
title: QuoteUpgradeActionResponse
QuoteInitActionQuote:
type: object
properties:
id:
type:
- string
- 'null'
customer_id:
type: string
description: Resource ID of type CUSTOMER
owner_user_id:
type: string
description: Resource ID of type USER
custom_fields:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CustomFieldValue'
title: QuoteInitActionQuote
EInvoiceFileFormat:
type: object
properties:
type:
type:
- string
- 'null'
description: The format of the eInvoice that can be downloaded
description:
type:
- string
- 'null'
title: EInvoiceFileFormat
ProductStatus:
type: string
enum:
- DRAFT
- ACTIVE
- ARCHIVED
- DEPRECATED
description: The status of the product.
title: ProductStatus
BigQuery:
type: object
properties:
project_id:
type: string
dataset_id:
type: string
dataset_location:
type: string
gcs_bucket_name:
type: string
gcs_hmac_key_access_id:
type: string
gcs_hmac_key_secret:
type: string
title: BigQuery
PricingPlanSubscriptionSelector:
type: object
properties:
data:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/PricingPlanSubscriptionSelectorData'
rules:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/PricingPlanSubscriptionSelectorRule'
filters:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/PricingPlanSubscriptionSelectorFilter'
fallback:
oneOf:
- $ref: '#/components/schemas/PricingPlanSubscriptionSelectorFallback'
- type: 'null'
description: The fallback logic what to do when no subscription is found. By default it is LATEST
title: PricingPlanSubscriptionSelector
LegalEntityManagerDetails:
type: object
properties:
authentication:
$ref: '#/components/schemas/AuthenticationSettings'
title: LegalEntityManagerDetails
QuoteUpgradeActionRequestCreateRequest:
type: object
properties:
quote:
$ref: '#/components/schemas/QuoteUpgradeActionRequestQuoteCreateRequest'
pricing_plan_subscription:
$ref: '#/components/schemas/QuoteUpgradeActionRequestPricingPlanSubscriptionCreateRequest'
pricing_plan_schedule:
$ref: '#/components/schemas/QuoteUpgradeActionRequestPricingPlanScheduleCreateRequest'
title: QuoteUpgradeActionRequestCreateRequest
CustomerSellerDetailsUpdateRequest:
type: object
properties:
default_billing_entity_id:
type:
- string
- 'null'
description: Resource ID of type BILLING_ENTITY
title: CustomerSellerDetailsUpdateRequest
CreditType:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
status:
oneOf:
- $ref: '#/components/schemas/CreditTypeStatus'
- type: 'null'
name:
type: string
description:
type:
- string
- 'null'
unit_name:
$ref: '#/components/schemas/UnitName'
created_at:
type:
- string
- 'null'
updated_at:
type:
- string
- 'null'
title: CreditType
BillingEntityDefaultBillingCurrencySelectorItems:
type: string
enum:
- AED
- AFN
- ALL
- AMD
- ANG
- AOA
- ARS
- AUD
- AWG
- AZN
- BAM
- BBD
- BDT
- BGN
- BHD
- BIF
- BMD
- BND
- BOB
- BRL
- BSD
- BTN
- BWP
- BYN
- BZD
- CAD
- CDF
- CHF
- CLF
- CLP
- CNY
- COP
- CRC
- CUC
- CUP
- CVE
- CZK
- DJF
- DKK
- DOP
- DZD
- EGP
- ERN
- ETB
- EUR
- FJD
- FKP
- GBP
- GEL
- GHS
- GIP
- GMD
- GNF
- GTQ
- GYD
- HKD
- HNL
- HRK
- HTG
- HUF
- IDR
- ILS
- INR
- IQD
- IRR
- ISK
- JMD
- JOD
- JPY
- KES
- KGS
- KHR
- KMF
- KPW
- KRW
- KWD
- KYD
- KZT
- LAK
- LBP
- LKR
- LRD
- LSL
- LYD
- MAD
- MDL
- MGA
- MKD
- MMK
- MNT
- MOP
- MRO
- MRU
- MUR
- MVR
- MWK
- MXN
- MXV
- MYR
- MZN
- NAD
- NGN
- NIO
- NOK
- NPR
- NZD
- OMR
- PAB
- PEN
- PGK
- PHP
- PKR
- PLN
- PYG
- QAR
- RON
- RSD
- RUB
- RWF
- SAR
- SBD
- SCR
- SDG
- SEK
- SGD
- SHP
- SLE
- SOS
- SRD
- SSP
- STN
- SVC
- SYP
- SZL
- THB
- TJS
- TMT
- TND
- TOP
- TRY
- TTD
- TWD
- TZS
- UAH
- UGX
- USD
- USN
- UYI
- UYU
- UZS
- VEF
- VES
- VND
- VUV
- WST
- XAF
- XAG
- XAU
- XBA
- XBB
- XBC
- XBD
- XCD
- XDR
- XOF
- XPD
- XPF
- XPT
- XSU
- XTS
- XUA
- XXX
- YER
- ZAR
- ZMW
- ZWL
title: BillingEntityDefaultBillingCurrencySelectorItems
SignatureRequestType:
type: string
enum:
- QUOTE_VERSION
description: The type of the signature request.
title: SignatureRequestType
CustomerUpdateRequestRolesItems:
type: string
enum:
- DEFAULT
- NON_PROCESSING
- SELF_BILLING
- SELLER
- PROCESSING_ONLY
title: CustomerUpdateRequestRolesItems
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
AccountMembershipRepresentation:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
description: The id of this account membership
account_id:
type: string
description: The id of the account that this membership is for
account_reference:
type:
- string
- 'null'
description: The reference of the account that this membership is for
environment:
type:
- string
- 'null'
description: The environment that this membership is for
account:
oneOf:
- $ref: '#/components/schemas/AccountRepresentation'
- type: 'null'
description: The account that this membership is for
type:
$ref: '#/components/schemas/AccountMembershipRepresentationType'
description: The type of this membership
role_ids:
type: array
items:
type: string
description: The roles assigned through this membership
roles:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Role'
description: The roles that belong to this membership
title: AccountMembershipRepresentation
MailgunEmailProviderRegion:
type: string
enum:
- US
- EU
description: Mailgun region for the configured domain.
title: MailgunEmailProviderRegion
UserStatus:
type: string
enum:
- INVITED
- INVITE_REVOKED
- ACTIVE
- INACTIVE
description: Indicates whether the user is active
title: UserStatus
MeterValueCalculationCommitment:
type: object
properties:
number:
type:
- string
- 'null'
description: The minimum number of events that are to be invoiced.
amount:
$ref: '#/components/schemas/Amount'
description: The minimum amount to be invoiced.
title: MeterValueCalculationCommitment
ClientCredentials:
type: object
properties:
client_id:
type: string
client_secret:
type: string
title: ClientCredentials
CustomerUpdateRequestType:
type: string
enum:
- ORGANIZATION
- INDIVIDUAL
description: The type of customer entity.
title: CustomerUpdateRequestType
TotalDiscount:
type: object
properties:
start_at:
type:
- string
- 'null'
end_at:
type:
- string
- 'null'
amount:
$ref: '#/components/schemas/Amount'
percentage:
type:
- string
- 'null'
coupon_id:
type:
- string
- 'null'
description: Resource ID of type COUPON
promotion_code_details:
oneOf:
- $ref: '#/components/schemas/PromotionCodeDetails'
- type: 'null'
condition:
$ref: '#/components/schemas/DiscountCondition'
title: TotalDiscount
PricingPlanSubscriptionSelectorRuleField:
type: string
enum:
- BILLING_ENTITY_REGISTERED_ADDRESS_COUNTRY
- PRICING_PLAN_REFERENCE
title: PricingPlanSubscriptionSelectorRuleField
NotificationPreferenceUpdateRequestType:
type: string
enum:
- INVOICE
description: The notification type to configure.
title: NotificationPreferenceUpdateRequestType
WalletType:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
name:
type: string
reference:
type: string
status:
oneOf:
- $ref: '#/components/schemas/WalletTypeStatus'
- type: 'null'
type:
oneOf:
- $ref: '#/components/schemas/WalletTypeType'
- type: 'null'
credit:
$ref: '#/components/schemas/WalletTypeCredit'
balance:
$ref: '#/components/schemas/WalletTypeBalance'
created_at:
type:
- string
- 'null'
updated_at:
type:
- string
- 'null'
title: WalletType
CustomerCreateRequestStatus:
type: string
enum:
- DRAFT
- ACTIVE
- ARCHIVED
- DEPRECATED
- CLOSED
title: CustomerCreateRequestStatus
CustomerType:
type: string
enum:
- ORGANIZATION
- INDIVIDUAL
description: The type of customer entity.
title: CustomerType
InactivePeriodType:
type: string
enum:
- CANCEL
- UPGRADE
title: InactivePeriodType
CustomerRolesItems:
type: string
enum:
- DEFAULT
- NON_PROCESSING
- SELF_BILLING
- SELLER
- PROCESSING_ONLY
title: CustomerRolesItems
RoleChildRolesItems:
type: object
properties: {}
title: RoleChildRolesItems
IntegrationDetailsPaymentGatewayVariant:
type: string
enum:
- ADYEN
- STRIPE
title: IntegrationDetailsPaymentGatewayVariant
MeterProperty:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
name:
type:
- string
- 'null'
description:
type:
- string
- 'null'
status:
$ref: '#/components/schemas/MeterPropertyStatus'
description: The status of the meter property indicating the activity and the ability to update properties.
type:
oneOf:
- $ref: '#/components/schemas/MeterPropertyType'
- type: 'null'
description: The type of the meter property.
enum_values:
type:
- array
- 'null'
items:
type: string
description: The list of available ENUM values.
title: MeterProperty
Meter:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
name:
type:
- string
- 'null'
description:
type:
- string
- 'null'
status:
oneOf:
- $ref: '#/components/schemas/MeterStatus'
- type: 'null'
description: The status of the meter indicating the activity of the meter and the ability to update properties.
meter_values:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/MeterMeterValue'
description: The values used as input to calculate billable units, used in the meter.
meter_properties:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/MeterMeterProperty'
description: The properties that provide information to give context to an event, used in the meter
# --- truncated at 32 KB (230 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/solvimon/refs/heads/main/openapi/solvimon-quotes-api-openapi.yml