{ "openapi" : "3.0.1", "info" : { "title" : "Commerce Contracts", "description" : "Basepom for all HubSpot Projects", "version" : "2026-09-beta", "x-hubspot-product-tier-requirements" : { "marketing" : "FREE", "sales" : "FREE", "service" : "FREE", "cms" : "FREE", "commerce" : "FREE", "crmHub" : "FREE", "dataHub" : "FREE" } }, "servers" : [ { "url" : "https://api.hubapi.com" } ], "tags" : [ { "name" : "Basic" }, { "name" : "Changes" } ], "paths" : { "/commerce/contracts/2026-09-beta/changes/{changeId}" : { "get" : { "tags" : [ "Changes" ], "summary" : "Retrieve change", "description" : "Retrieve details of a specific contract change using the change ID. The response includes the change status and description of its line item changes.", "operationId" : "get-/commerce/contracts/2026-09-beta/changes/{changeId}", "parameters" : [ { "name" : "changeId", "in" : "path", "description" : "The unique identifier of the contract change to retrieve.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractChangeResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "contracts-read" ] } ] }, "patch" : { "tags" : [ "Basic" ], "summary" : "Update change", "description" : "Update a specific contract change in your HubSpot account. This allows you to update the name, change effective date, and line item changes.", "operationId" : "patch-/commerce/contracts/2026-09-beta/changes/{changeId}", "parameters" : [ { "name" : "changeId", "in" : "path", "description" : "The unique identifier of the contract change to update.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractChangeUpdateRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractChangeResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "revenue-contracts-public-api-write" ] } ] } }, "/commerce/contracts/2026-09-beta/changes/{changeId}/accept" : { "post" : { "tags" : [ "Changes" ], "summary" : "Accept Change", "description" : "Accept a specific direct change identified by the changeId. This will apply the change to the target Contract, and return the updated change description with ACCEPTED status. Only direct changes may be accepted through this endpoint.", "operationId" : "post-/commerce/contracts/2026-09-beta/changes/{changeId}/accept", "parameters" : [ { "name" : "changeId", "in" : "path", "description" : "The unique identifier of the contract change to accept.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractChangeResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "revenue-contracts-public-api-write" ] } ] } }, "/commerce/contracts/2026-09-beta/changes/{changeId}/cancel" : { "post" : { "tags" : [ "Changes" ], "summary" : "Cancel change", "description" : "Cancel a specific contract change identified by its changeId. On successful cancellation the updated change is returned with CANCELED status.", "operationId" : "post-/commerce/contracts/2026-09-beta/changes/{changeId}/cancel", "parameters" : [ { "name" : "changeId", "in" : "path", "description" : "The unique identifier of the contract change to cancel.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractChangeResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "revenue-contracts-public-api-write" ] } ] } }, "/commerce/contracts/2026-09-beta/contracts" : { "post" : { "tags" : [ "Basic" ], "summary" : "Create contract", "description" : "Create a new contract in your HubSpot account using the Commerce Contracts API. This operation requires a request body with necessary contract details, including line items, billing information, and seller details. The contract will be created with the specified properties and a URL to the newly created resource will be provided in the response.", "operationId" : "post-/commerce/contracts/2026-09-beta/contracts", "parameters" : [ ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractCreateRequest" }, "example" : null } }, "required" : true }, "responses" : { "201" : { "description" : "successful operation", "headers" : { "Location" : { "description" : "URL of the newly created resource", "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "revenue-contracts-public-api-write" ] } ] } }, "/commerce/contracts/2026-09-beta/contracts/{contractId}" : { "get" : { "tags" : [ "Basic" ], "summary" : "Retrieve contract", "description" : "Retrieve the details of a specific contract using its unique identifier. The response includes comprehensive information about a contract, including its status, line items, and associated metadata.", "operationId" : "get-/commerce/contracts/2026-09-beta/contracts/{contractId}", "parameters" : [ { "name" : "contractId", "in" : "path", "description" : "The unique identifier of the contract to retrieve.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "contracts-read" ] } ] }, "patch" : { "tags" : [ "Basic" ], "summary" : "Update contract", "description" : "Update properties and associations of an existing contract in your HubSpot account using the specified contract ID. This endpoint allows you to modify contract details such as name, billing information, seller information, automated tax enablement, and more.", "operationId" : "patch-/commerce/contracts/2026-09-beta/contracts/{contractId}", "parameters" : [ { "name" : "contractId", "in" : "path", "description" : "The unique identifier of the contract to update.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractEditRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "revenue-contracts-public-api-write" ] } ] } }, "/commerce/contracts/2026-09-beta/contracts/{contractId}/changes" : { "get" : { "tags" : [ "Changes" ], "summary" : "Retrieve changes", "description" : "Retrieve the list of changes associated with a specific contract. This includes complete information about changes made against the contract, including draft, canceled and accepted changes.", "operationId" : "get-/commerce/contracts/2026-09-beta/contracts/{contractId}/changes", "parameters" : [ { "name" : "contractId", "in" : "path", "description" : "The unique identifier of the contract for which changes are being retrieved.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractChangesResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "contracts-read" ] } ] }, "post" : { "tags" : [ "Changes" ], "summary" : "Create change", "description" : "Create a new change for a specific contract in your HubSpot account. These changes are used to alter line items on the contract from a specific change effective date. Two change types are supported: QUOTE changes result are controlled by Change Quotes, and DIRECT changes are controlled directly.", "operationId" : "post-/commerce/contracts/2026-09-beta/contracts/{contractId}/changes", "parameters" : [ { "name" : "contractId", "in" : "path", "description" : "The unique identifier of the contract for which the change is being created.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractChangeCreateRequest" }, "example" : null } }, "required" : true }, "responses" : { "201" : { "description" : "successful operation", "headers" : { "Location" : { "description" : "URL of the newly created resource", "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractChangeResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "revenue-contracts-public-api-write" ] } ] } }, "/commerce/contracts/2026-09-beta/contracts/{contractId}/renewal-quotes" : { "post" : { "tags" : [ "Changes" ], "summary" : "Create renewal quote", "description" : "Create a renewal quote for a specific contract in your HubSpot account. Includes specification of contract and quote template. The response includes a URL to the newly created resource.", "operationId" : "post-/commerce/contracts/2026-09-beta/contracts/{contractId}/renewal-quotes", "parameters" : [ { "name" : "contractId", "in" : "path", "description" : "The unique identifier of the contract for which the renewal quote is being created.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/CreateRenewalQuoteRequest" }, "example" : null } }, "required" : true }, "responses" : { "201" : { "description" : "successful operation", "headers" : { "Location" : { "description" : "URL of the newly created resource", "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/QuoteResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "revenue-contracts-public-api-write" ] } ] } }, "/commerce/contracts/2026-09-beta/contracts/{contractId}/terminate" : { "post" : { "tags" : [ "Basic" ], "summary" : "Terminate contract", "description" : "Schedule termination for an existing contract in your HubSpot account. This operation requires specifying the contract ID and a termination date. It may be called again to alter the scheduled termination date.", "operationId" : "post-/commerce/contracts/2026-09-beta/contracts/{contractId}/terminate", "parameters" : [ { "name" : "contractId", "in" : "path", "description" : "The unique identifier of the contract to terminate.", "required" : true, "style" : "simple", "explode" : false, "schema" : { "type" : "string", "example" : null } } ], "requestBody" : { "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractTerminateRequest" }, "example" : null } }, "required" : true }, "responses" : { "200" : { "description" : "successful operation", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/ContractResponse" }, "example" : null } } }, "default" : { "description" : "", "$ref" : "#/components/responses/Error" } }, "security" : [ { "oauth2" : [ "revenue-contracts-public-api-write" ] } ] } } }, "components" : { "schemas" : { "Address" : { "type" : "object", "properties" : { "address" : { "type" : "string", "description" : "The primary street address.", "example" : null }, "address2" : { "type" : "string", "description" : "Additional street address.", "example" : null }, "city" : { "type" : "string", "description" : "The city of the address.", "example" : null }, "country" : { "type" : "string", "description" : "The country of the address.", "example" : null }, "countryCode" : { "type" : "string", "example" : null }, "state" : { "type" : "string", "description" : "The state or region of the address.", "example" : null }, "zip" : { "type" : "string", "description" : "The postal or zip code of the address.", "example" : null } }, "example" : null }, "ContractChangeCreateRequest" : { "properties" : { }, "example" : null, "oneOf" : [ { "$ref" : "#/components/schemas/DirectContractChangeCreateRequest" }, { "$ref" : "#/components/schemas/QuoteContractChangeCreateRequest" } ] }, "ContractChangeResponse" : { "required" : [ "contractId", "id", "lineItemChanges", "prorating", "status", "type" ], "type" : "object", "properties" : { "contractId" : { "type" : "string", "description" : "The unique identifier of the contract associated with this change.", "example" : null }, "createdAt" : { "type" : "string", "description" : "The date and time when this contract change was created.", "format" : "date-time", "example" : null }, "effectiveDate" : { "type" : "string", "description" : "The date when the contract change becomes effective.", "format" : "date", "example" : null }, "id" : { "type" : "string", "description" : "The unique identifier for this contract change.", "example" : null }, "lineItemChanges" : { "type" : "array", "description" : "An array of changes to line items associated with this contract change.", "example" : null, "items" : { "$ref" : "#/components/schemas/LineItemChangeResponse" } }, "name" : { "type" : "string", "description" : "The name of the contract change.", "example" : null }, "prorating" : { "type" : "boolean", "description" : "A boolean indicating whether the contract change involves prorating.", "example" : null }, "quoteId" : { "type" : "string", "description" : "The unique identifier of the quote associated with this contract change, if applicable.", "example" : null }, "status" : { "type" : "string", "description" : "The current status of the contract change. Valid values include 'DRAFT', 'PROPOSED', 'ACCEPTED', 'CANCELED', 'FAILED', and 'EXPIRED'.", "example" : null, "enum" : [ "ACCEPTED", "CANCELED", "DRAFT", "EXPIRED", "FAILED", "PROPOSED" ] }, "type" : { "type" : "string", "description" : "The type of contract change. Valid values include 'DIRECT' and 'QUOTE'.", "example" : null, "enum" : [ "DIRECT", "QUOTE" ] }, "updatedAt" : { "type" : "string", "description" : "The date and time when this contract change was last updated.", "format" : "date-time", "example" : null } }, "example" : null }, "ContractChangeUpdateRequest" : { "required" : [ "name" ], "type" : "object", "properties" : { "effectiveDate" : { "type" : "string", "description" : "A string representing the date when the contract change becomes effective.", "format" : "date", "example" : null }, "lineItemChanges" : { "type" : "array", "description" : "An array of line item changes to be applied to the contract. Each item in the array is a LineItemChangeRequest object.", "example" : null, "items" : { "$ref" : "#/components/schemas/LineItemChangeRequest" } }, "name" : { "type" : "object", "properties" : { }, "description" : "An object representing the name of the contract change.", "example" : null }, "prorating" : { "type" : "boolean", "description" : "A boolean indicating whether the contract change should be prorated.", "example" : null } }, "example" : null }, "ContractChangesResponse" : { "required" : [ "changes" ], "type" : "object", "properties" : { "changes" : { "type" : "array", "description" : "An array of ContractChangeResponse objects, each representing a change made to the contract. This property is required.", "example" : null, "items" : { "$ref" : "#/components/schemas/ContractChangeResponse" } } }, "example" : null }, "ContractCreateRequest" : { "required" : [ "automatedTaxesEnabled", "billingAddress", "billingCompanyId", "billingContactId", "billingStartDateOverride", "contractEffectiveDate", "currencyCode", "dealId", "externalPaymentMethodReferenceId", "hubspotBillingEnabled", "lineItems", "locale", "name", "netPaymentTerms", "ownerId", "paymentEnabled", "poNumber", "sellerCompanyAddress", "sellerCompanyDomain", "sellerCompanyName", "sellerEmail", "sellerFirstName", "sellerLastName", "sellerPhone" ], "type" : "object", "properties" : { "addressTypesToCollect" : { "type" : "array", "description" : "An array specifying the types of addresses to collect, with valid values including 'billing_address' and 'shipping_address'.", "example" : null, "items" : { "type" : "string", "example" : null, "enum" : [ "BILLING_ADDRESS", "SHIPPING_ADDRESS" ] } }, "allowedPaymentMethods" : { "type" : "array", "description" : "An array of allowed payment methods for the contract, with valid values including 'credit_or_debit_card', 'ach', 'sepa', 'bacs', and 'pads'.", "example" : null, "items" : { "type" : "string", "example" : null, "enum" : [ "CREDIT_OR_DEBIT_CARD", "ACH", "SEPA", "BACS", "PADS" ] } }, "automatedTaxesEnabled" : { "type" : "object", "properties" : { }, "description" : "An object indicating whether automated taxes are enabled for the contract.", "example" : null }, "billingAddress" : { "type" : "object", "properties" : { }, "description" : "An object representing the billing address associated with the contract.", "example" : null }, "billingCompanyId" : { "type" : "object", "properties" : { }, "description" : "An object representing the ID of the billing company.", "example" : null }, "billingContactId" : { "type" : "string", "description" : "An object representing the ID of the billing contact.", "example" : null }, "billingStartDateOverride" : { "type" : "object", "properties" : { }, "description" : "An object representing an override for the billing start date.", "example" : null }, "collectionProcess" : { "type" : "string", "description" : "A string indicating the collection process for payments, with valid values including 'manual_payments' and 'automatic_payments'.", "example" : null, "enum" : [ "AUTOMATIC_PAYMENTS", "MANUAL_PAYMENTS" ] }, "contractEffectiveDate" : { "type" : "string", "description" : "A string representing the effective date of the contract.", "format" : "date", "example" : null }, "currencyCode" : { "type" : "string", "description" : "A string representing the currency code for the contract.", "example" : null }, "customProperties" : { "type" : "object", "additionalProperties" : { "type" : "string", "example" : null }, "description" : "A map of custom property names to their values, represented as strings.", "example" : null }, "dealId" : { "type" : "object", "properties" : { }, "description" : "An object representing the ID of the associated deal.", "example" : null }, "externalPaymentMethodReferenceId" : { "type" : "object", "properties" : { }, "description" : "An object representing an external reference ID for the payment method.", "example" : null }, "hubspotBillingEnabled" : { "type" : "boolean", "description" : "A boolean indicating whether HubSpot billing is enabled for the contract.", "example" : null }, "lineItems" : { "type" : "array", "description" : "An array of line items included in the contract, which can be custom, from a product, or cloned.", "example" : null, "items" : { "example" : null, "oneOf" : [ { "$ref" : "#/components/schemas/LineItemCustomCreateRequest" }, { "$ref" : "#/components/schemas/LineItemFromProductCreateRequest" }, { "$ref" : "#/components/schemas/LineItemCloneCreateRequest" } ] } }, "locale" : { "type" : "object", "properties" : { }, "description" : "An object representing the locale settings for the contract.", "example" : null }, "name" : { "type" : "string", "description" : "A string representing the name of the contract.", "example" : null }, "netPaymentTerms" : { "type" : "object", "properties" : { }, "description" : "An object representing the net payment terms for the contract.", "example" : null }, "ownerId" : { "type" : "object", "properties" : { }, "description" : "An object representing the ID of the contract owner.", "example" : null }, "paymentEnabled" : { "type" : "boolean", "description" : "A boolean indicating whether payment is enabled for the contract.", "example" : null }, "poNumber" : { "type" : "object", "properties" : { }, "description" : "An object representing the purchase order number for the contract.", "example" : null }, "sellerCompanyAddress" : { "type" : "object", "properties" : { }, "description" : "An object representing the address of the seller's company.", "example" : null }, "sellerCompanyDomain" : { "type" : "object", "properties" : { }, "description" : "An object representing the domain of the seller's company.", "example" : null }, "sellerCompanyName" : { "type" : "object", "properties" : { }, "description" : "An object representing the name of the seller's company.", "example" : null }, "sellerEmail" : { "type" : "object", "properties" : { }, "description" : "An object representing the email address of the seller.", "example" : null }, "sellerFirstName" : { "type" : "object", "properties" : { }, "description" : "An object representing the first name of the seller.", "example" : null }, "sellerLastName" : { "type" : "object", "properties" : { }, "description" : "An object representing the last name of the seller.", "example" : null }, "sellerPhone" : { "type" : "object", "properties" : { }, "description" : "An object representing the phone number of the seller.", "example" : null } }, "example" : null }, "ContractEditRequest" : { "required" : [ "automatedTaxesEnabled", "billingAddress", "billingCompanyId", "billingContactId", "billingStartDateOverride", "dealId", "externalPaymentMethodReferenceId", "locale", "name", "netPaymentTerms", "ownerId", "poNumber", "sellerCompanyAddress", "sellerCompanyDomain", "sellerCompanyName", "sellerEmail", "sellerFirstName", "sellerLastName", "sellerPhone" ], "type" : "object", "properties" : { "addressTypesToCollect" : { "type" : "array", "description" : "An array of strings indicating the types of addresses to collect, with valid values including 'billing_address' and 'shipping_address'.", "example" : null, "items" : { "type" : "string", "example" : null, "enum" : [ "BILLING_ADDRESS", "SHIPPING_ADDRESS" ] } }, "allowedPaymentMethods" : { "type" : "array", "description" : "An array of strings specifying the allowed payment methods, with valid values including 'credit_or_debit_card', 'ach', 'sepa', 'bacs', and 'pads'.", "example" : null, "items" : { "type" : "string", "example" : null, "enum" : [ "CREDIT_OR_DEBIT_CARD", "ACH", "SEPA", "BACS", "PADS" ] } }, "automatedTaxesEnabled" : { "type" : "object", "properties" : { }, "description" : "An object indicating whether automated taxes are enabled for the contract.", "example" : null }, "billingAddress" : { "type" : "object", "properties" : { }, "description" : "An object representing the billing address for the contract.", "example" : null }, "billingCompanyId" : { "type" : "object", "properties" : { }, "description" : "An object representing the ID of the billing company associated with the contract.", "example" : null }, "billingContactId" : { "type" : "object", "properties" : { }, "description" : "An object representing the ID of the billing contact associated with the contract.", "example" : null }, "billingStartDateOverride" : { "type" : "object", "properties" : { }, "description" : "An object representing an override for the billing start date.", "example" : null }, "customProperties" : { "type" : "object", "additionalProperties" : { "type" : "string", "example" : null }, "description" : "An object containing custom properties as key-value pairs, where keys are property names and values are their respective values.", "example" : null }, "dealId" : { "type" : "object", "properties" : { }, "description" : "An object representing the ID of the deal associated with the contract.", "example" : null }, "externalPaymentMethodReferenceId" : { "type" : "object", "properties" : { }, "description" : "An object representing an external reference ID for the payment method.", "example" : null }, "locale" : { "type" : "object", "properties" : { }, "description" : "An object representing the locale settings for the contract.", "example" : null }, "name" : { "type" : "object", "properties" : { }, "description" : "An object representing the name of the contract.", "example" : null }, "netPaymentTerms" : { "type" : "object", "properties" : { }, "description" : "An object representing the net payment terms for the contract.", "example" : null }, "ownerId" : { "type" : "object", "properties" : { }, "description" : "An object representing the ID of the owner of the contract.", "example" : null }, "poNumber" : { "type" : "object", "properties" : { }, "description" : "An object representing the purchase order number for the contract.", "example" : null }, "sellerCompanyAddress" : { "type" : "object", "properties" : { }, "description" : "An object representing the address of the seller's company.", "example" : null }, "sellerCompanyDomain" : { "type" : "object", "properties" : { }, "description" : "An object representing the domain of the seller's company.", "example" : null }, "sellerCompanyName" : { "type" : "object", "properties" : { }, "description" : "An object representing the name of the seller's company.", "example" : null }, "sellerEmail" : { "type" : "object", "properties" : { }, "description" : "An object representing the email address of the seller.", "example" : null }, "sellerFirstName" : { "type" : "object", "properties" : { }, "description" : "An object representing the first name of the seller.", "example" : null }, "sellerLastName" : { "type" : "object", "properties" : { }, "description" : "An object representing the last name of the seller.", "example" : null }, "sellerPhone" : { "type" : "object", "properties" : { }, "description" : "An object representing the phone number of the seller.", "example" : null } }, "example" : null }, "ContractResponse" : { "required" : [ "addressTypesToCollect", "allowedPaymentMethods", "automatedTaxesEnabled", "customProperties", "hubspotBillingEnabled", "id", "lineItems", "paymentEnabled", "status", "storePaymentMethodAtCheckout" ], "type" : "object", "properties" : { "addressTypesToCollect" : { "type" : "array", "description" : "A list of address types to collect, such as 'billing_address' or 'shipping_address'.", "example" : null, "items" : { "type" : "string", "example" : null, "enum" : [ "BILLING_ADDRESS", "SHIPPING_ADDRESS" ] } }, "allTransactionsFeeName" : { "type" : "string", "description" : "The name of the fee applied to all transactions.", "example" : null }, "allTransactionsFeePercentage" : { "type" : "number", "description" : "The percentage of the fee applied to all transactions.", "example" : null }, "allowedPaymentMethods" : { "type" : "array", "description" : "A list of allowed payment methods, such as 'credit_or_debit_card', 'ach', 'sepa', 'bacs', and 'pads'.", "example" : null, "items" : { "type" : "string", "example" : null, "enum" : [ "CREDIT_OR_DEBIT_CARD", "ACH", "SEPA", "BACS", "PADS" ] } }, "annualContractValue" : { "type" : "number", "description" : "The annual value of the contract.", "example" : null }, "automatedTaxesEnabled" : { "type" : "boolean", "description" : "Indicates whether automated taxes are enabled for the contract.", "example" : null }, "billingAddress" : { "$ref" : "#/components/schemas/Address" }, "billingCompanyId" : { "type" : "string", "description" : "The ID of the company responsible for billing.", "example" : null }, "billingContactId" : { "type" : "string", "description" : "The ID of the contact responsible for billing.", "example" : null }, "billingStartDateOverride" : { "type" : "string", "description" : "An override for the billing start date.", "format" : "date", "example" : null }, "cardFeeName" : { "type" : "string", "description" : "The name of the fee applied to card payments.", "example" : null }, "cardFeePercentage" : { "type" : "number", "description" : "The percentage of the fee applied to card payments.", "example" : null }, "collectionProcess" : { "type" : "string", "description" : "The process for collecting payments. Valid values include 'manual_payments' and 'automatic_payments'.", "example" : null, "enum" : [ "AUTOMATIC_PAYMENTS", "MANUAL_PAYMENTS" ] }, "contractEffectiveDate" : { "type" : "string", "description" : "The date when the contract becomes effective.", "format" : "date", "example" : null }, "contractSourceId" : { "type" : "string", "description" : "The source ID of the contract.", "example" : null }, "createdAt" : { "type" : "string", "description" : "The date and time when the contract was created.", "format" : "date-time", "example" : null }, "currencyCode" : { "type" : "string", "description" : "The currency code in which the contract is denominated.", "example" : null }, "currentAnnualRecurringRevenue" : { "type" : "number", "description" : "The current annual recurring revenue from the contract.", "example" : null }, "currentMonthlyRecurringRevenue" : { "type" : "number", "description" : "The current monthly recurring revenue from the contract.", "example" : null }, "customProperties" : { "type" : "object", "additionalProperties" : { "type" : "string", "example" : null }, "description" : "A map of custom property names to their values.", "example" : null }, "dealId" : { "type" : "string", "description" : "The ID of the associated deal.", "example" : null }, "directDebitFeeName" : { "type" : "string", "description" : "The name of the fee applied to direct debit payments.", "example" : null }, "directDebitFeePercentage" : { "type" : "number", "description" : "The percentage of the fee applied to direct debit payments.", "example" : null }, "discountCode" : { "type" : "string", "description" : "The discount code applied to the contract.", "example" : null }, "endDate" : { "type" : "string", "description" : "The end date of the contract.", "format" : "date", "example" : null }, "externalPaymentMethodReferenceId" : { "type" : "string", "description" : "The external reference ID for the payment method.", "example" : null }, "hubspotBillingEnabled" : { "type" : "boolean", "description" : "Indicates whether HubSpot billing is enabled for the contract.", "example" : null }, "id" : { "type" : "string", "description" : "The unique identifier for the contract.", "example" : null }, "language" : { "type" : "string", "description" : "The language used in the contract.", "example" : null }, "lineItems" : { "type" : "array", "description" : "A list of line items included in the contract.", "example" : null, "items" : { "$ref" : "#/components/schemas/LineItem" } }, "locale" : { "type" : "string", "description" : "The locale setting for the contract.", "example" : null }, "name" : { "type" : "string", "description" : "The name of the contract.", "example" : null }, "netPaymentTerms" : { "type" : "integer", "description" : "The net payment terms, expressed as an integer.", "format" : "int32", "example" : null }, "paymentEnabled" : { "type" : "boolean", "description" : "Indicates whether payment is enabled for the contract.", "example" : null }, "paymentMethod" : { "type" : "string", "description" : "The method of payment for the contract.", "example" : null }, "poNumber" : { "type" : "string", "description" : "The purchase order number associated with the contract.", "example" : null }, "preTerminationContractValue" : { "type" : "number", "description" : "The value of the contract before termination.", "example" : null }, "renewalContractId" : { "type" : "string", "description" : "The ID of the renewal contract.", "example" : null }, "renewalDate" : { "type" : "string", "description" : "The date when the contract is set to renew.", "format" : "date", "example" : null }, "sellerCompanyAddress" : { "$ref" : "#/components/schemas/Address" }, "sellerCompanyName" : { "type" : "string", "description" : "The name of the seller's company.", "example" : null }, "sellerEmail" : { "type" : "string", "description" : "The email address of the seller.", "example" : null }, "sellerFirstName" : { "type" : "string", "description" : "The first name of the seller.", "example" : null }, "sellerLastName" : { "type" : "string", "description" : "The last name of the seller.", "example" : null }, "sellerPhoneNumber" : { "type" : "string", "description" : "The phone number of the seller.", "example" : null }, "startDate" : { "type" : "string", "description" : "The start date of the contract.", "format" : "date", "example" : null }, "status" : { "type" : "string", "description" : "The current status of the contract. Valid values include 'DRAFT', 'ACTIVE', 'COMPLETED', and 'TERMINATED'.", "example" : null, "enum" : [ "ACTIVE", "COMPLETED", "DRAFT", "PAUSED", "TERMINATED" ] }, "storePaymentMethodAtCheckout" : { "type" : "boolean", "description" : "Indicates whether the payment method should be stored at checkout.", "example" : null }, "terminationDate" : { "type" : "string", "description" : "The date when the contract is terminated.", "format" : "date", "example" : null }, "totalBilledAmount" : { "type" : "number", "description" : "The total amount billed under the contract.", "example" : null }, "totalBilledAmountPreTax" : { "type" : "number", "description" : "The total amount billed under the contract before tax.", "example" : null }, "totalCollectedFees" : { "type" : "number", "description" : "The total amount of fees collected under the contract.", "example" : null }, "totalCollectedTaxes" : { "type" : "number", "description" : "The total amount of taxes collected under the contract.", "example" : null }, "totalContractValue" : { "type" : "number", "description" : "The total value of the contract.", "example" : null }, "totalPaidAmount" : { "type" : "number", "description" : "The total amount paid under the contract.", "example" : null }, "updatedAt" : { "type" : "string", "description" : "The date and time when the contract was last updated.", "format" : "date-time", "example" : null } }, "example" : null }, "ContractTerminateRequest" : { "type" : "object", "properties" : { "terminationDate" : { "type" : "string", "description" : "The date on which the contract is to be terminated.", "format" : "date", "example" : null } }, "example" : null }, "CreateRenewalQuoteRequest" : { "required" : [ "quoteTemplateId" ], "type" : "object", "properties" : { "dealId" : { "type" : "string", "description" : "The unique identifier of the deal associated with the renewal quote. This is an optional field and must be a string if provided.", "example" : null }, "dealPipeline" : { "type" : "string", "description" : "The pipeline in which the deal associated with the renewal quote is located. This is an optional field and must be a string if provided.", "example" : null }, "dealStage" : { "type" : "string", "description" : "The stage of the deal associated with the renewal quote. This is an optional field and must be a string if provided.", "example" : null }, "name" : { "type" : "string", "description" : "The name of the renewal quote. This is an optional field and must be a string if provided.", "example" : null }, "quoteTemplateId" : { "type" : "string", "description" : "The unique identifier of the quote template to be used for the renewal quote. This is a required field and must be a string.", "example" : null } }, "example" : null }, "DirectContractChangeCreateRequest" : { "required" : [ "autoAccept", "lineItemChanges", "prorating", "type" ], "type" : "object", "properties" : { "autoAccept" : { "type" : "boolean", "description" : "A boolean indicating whether the contract change should be automatically accepted.", "example" : null }, "effectiveDate" : { "type" : "string", "description" : "A string representing the date when the contract change becomes effective.", "format" : "date", "example" : null }, "lineItemChanges" : { "type" : "array", "description" : "An array of line item changes to be applied to the contract. Each item in the array is a LineItemChangeRequest object.", "example" : null, "items" : { "$ref" : "#/components/schemas/LineItemChangeRequest" } }, "name" : { "type" : "string", "description" : "A string representing the name of the contract change.", "example" : null }, "prorating" : { "type" : "boolean", "description" : "A boolean indicating whether the contract change should be prorated.", "example" : null }, "type" : { "type" : "string", "description" : "A string representing the type of contract change. The default value is 'direct'.", "example" : null, "default" : "DIRECT", "enum" : [ "DIRECT" ] } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "Error" : { "required" : [ "category", "correlationId", "message" ], "type" : "object", "properties" : { "category" : { "type" : "string", "description" : "The error category. Type: string.", "example" : null }, "context" : { "type" : "object", "additionalProperties" : { "type" : "array", "example" : null, "items" : { "type" : "string", "example" : null } }, "description" : "Context about the error condition, provided as an object with additional properties. Type: object.", "example" : "{invalidPropertyName=[propertyValue], missingScopes=[scope1, scope2]}" }, "correlationId" : { "type" : "string", "description" : "A unique identifier for the request. Include this value with any error reports or support tickets. Type: string, Format: uuid.", "format" : "uuid", "example" : "aeb5f871-7f07-4993-9211-075dc63e7cbf" }, "errors" : { "type" : "array", "description" : "Further information about the error. Type: array of ErrorDetail objects.", "example" : null, "items" : { "$ref" : "#/components/schemas/ErrorDetail" } }, "links" : { "type" : "object", "additionalProperties" : { "type" : "string", "example" : null }, "description" : "A map of link names to associated URIs containing documentation about the error or recommended remediation steps. Type: object.", "example" : null }, "message" : { "type" : "string", "description" : "A human readable message describing the error along with remediation steps where appropriate. Type: string.", "example" : "An error occurred" }, "subCategory" : { "type" : "string", "description" : "A specific category that contains more specific detail about the error. Type: string.", "example" : null } }, "example" : { "message" : "Invalid input (details will vary based on the error)", "correlationId" : "aeb5f871-7f07-4993-9211-075dc63e7cbf", "category" : "VALIDATION_ERROR", "links" : { "knowledge-base" : "https://www.hubspot.com/products/service/knowledge-base" } } }, "ErrorDetail" : { "required" : [ "message" ], "type" : "object", "properties" : { "code" : { "type" : "string", "description" : "The status code associated with the error detail.", "example" : null }, "context" : { "type" : "object", "additionalProperties" : { "type" : "array", "example" : null, "items" : { "type" : "string", "example" : null } }, "description" : "Context about the error condition, represented as an object where each key is a context name and the value is an array of strings providing additional details.", "example" : "{missingScopes=[scope1, scope2]}" }, "in" : { "type" : "string", "description" : "The name of the field or parameter in which the error was found.", "example" : null }, "message" : { "type" : "string", "description" : "A human-readable message describing the error along with remediation steps where appropriate. This is a required field.", "example" : null }, "subCategory" : { "type" : "string", "description" : "A specific category that contains more specific detail about the error.", "example" : null } }, "example" : null }, "LineItem" : { "required" : [ "id", "name", "pricing", "quantity" ], "type" : "object", "properties" : { "acv" : { "type" : "number", "description" : "Annual Contract Value for this line item. A numerical value.", "example" : null }, "allowBuyerSelectedQuantity" : { "type" : "boolean", "description" : "Indicates whether the buyer can select the quantity for this line item. A boolean value.", "example" : null }, "amount" : { "type" : "number", "description" : "The total amount for this line item, calculated as price multiplied by quantity. A numerical value.", "example" : null }, "archived" : { "type" : "boolean", "description" : "Indicates whether this line item is archived. A boolean value.", "example" : null }, "archivedAt" : { "type" : "string", "description" : "The date and time when this line item was archived, in ISO 8601 format.", "format" : "date-time", "example" : null }, "arr" : { "type" : "number", "description" : "Annual Recurring Revenue for this line item. A numerical value.", "example" : null }, "billingCycleAnchorDate" : { "type" : "string", "description" : "The anchor date for the billing cycle, in ISO 8601 format.", "format" : "date", "example" : null }, "billingPeriodEndDate" : { "type" : "string", "description" : "The end date of the billing period, in ISO 8601 format.", "format" : "date", "example" : null }, "billingPeriodStartDate" : { "type" : "string", "description" : "The start date of the billing period, in ISO 8601 format.", "format" : "date", "example" : null }, "billingStartDelayDays" : { "type" : "integer", "description" : "The number of days to delay the start of billing, represented as an integer.", "format" : "int32", "example" : null }, "billingStartDelayMonths" : { "type" : "integer", "description" : "The number of months to delay the start of billing, represented as an integer.", "format" : "int32", "example" : null }, "billingStartDelayType" : { "type" : "string", "description" : "The type of billing start delay, with options like 'hs_billing_start_delay_days', 'hs_billing_start_delay_months', or 'hs_recurring_billing_start_date'.", "example" : null, "enum" : [ "HS_BILLING_START_DELAY_DAYS", "HS_BILLING_START_DELAY_MONTHS", "HS_RECURRING_BILLING_START_DATE" ] }, "buyerSelectedQuantityMax" : { "type" : "number", "description" : "The maximum quantity the buyer can select for this line item. A numerical value.", "example" : null }, "buyerSelectedQuantityMin" : { "type" : "number", "description" : "The minimum quantity the buyer can select for this line item. A numerical value.", "example" : null }, "createdAt" : { "type" : "string", "description" : "The date and time when this line item was created, in ISO 8601 format.", "format" : "date-time", "example" : null }, "description" : { "type" : "string", "description" : "A textual description of the line item.", "example" : null }, "discount" : { "type" : "number", "description" : "The discount applied to this line item. A numerical value.", "example" : null }, "discountPercentage" : { "type" : "number", "description" : "The percentage discount applied to this line item. A numerical value.", "example" : null }, "effectiveUnitPrice" : { "type" : "number", "description" : "The effective price per unit after discounts. A numerical value.", "example" : null }, "externalId" : { "type" : "string", "description" : "An external identifier for this line item, used for integration with other systems.", "example" : null }, "id" : { "type" : "string", "description" : "The unique identifier for this line item.", "example" : null }, "images" : { "type" : "string", "description" : "A URL or path to images associated with this line item.", "example" : null }, "isEditablePrice" : { "type" : "boolean", "description" : "Indicates whether the price of this line item is editable. A boolean value.", "example" : null }, "isOptional" : { "type" : "boolean", "description" : "Indicates whether this line item is optional. A boolean value.", "example" : null }, "lineItemCurrencyCode" : { "type" : "string", "description" : "The currency code for this line item, following ISO 4217 format.", "example" : null }, "mrr" : { "type" : "number", "description" : "Monthly Recurring Revenue for this line item. A numerical value.", "example" : null }, "name" : { "type" : "string", "description" : "The name of the line item.", "example" : null }, "positionOnQuote" : { "type" : "integer", "description" : "The position of this line item on a quote, represented as an integer.", "format" : "int32", "example" : null }, "postTaxAmount" : { "type" : "number", "description" : "The total amount after tax is applied. A numerical value.", "example" : null }, "preDiscountAmount" : { "type" : "number", "description" : "The amount before any discount is applied. A numerical value.", "example" : null }, "price" : { "type" : "number", "description" : "The price per unit of the item. A numerical value.", "example" : null }, "priceBookId" : { "type" : "string", "description" : "The unique identifier for the price book associated with this line item.", "example" : null }, "pricing" : { "$ref" : "#/components/schemas/Pricing" }, "pricingModel" : { "type" : "string", "description" : "The pricing model used for this line item, which can be 'flat', 'graduated', 'stairstep', or 'volume'.", "example" : null, "enum" : [ "FLAT", "GRADUATED", "STAIRSTEP", "VOLUME" ] }, "productId" : { "type" : "string", "description" : "The unique identifier for the product associated with this line item.", "example" : null }, "productType" : { "type" : "string", "description" : "The type of product for this line item.", "example" : null }, "quantity" : { "type" : "number", "description" : "The quantity of the item. A numerical value.", "example" : null }, "rampKey" : { "type" : "string", "description" : "A unique identifier for the ramp associated with this line item.", "example" : null }, "recurringBillingDayOfMonth" : { "type" : "integer", "description" : "The day of the month on which recurring billing occurs, represented as an integer.", "format" : "int32", "example" : null }, "recurringBillingEndDate" : { "type" : "string", "description" : "The end date for recurring billing, in ISO 8601 format.", "format" : "date", "example" : null }, "recurringBillingFrequency" : { "type" : "string", "description" : "The frequency of recurring billing for this line item, with options like 'annually', 'monthly', 'weekly', etc.", "example" : null, "enum" : [ "ANNUALLY", "BIWEEKLY", "MONTHLY", "PER_FIVE_YEARS", "PER_FOUR_YEARS", "PER_SIX_MONTHS", "PER_THREE_YEARS", "PER_TWO_YEARS", "QUARTERLY", "WEEKLY" ] }, "recurringBillingNumberOfPayments" : { "type" : "integer", "description" : "The number of payments in the recurring billing cycle, represented as an integer.", "format" : "int32", "example" : null }, "recurringBillingPeriod" : { "type" : "string", "description" : "The period of the recurring billing cycle.", "example" : null }, "recurringBillingStartDate" : { "type" : "string", "description" : "The start date for recurring billing, in ISO 8601 format.", "format" : "date", "example" : null }, "recurringBillingTerms" : { "type" : "string", "description" : "The terms of recurring billing, which can be 'AUTOMATICALLY_RENEW' or 'FIXED'.", "example" : null, "enum" : [ "AUTOMATICALLY_RENEW", "FIXED" ] }, "richTextDescription" : { "type" : "string", "description" : "A rich text description of the line item, allowing for formatting.", "example" : null }, "sku" : { "type" : "string", "description" : "The stock keeping unit identifier for this line item.", "example" : null }, "tax" : { "type" : "number", "description" : "The tax amount applied to this line item. A numerical value.", "example" : null }, "tcv" : { "type" : "number", "description" : "Total Contract Value for this line item. A numerical value.", "example" : null }, "termInMonths" : { "type" : "integer", "description" : "The term length of the line item in months, represented as an integer.", "format" : "int32", "example" : null }, "tierAmount" : { "type" : "number", "description" : "The amount for the tiered pricing model. A numerical value.", "example" : null }, "totalDiscount" : { "type" : "number", "description" : "The total discount amount for this line item. A numerical value.", "example" : null }, "updatedAt" : { "type" : "string", "description" : "The date and time when this line item was last updated, in ISO 8601 format.", "format" : "date-time", "example" : null }, "variantId" : { "type" : "string", "description" : "The unique identifier for the product variant associated with this line item.", "example" : null } }, "example" : null }, "LineItemChangeRequest" : { "required" : [ "action" ], "type" : "object", "properties" : { "action" : { "type" : "string", "description" : "The type of action to perform on the line item. Valid values include 'ADD', 'UPDATE', and 'REMOVE'.", "example" : null, "enum" : [ "ADD", "REMOVE", "UPDATE" ] }, "lineItemAdd" : { "example" : null, "oneOf" : [ { "$ref" : "#/components/schemas/LineItemCustomCreateRequest" }, { "$ref" : "#/components/schemas/LineItemFromProductCreateRequest" }, { "$ref" : "#/components/schemas/LineItemCloneCreateRequest" } ] }, "lineItemUpdate" : { "$ref" : "#/components/schemas/LineItemChangeUpdate" }, "rampKey" : { "type" : "string", "description" : "A unique identifier for the ramp, formatted as a UUID.", "format" : "uuid", "example" : null } }, "example" : null }, "LineItemChangeResponse" : { "required" : [ "action", "rampKey" ], "type" : "object", "properties" : { "action" : { "type" : "string", "description" : "The type of action performed on the line item. Valid values include 'ADD', 'UPDATE', and 'REMOVE'.", "example" : null, "enum" : [ "ADD", "REMOVE", "UPDATE" ] }, "lineItemUpdate" : { "$ref" : "#/components/schemas/LineItemChangeUpdate" }, "rampKey" : { "type" : "string", "description" : "A unique identifier for the ramp associated with the line item change, formatted as a UUID.", "format" : "uuid", "example" : null } }, "example" : null }, "LineItemChangeUpdate" : { "required" : [ "allowBuyerSelectedQuantity", "billingCycleAnchorDate", "billingStartDelayDays", "billingStartDelayMonths", "buyerSelectedQuantityMax", "buyerSelectedQuantityMin", "description", "discount", "discountPercentage", "externalId", "images", "isEditablePrice", "isOptional", "lineItemCurrencyCode", "name", "positionOnQuote", "priceBookId", "pricing", "productType", "quantity", "recurringBillingEndDate", "recurringBillingFrequency", "recurringBillingPeriod", "recurringBillingStartDate", "richTextDescription", "sku", "variantId" ], "type" : "object", "properties" : { "allowBuyerSelectedQuantity" : { "type" : "object", "properties" : { }, "example" : null }, "billingCycleAnchorDate" : { "type" : "object", "properties" : { }, "example" : null }, "billingStartDelayDays" : { "type" : "object", "properties" : { }, "example" : null }, "billingStartDelayMonths" : { "type" : "object", "properties" : { }, "example" : null }, "buyerSelectedQuantityMax" : { "type" : "object", "properties" : { }, "example" : null }, "buyerSelectedQuantityMin" : { "type" : "object", "properties" : { }, "example" : null }, "description" : { "type" : "object", "properties" : { }, "example" : null }, "discount" : { "type" : "object", "properties" : { }, "example" : null }, "discountPercentage" : { "type" : "object", "properties" : { }, "example" : null }, "externalId" : { "type" : "object", "properties" : { }, "example" : null }, "images" : { "type" : "object", "properties" : { }, "example" : null }, "isEditablePrice" : { "type" : "object", "properties" : { }, "example" : null }, "isOptional" : { "type" : "object", "properties" : { }, "example" : null }, "lineItemCurrencyCode" : { "type" : "object", "properties" : { }, "example" : null }, "name" : { "type" : "object", "properties" : { }, "example" : null }, "positionOnQuote" : { "type" : "object", "properties" : { }, "example" : null }, "priceBookId" : { "type" : "object", "properties" : { }, "example" : null }, "pricing" : { "type" : "object", "properties" : { }, "example" : null }, "productType" : { "type" : "object", "properties" : { }, "example" : null }, "quantity" : { "type" : "object", "properties" : { }, "example" : null }, "recurringBillingEndDate" : { "type" : "object", "properties" : { }, "example" : null }, "recurringBillingFrequency" : { "type" : "object", "properties" : { }, "example" : null }, "recurringBillingPeriod" : { "type" : "object", "properties" : { }, "example" : null }, "recurringBillingStartDate" : { "type" : "object", "properties" : { }, "example" : null }, "richTextDescription" : { "type" : "object", "properties" : { }, "example" : null }, "sku" : { "type" : "object", "properties" : { }, "example" : null }, "variantId" : { "type" : "object", "properties" : { }, "example" : null } }, "example" : null }, "LineItemCloneCreateRequest" : { "title" : "CLONE", "required" : [ "allowBuyerSelectedQuantity", "billingCycleAnchorDate", "billingStartDelayDays", "billingStartDelayMonths", "buyerSelectedQuantityMax", "buyerSelectedQuantityMin", "description", "discount", "discountPercentage", "externalId", "images", "isEditablePrice", "isOptional", "lineItemCurrencyCode", "mode", "name", "positionOnQuote", "priceBookId", "pricing", "productType", "quantity", "recurringBillingEndDate", "recurringBillingFrequency", "recurringBillingPeriod", "recurringBillingStartDate", "richTextDescription", "sku", "sourceLineItemId", "variantId" ], "type" : "object", "properties" : { "allowBuyerSelectedQuantity" : { "type" : "object", "properties" : { }, "description" : "An object indicating whether the buyer can select the quantity of the line item.", "example" : null }, "billingCycleAnchorDate" : { "type" : "object", "properties" : { }, "description" : "An object representing the anchor date for the billing cycle.", "example" : null }, "billingStartDelayDays" : { "type" : "object", "properties" : { }, "description" : "An object representing the number of days to delay the start of billing.", "example" : null }, "billingStartDelayMonths" : { "type" : "object", "properties" : { }, "description" : "An object representing the number of months to delay the start of billing.", "example" : null }, "buyerSelectedQuantityMax" : { "type" : "object", "properties" : { }, "description" : "An object representing the maximum quantity that a buyer can select.", "example" : null }, "buyerSelectedQuantityMin" : { "type" : "object", "properties" : { }, "description" : "An object representing the minimum quantity that a buyer can select.", "example" : null }, "description" : { "type" : "object", "properties" : { }, "description" : "An object representing the description of the line item.", "example" : null }, "discount" : { "type" : "object", "properties" : { }, "description" : "An object representing the discount applied to the line item.", "example" : null }, "discountPercentage" : { "type" : "object", "properties" : { }, "description" : "An object representing the discount percentage applied to the line item.", "example" : null }, "externalId" : { "type" : "object", "properties" : { }, "description" : "An object representing an external identifier for the line item.", "example" : null }, "images" : { "type" : "object", "properties" : { }, "description" : "An object representing the images associated with the line item.", "example" : null }, "isEditablePrice" : { "type" : "object", "properties" : { }, "description" : "An object indicating whether the price of the line item is editable.", "example" : null }, "isOptional" : { "type" : "object", "properties" : { }, "description" : "An object indicating whether the line item is optional.", "example" : null }, "lineItemCurrencyCode" : { "type" : "object", "properties" : { }, "description" : "An object representing the currency code for the line item.", "example" : null }, "mode" : { "type" : "string", "description" : "A string indicating the mode of the line item, with a default value of 'clone'.", "example" : null, "default" : "CLONE", "enum" : [ "CLONE" ] }, "name" : { "type" : "object", "properties" : { }, "description" : "An object representing the name of the line item.", "example" : null }, "positionOnQuote" : { "type" : "object", "properties" : { }, "description" : "An object representing the position of the line item on the quote.", "example" : null }, "priceBookId" : { "type" : "object", "properties" : { }, "description" : "An object representing the ID of the price book associated with the line item.", "example" : null }, "pricing" : { "type" : "object", "properties" : { }, "description" : "An object representing the pricing details of the line item.", "example" : null }, "productType" : { "type" : "object", "properties" : { }, "description" : "An object representing the type of product for the line item.", "example" : null }, "quantity" : { "type" : "object", "properties" : { }, "description" : "An object representing the quantity of the line item.", "example" : null }, "recurringBillingEndDate" : { "type" : "object", "properties" : { }, "description" : "An object representing the end date for recurring billing.", "example" : null }, "recurringBillingFrequency" : { "type" : "object", "properties" : { }, "description" : "An object representing the frequency of recurring billing for the line item.", "example" : null }, "recurringBillingPeriod" : { "type" : "object", "properties" : { }, "description" : "An object representing the period for recurring billing.", "example" : null }, "recurringBillingStartDate" : { "type" : "object", "properties" : { }, "description" : "An object representing the start date for recurring billing.", "example" : null }, "richTextDescription" : { "type" : "object", "properties" : { }, "description" : "An object representing the rich text description of the line item.", "example" : null }, "sku" : { "type" : "object", "properties" : { }, "description" : "An object representing the SKU (Stock Keeping Unit) of the line item.", "example" : null }, "sourceLineItemId" : { "type" : "string", "description" : "A string representing the ID of the source line item being cloned.", "example" : null }, "variantId" : { "type" : "object", "properties" : { }, "description" : "An object representing the variant ID of the product.", "example" : null } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "LineItemCustomCreateRequest" : { "title" : "CUSTOM", "required" : [ "mode", "name", "pricing", "quantity" ], "type" : "object", "properties" : { "allowBuyerSelectedQuantity" : { "type" : "boolean", "description" : "A boolean specifying if the buyer can select the quantity of the line item.", "example" : null }, "billingCycleAnchorDate" : { "type" : "string", "description" : "A string specifying the anchor date for the billing cycle.", "format" : "date", "example" : null }, "billingStartDelayDays" : { "type" : "integer", "description" : "An integer representing the number of days to delay the start of billing.", "format" : "int32", "example" : null }, "billingStartDelayMonths" : { "type" : "integer", "description" : "An integer indicating the number of months to delay the start of billing.", "format" : "int32", "example" : null }, "buyerSelectedQuantityMax" : { "type" : "number", "description" : "A number representing the maximum quantity the buyer can select.", "example" : null }, "buyerSelectedQuantityMin" : { "type" : "number", "description" : "A number representing the minimum quantity the buyer can select.", "example" : null }, "description" : { "type" : "string", "description" : "A string providing a description of the line item.", "example" : null }, "discount" : { "type" : "number", "description" : "A number representing the discount amount applied to the line item.", "example" : null }, "discountPercentage" : { "type" : "number", "description" : "A number indicating the discount percentage applied to the line item.", "example" : null }, "externalId" : { "type" : "string", "description" : "A string representing an external identifier for the line item.", "example" : null }, "images" : { "type" : "string", "description" : "A string containing URLs or paths to images associated with the line item.", "example" : null }, "isEditablePrice" : { "type" : "boolean", "description" : "A boolean indicating if the price of the line item is editable.", "example" : null }, "isOptional" : { "type" : "boolean", "description" : "A boolean indicating whether the line item is optional.", "example" : null }, "lineItemCurrencyCode" : { "type" : "string", "description" : "A string representing the currency code for the line item.", "example" : null }, "mode" : { "type" : "string", "description" : "A string indicating the mode of the line item. Default is 'custom'.", "example" : null, "default" : "CUSTOM", "enum" : [ "CUSTOM" ] }, "name" : { "type" : "string", "description" : "A string representing the name of the line item.", "example" : null }, "positionOnQuote" : { "type" : "integer", "description" : "An integer indicating the position of the line item on a quote.", "format" : "int32", "example" : null }, "priceBookId" : { "type" : "string", "description" : "A string identifying the price book associated with the line item.", "example" : null }, "pricing" : { "$ref" : "#/components/schemas/PricingFullUpdateRequest" }, "productId" : { "type" : "string", "description" : "A string identifying the product associated with the line item.", "example" : null }, "productType" : { "type" : "string", "description" : "A string indicating the type of product for the line item.", "example" : null }, "quantity" : { "type" : "number", "description" : "A number specifying the quantity of the line item.", "example" : null }, "recurringBillingEndDate" : { "type" : "string", "description" : "A string indicating the end date for recurring billing.", "format" : "date", "example" : null }, "recurringBillingFrequency" : { "type" : "string", "description" : "A string specifying the frequency of recurring billing. Valid values include 'annually', 'biweekly', 'monthly', 'per_five_years', 'per_four_years', 'per_six_months', 'per_three_years', 'per_two_years', 'quarterly', and 'weekly'.", "example" : null, "enum" : [ "ANNUALLY", "BIWEEKLY", "MONTHLY", "PER_FIVE_YEARS", "PER_FOUR_YEARS", "PER_SIX_MONTHS", "PER_THREE_YEARS", "PER_TWO_YEARS", "QUARTERLY", "WEEKLY" ] }, "recurringBillingPeriod" : { "type" : "string", "description" : "A string defining the period for recurring billing.", "example" : null }, "recurringBillingStartDate" : { "type" : "string", "description" : "A string representing the start date for recurring billing.", "format" : "date", "example" : null }, "richTextDescription" : { "type" : "string", "description" : "A string containing a rich text description of the line item.", "example" : null }, "sku" : { "type" : "string", "description" : "A string representing the stock keeping unit (SKU) of the line item.", "example" : null }, "variantId" : { "type" : "string", "description" : "A string identifying the variant of the product for the line item.", "example" : null } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "LineItemFromProductCreateRequest" : { "title" : "FROM_PRODUCT", "required" : [ "allowBuyerSelectedQuantity", "billingCycleAnchorDate", "billingStartDelayDays", "billingStartDelayMonths", "buyerSelectedQuantityMax", "buyerSelectedQuantityMin", "description", "discount", "discountPercentage", "externalId", "images", "isEditablePrice", "isOptional", "lineItemCurrencyCode", "mode", "name", "positionOnQuote", "priceBookId", "pricing", "productId", "productType", "quantity", "recurringBillingEndDate", "recurringBillingFrequency", "recurringBillingPeriod", "recurringBillingStartDate", "richTextDescription", "sku", "variantId" ], "type" : "object", "properties" : { "allowBuyerSelectedQuantity" : { "type" : "object", "properties" : { }, "description" : "An object indicating if the buyer can select the quantity.", "example" : null }, "billingCycleAnchorDate" : { "type" : "object", "properties" : { }, "description" : "Specifies the day of month that bills are expected to be generated on, for month-oriented billing frequencies.", "example" : null }, "billingStartDelayDays" : { "type" : "object", "properties" : { }, "description" : "An object representing the delay in days before billing starts.", "example" : null }, "billingStartDelayMonths" : { "type" : "object", "properties" : { }, "description" : "An object representing the delay in months before billing starts.", "example" : null }, "buyerSelectedQuantityMax" : { "type" : "object", "properties" : { }, "description" : "Maximum quantity the buyer can select.", "example" : null }, "buyerSelectedQuantityMin" : { "type" : "object", "properties" : { }, "description" : "An object representing the minimum quantity the buyer can select.", "example" : null }, "description" : { "type" : "object", "properties" : { }, "description" : "An object representing the description of the line item.", "example" : null }, "discount" : { "type" : "object", "properties" : { }, "description" : "Discount applied to the line item.", "example" : null }, "discountPercentage" : { "type" : "object", "properties" : { }, "description" : "An object representing the discount percentage applied to the line item.", "example" : null }, "externalId" : { "type" : "object", "properties" : { }, "description" : "External identifier for the line item.", "example" : null }, "images" : { "type" : "object", "properties" : { }, "description" : "An object representing the images associated with the product.", "example" : null }, "isEditablePrice" : { "type" : "object", "properties" : { }, "description" : "An object indicating whether the price is editable.", "example" : null }, "isOptional" : { "type" : "object", "properties" : { }, "description" : "An object indicating whether the line item is optional.", "example" : null }, "lineItemCurrencyCode" : { "type" : "object", "properties" : { }, "description" : "Currency code.", "example" : null }, "mode" : { "type" : "string", "description" : "A string indicating the mode of creation, defaulting to 'from_product'.", "example" : null, "default" : "FROM_PRODUCT", "enum" : [ "FROM_PRODUCT" ] }, "name" : { "type" : "object", "properties" : { }, "description" : "An object representing the name of the line item.", "example" : null }, "positionOnQuote" : { "type" : "object", "properties" : { }, "description" : "Position of the line item on the quote.", "example" : null }, "priceBookId" : { "type" : "object", "properties" : { }, "description" : "ID of the price book associated with the line item.", "example" : null }, "pricing" : { "type" : "object", "properties" : { }, "description" : "An object representing the pricing details of the line item.", "example" : null }, "productId" : { "type" : "string", "description" : "A string representing the ID of the product.", "example" : null }, "productType" : { "type" : "object", "properties" : { }, "description" : "An object representing the type of product.", "example" : null }, "quantity" : { "type" : "object", "properties" : { }, "description" : "An object representing the quantity of the product in the line item.", "example" : null }, "recurringBillingEndDate" : { "type" : "object", "properties" : { }, "description" : "An object representing the end date for recurring billing.", "example" : null }, "recurringBillingFrequency" : { "type" : "object", "properties" : { }, "description" : "An object representing the frequency of recurring billing.", "example" : null }, "recurringBillingPeriod" : { "type" : "object", "properties" : { }, "description" : "An object representing the period for recurring billing.", "example" : null }, "recurringBillingStartDate" : { "type" : "object", "properties" : { }, "description" : "An object representing the start date for recurring billing.", "example" : null }, "richTextDescription" : { "type" : "object", "properties" : { }, "description" : "An object representing the rich text description of the line item.", "example" : null }, "sku" : { "type" : "object", "properties" : { }, "description" : "An object representing the SKU (Stock Keeping Unit) of the product.", "example" : null }, "variantId" : { "type" : "object", "properties" : { }, "description" : "Variant ID of the product.", "example" : null } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "PriceEntry" : { "required" : [ "currencyCode", "price" ], "type" : "object", "properties" : { "currencyCode" : { "type" : "string", "description" : "The currency code in which the price is denominated, represented as a string.", "example" : null }, "maxQuantity" : { "type" : "string", "description" : "The maximum quantity for which this price applies, represented as a string.", "example" : null }, "price" : { "type" : "number", "description" : "The unit price of the item, expressed as a number.", "example" : null } }, "example" : null }, "PriceUpdateEntry" : { "required" : [ "currencyCode", "price" ], "type" : "object", "properties" : { "currencyCode" : { "type" : "string", "example" : null }, "maxQuantity" : { "type" : "string", "example" : null }, "price" : { "type" : "object", "properties" : { }, "example" : null } }, "example" : null }, "Pricing" : { "required" : [ "prices", "pricingModel" ], "type" : "object", "properties" : { "prices" : { "type" : "array", "description" : "An array of price entries that define the specific pricing details for the line item.", "example" : null, "items" : { "$ref" : "#/components/schemas/PriceEntry" } }, "pricingModel" : { "type" : "string", "description" : "The pricing model applied to the line item. Valid values include 'FLAT', 'GRADUATED', 'STAIRSTEP', and 'VOLUME'.", "example" : null, "enum" : [ "FLAT", "GRADUATED", "STAIRSTEP", "VOLUME" ] } }, "example" : null }, "PricingFullUpdateRequest" : { "required" : [ "prices", "pricingModel" ], "type" : "object", "properties" : { "prices" : { "type" : "array", "example" : null, "items" : { "$ref" : "#/components/schemas/PriceUpdateEntry" } }, "pricingModel" : { "type" : "string", "example" : null, "enum" : [ "FLAT", "GRADUATED", "STAIRSTEP", "VOLUME" ] } }, "example" : null }, "QuoteContractChangeCreateRequest" : { "required" : [ "prorating", "quoteTemplateId", "type" ], "type" : "object", "properties" : { "dealId" : { "type" : "string", "description" : "A string representing the ID of the deal associated with the contract change.", "example" : null }, "dealPipeline" : { "type" : "string", "description" : "A string indicating the pipeline in which the deal is located.", "example" : null }, "dealStage" : { "type" : "string", "description" : "A string representing the stage of the deal within its pipeline.", "example" : null }, "effectiveDate" : { "type" : "string", "description" : "A string representing the date when the contract change becomes effective.", "format" : "date", "example" : null }, "name" : { "type" : "string", "description" : "A string representing the name of the contract change.", "example" : null }, "prorating" : { "type" : "boolean", "description" : "A boolean indicating whether the contract change will involve prorating.", "example" : null }, "quoteTemplateId" : { "type" : "string", "description" : "A string identifying the template used for the quote associated with the contract change.", "example" : null }, "type" : { "type" : "string", "description" : "A string indicating the type of contract change, which is 'quote' by default.", "example" : null, "default" : "QUOTE", "enum" : [ "QUOTE" ] } }, "example" : null, "x-hubspot-sub-type-impl" : true }, "QuoteResponse" : { "required" : [ "automatedTaxesEnabled", "customProperties", "hubspotBillingEnabled", "id", "lineItems", "paymentEnabled", "showSignatureBox" ], "type" : "object", "properties" : { "archived" : { "type" : "boolean", "description" : "Indicates whether the quote is archived.", "example" : null }, "archivedAt" : { "type" : "string", "description" : "The date and time when the quote was archived.", "format" : "date-time", "example" : null }, "automatedTaxesEnabled" : { "type" : "boolean", "description" : "Indicates if automated taxes are enabled for the quote.", "example" : null }, "buyerCompanyId" : { "type" : "string", "description" : "The unique identifier for the buyer's company.", "example" : null }, "buyerContactId" : { "type" : "string", "description" : "The unique identifier for the buyer's contact person.", "example" : null }, "comments" : { "type" : "string", "description" : "Additional comments or notes related to the quote.", "example" : null }, "createdAt" : { "type" : "string", "description" : "The date and time when the quote was created.", "format" : "date-time", "example" : null }, "currencyCode" : { "type" : "string", "description" : "The currency code in which the quote is denominated.", "example" : null }, "customProperties" : { "type" : "object", "additionalProperties" : { "type" : "string", "example" : null }, "description" : "A map of custom property names to their values, allowing for additional customization of the quote.", "example" : null }, "dealId" : { "type" : "string", "description" : "The unique identifier for the associated deal.", "example" : null }, "esignDate" : { "type" : "string", "description" : "The date and time when the electronic signature was completed.", "format" : "date", "example" : null }, "esignNumSignersCompleted" : { "type" : "integer", "description" : "The number of signers who have completed the electronic signing process.", "format" : "int32", "example" : null }, "esignNumSignersRequired" : { "type" : "integer", "description" : "The total number of signers required to complete the electronic signing process.", "format" : "int32", "example" : null }, "expirationDate" : { "type" : "string", "description" : "The date and time when the quote expires.", "format" : "date", "example" : null }, "feedback" : { "type" : "string", "description" : "Feedback or comments provided regarding the quote.", "example" : null }, "hubspotBillingEnabled" : { "type" : "boolean", "description" : "Indicates if HubSpot billing is enabled for the quote.", "example" : null }, "id" : { "type" : "string", "description" : "The unique identifier for the quote.", "example" : null }, "language" : { "type" : "string", "description" : "The language in which the quote is presented.", "example" : null }, "lineItems" : { "type" : "array", "description" : "An array of line items included in the quote, detailing the products or services being quoted.", "example" : null, "items" : { "$ref" : "#/components/schemas/LineItem" } }, "locale" : { "type" : "string", "description" : "The locale setting for the quote, affecting formatting and presentation.", "example" : null }, "paymentEnabled" : { "type" : "boolean", "description" : "Indicates if payment is enabled for the quote.", "example" : null }, "pdfDownloadLink" : { "type" : "string", "description" : "A link to download the quote as a PDF document.", "example" : null }, "quoteAmount" : { "type" : "number", "description" : "The total monetary amount of the quote.", "example" : null }, "quoteNumber" : { "type" : "string", "description" : "The unique number assigned to the quote.", "example" : null }, "senderCompanyAddress" : { "$ref" : "#/components/schemas/Address" }, "senderCompanyDomain" : { "type" : "string", "description" : "The domain of the sender's company.", "example" : null }, "senderCompanyImageUrl" : { "type" : "string", "description" : "The URL of the image representing the sender's company.", "example" : null }, "senderCompanyName" : { "type" : "string", "description" : "The name of the sender's company.", "example" : null }, "senderEmail" : { "type" : "string", "description" : "The email address of the sender.", "example" : null }, "senderFirstname" : { "type" : "string", "description" : "The first name of the sender.", "example" : null }, "senderJobtitle" : { "type" : "string", "description" : "The job title of the sender.", "example" : null }, "senderLastname" : { "type" : "string", "description" : "The last name of the sender.", "example" : null }, "senderPhone" : { "type" : "string", "description" : "The phone number of the sender.", "example" : null }, "showSignatureBox" : { "type" : "boolean", "description" : "Indicates if the signature box is displayed on the quote.", "example" : null }, "status" : { "type" : "string", "description" : "The current status of the quote.", "example" : null }, "terms" : { "type" : "string", "description" : "The terms and conditions associated with the quote.", "example" : null }, "timezone" : { "type" : "string", "description" : "The timezone relevant to the quote.", "example" : null }, "title" : { "type" : "string", "description" : "The title of the quote.", "example" : null }, "type" : { "type" : "string", "description" : "The type of quote, indicating its classification or category.", "example" : null }, "updatedAt" : { "type" : "string", "description" : "The date and time when the quote was last updated.", "format" : "date-time", "example" : null } }, "example" : null } }, "responses" : { "Error" : { "description" : "An error occurred.", "content" : { "*/*" : { "schema" : { "$ref" : "#/components/schemas/Error" }, "example" : null } } } }, "securitySchemes" : { "developer_hapikey" : { "type" : "apiKey", "name" : "hapikey", "in" : "query" }, "oauth2" : { "type" : "oauth2", "flows" : { "authorizationCode" : { "authorizationUrl" : "https://app.hubspot.com/oauth/authorize", "tokenUrl" : "https://api.hubapi.com/oauth/v1/token", "scopes" : { "contracts-read" : "", "revenue-contracts-public-api-write" : "" } } } }, "private_apps" : { "type" : "apiKey", "name" : "private-app", "in" : "header" }, "private_apps_legacy" : { "type" : "apiKey", "name" : "private-app-legacy", "in" : "header" } } }, "x-hubspot-product-tier-requirements" : { "marketing" : "FREE", "sales" : "FREE", "service" : "FREE", "cms" : "FREE", "commerce" : "FREE", "crmHub" : "FREE", "dataHub" : "FREE" } }