Dealhubio Settings API
The Settings API from Dealhubio — 22 operation(s) for settings.
The Settings API from Dealhubio — 22 operation(s) for settings.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/dealhubio:dealhubio-settings-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 1.0.0
title: Subskribe Settings API
servers:
- url: https://api.app.subskribe.com
security:
- ApiKeyAuth: []
tags:
- name: Settings
paths:
/settings:
get:
tags:
- Settings
summary: Get tenant settings
description: Returns all tenant settings for your tenant.
operationId: getTenantSetting
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TenantSettingJson'
put:
tags:
- Settings
summary: Update tenant settings
description: Updates settings for your tenant.
operationId: updateTenantSetting
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TenantSettingJson'
description: json representation of the settings
required: true
responses:
default:
description: successful operation
/settings/autoReplacePlans:
get:
tags:
- Settings
summary: Get plan replacement settings
description: Gets plan replacement settings
operationId: getAutoReplacePlans
responses:
default:
description: successful operation
put:
tags:
- Settings
summary: Update plan replacement settings
operationId: updateAutoReplacePlans
requestBody:
content:
application/json:
schema:
type: boolean
responses:
default:
description: successful operation
/settings/billingCycle:
get:
tags:
- Settings
summary: Get current billing cycle definitions
description: ''
operationId: getBillingCycleDefinitions
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/BillingCycleDefinitionJson'
post:
tags:
- Settings
summary: Add new billing cycle definition
description: ''
operationId: addBillingCycleDefinition
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BillingCycleDefinitionAdd'
description: json representation of the billing cycle definition
required: true
responses:
default:
description: successful operation
/settings/billingCycle/setDefault:
post:
tags:
- Settings
summary: Set billing cycle with given id as default
description: ''
operationId: setDefaultBillingCycleDefinition
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DefaultBillingCycleDefinitionInput'
description: id of the billing cycle definition to set as default. If no id is provided, no default definition is set and all definitions have isDefault set to false.
required: true
responses:
default:
description: successful operation
/settings/billingCycle/{id}:
get:
tags:
- Settings
summary: Get billing cycle definition by id
description: ''
operationId: getBillingCycleDefinition
parameters:
- name: id
in: path
description: id of the billing cycle definition
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/BillingCycleDefinitionJson'
put:
tags:
- Settings
summary: Update billing cycle definition
description: ''
operationId: updateBillingCycleDefinition
parameters:
- name: id
in: path
description: id of the billing cycle definition
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/BillingCycleDefinitionUpdateJson'
description: json representation of the billing cycle definition update
required: true
responses:
default:
description: successful operation
/settings/docxSettings:
put:
tags:
- Settings
summary: Update DOCX settings
description: Update DOCX settings for your tenant
operationId: updateDocxSettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DocxSettings'
responses:
default:
description: successful operation
/settings/paymentTerms:
get:
tags:
- Settings
summary: Get payment term settings
description: ''
operationId: getPaymentTermSettings
responses:
default:
description: successful operation
put:
tags:
- Settings
summary: Update payment term settings
description: ''
operationId: updatePaymentTermSettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentTermSettingsJson'
description: json representation of the payment term settings
required: true
responses:
default:
description: successful operation
/settings/supportedCurrencies:
get:
tags:
- Settings
summary: Get supported currencies
description: Get supported currencies for your tenant
operationId: getSupportedCurrencies
responses:
default:
description: successful operation
put:
tags:
- Settings
summary: Update supported currencies
description: Update supported currencies for your tenant
operationId: updateSupportedCurrencies
requestBody:
$ref: '#/components/requestBodies/postInvoicesForBulkInvoiceRunBody'
responses:
default:
description: successful operation
/settings/ui/customizations:
get:
tags:
- Settings
summary: Fetch UI customization config for the tenant
description: ''
operationId: getTenantUICustomizationConfig
responses:
default:
description: successful operation
post:
tags:
- Settings
summary: Update UI customization config for the tenant
description: ''
operationId: updateTenantUICustomizationConfig
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TenantUiCustomization'
responses:
default:
description: successful operation
delete:
tags:
- Settings
summary: Remove UI customization config for the tenant
description: ''
operationId: deleteTenantUICustomizationConfig
responses:
default:
description: successful operation
/taxrates:
get:
tags:
- Settings
summary: Get tax rates
description: Get all available tax rates. The result is paginated. To retrieve all results pass the cursor returned from a call to the next call until all results are returned.
operationId: getTaxRates
parameters:
- name: cursor
in: query
required: false
schema:
type: string
format: uuid
- name: limit
in: query
required: false
schema:
type: integer
format: int32
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRatePaginationResponseJson'
post:
tags:
- Settings
summary: Add tax rate
description: Add a new tax rate object
operationId: addTaxRate
requestBody:
$ref: '#/components/requestBodies/TaxRateJson'
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRateJson'
/taxrates/strategies:
get:
tags:
- Settings
summary: Get tax rate strategies
description: Get all available tax rate strategies. The result is paginated unless fetchAll=true. To retrieve all results pass the cursor returned from a call to the next call until all results are returned.
operationId: getTaxRateStrategies
parameters:
- name: limit
in: query
description: number of items per page
required: false
schema:
type: integer
format: int32
- name: pageToken
in: query
description: pass this to subsequent calls
required: false
schema:
type: integer
format: int64
- name: fetchAll
in: query
description: if true, returns all strategies ignoring pagination
required: false
schema:
type: boolean
default: false
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRateStrategyPaginatedResponse'
post:
tags:
- Settings
summary: Add tax rate strategy
description: Add a new tax rate strategy object
operationId: addTaxRateStrategy
requestBody:
$ref: '#/components/requestBodies/TaxRateStrategyJson'
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRateStrategyJson'
/taxrates/strategies/{id}:
get:
tags:
- Settings
summary: Get all tax rate strategies by Id
description: Retrieves all tax rate strategy objects with the given Id
operationId: getTaxRateStrategiesById
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/TaxRateStrategyJson'
delete:
tags:
- Settings
summary: Delete all tax rate strategies by Id
description: Deletes all tax rate strategy objects with the given Id
operationId: deleteAllTaxRateStrategiesById
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
default:
description: successful operation
/taxrates/strategies/{id}/{countryCode}:
get:
tags:
- Settings
summary: Get tax rate strategy by Id and Country Code
description: Retrieves the tax rate strategy object by Id and Country Code
operationId: getTaxRateStrategy
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: countryCode
in: path
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRateStrategyJson'
put:
tags:
- Settings
summary: Update tax rate strategy
description: Updates the specific tax rate strategy object
operationId: updateTaxRateStrategy
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: countryCode
in: path
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/TaxRateStrategyJson'
responses:
default:
description: successful operation
delete:
tags:
- Settings
summary: Delete tax rate strategy
description: Deletes the tax rate strategy object by Id and Country Code
operationId: deleteTaxRateStrategy
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: countryCode
in: path
required: true
schema:
type: string
responses:
default:
description: successful operation
/taxrates/{id}:
get:
tags:
- Settings
summary: Get tax rate by Id
description: Retrieves the tax rate object by Id
operationId: getTaxRate
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRateJson'
put:
tags:
- Settings
summary: Update tax rate
description: Updates the specific tax rate object
operationId: updateTaxRate
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
$ref: '#/components/requestBodies/TaxRateJson'
responses:
default:
description: successful operation
delete:
tags:
- Settings
summary: Delete tax rate
description: Deletes the tax rate object by Id. If successful the deleted tax rate object is returned
operationId: deleteTaxRate
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRateJson'
/tenants:
get:
tags:
- Settings
summary: Get tenant details
description: Get the details of the current tenant
operationId: getTenant
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TenantJson'
put:
tags:
- Settings
summary: Update tenant details
description: Updates the details of the current tenant based on the input
operationId: updateTenant
requestBody:
$ref: '#/components/requestBodies/TenantJson'
responses:
default:
description: successful operation
/tenants/logo:
get:
tags:
- Settings
summary: Get tenant logo
description: Get the current logo stored
operationId: getTenantLogo
responses:
default:
description: successful operation
put:
tags:
- Settings
summary: Update tenant logo
description: Updates the logo used in external facing communication such as order forms and invoices
operationId: uploadTenantLogo
requestBody:
$ref: '#/components/requestBodies/uploadApprovalMatrixCSV'
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/TenantJson'
/termsections:
get:
tags:
- Settings
summary: Get predefined terms sections
description: Returns predefined terms sections.
operationId: getTermSections
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/DocumentSection'
post:
tags:
- Settings
summary: Add predefined terms section
description: Adds a predefined terms section.
operationId: addTermSection
requestBody:
$ref: '#/components/requestBodies/DocumentSection'
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/DocumentSection'
/termsections/{id}:
get:
tags:
- Settings
summary: Get predefined terms section detail
description: Returns predefined terms section detail.
operationId: getTermSection
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/DocumentSection'
put:
tags:
- Settings
summary: Update predefined terms section
description: Updates the predefined terms section specified.
operationId: updateTermSection
parameters:
- name: id
in: path
required: true
schema:
type: string
requestBody:
$ref: '#/components/requestBodies/DocumentSection'
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/DocumentSection'
delete:
tags:
- Settings
summary: Delete predefined terms section
description: Deletes the predefined terms section specified.
operationId: deleteTermSection
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
default:
description: successful operation
/unitsOfMeasure:
get:
tags:
- Settings
summary: Get units of measure
description: Returns a paginated list of units of measure
operationId: getUnitsOfMeasure
parameters:
- name: cursor
in: query
required: false
schema:
type: string
format: uuid
- name: limit
in: query
required: false
schema:
type: integer
format: int32
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/UnitOfMeasurePaginationResponseJson'
post:
tags:
- Settings
summary: Add unit of measure
description: Add a new instance of unit of measure as specified by the input
operationId: addUnitOfMeasure
requestBody:
$ref: '#/components/requestBodies/UnitOfMeasureJson'
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/UnitOfMeasureJson'
/unitsOfMeasure/{id}:
put:
tags:
- Settings
summary: Update unit of measure
description: Update the unit of measure by Id provided.
operationId: updateUnitOfMeasure
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
requestBody:
$ref: '#/components/requestBodies/UnitOfMeasureJson'
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/UnitOfMeasureJson'
delete:
tags:
- Settings
summary: Delete unit of measure
description: Delete the unit of measure by Id provided. Returns the deleted unit of measure object if successful.
operationId: deleteUnitOfMeasure
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/UnitOfMeasureJson'
/unitsOfMeasure/{id}/activate:
post:
tags:
- Settings
summary: Activate unit of measure
description: Activates the specified unit of measure making it available to be attached to charges
operationId: activateUnitOfMeasure
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
responses:
default:
description: successful operation
/unitsOfMeasure/{id}/deprecate:
post:
tags:
- Settings
summary: Deprecate unit of measure
description: Deprecates the specified unit of measure making it unavailable to be attached to charges going forward
operationId: deprecateUnitOfMeasure
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
responses:
default:
description: successful operation
components:
schemas:
DefaultValueDefinition:
type: object
properties:
path:
type: string
value:
type: string
TenantSettingJson:
type: object
properties:
defaultTimeZone:
type: string
supportedCurrencies:
type: array
items:
type: string
percentDerivedFrom:
type: string
enum:
- LIST_AMOUNT
- SELL_AMOUNT
tenantSettingSeal:
type: string
enum:
- 'ON'
- 'OFF'
orderExpiryDurationInDays:
type: string
signingOrder:
type: string
enum:
- ACCOUNT_FIRST
- TENANT_FIRST
- ACCOUNT_ONLY
globalBccEmail:
type: string
isUpdateOrderStartDateEnabled:
type: boolean
autoReplacePlans:
type: boolean
isDocxAdminOnly:
type: boolean
isDocxPasswordProtected:
type: boolean
TaxRateStrategyJson:
type: object
required:
- taxRateId
properties:
id:
type: string
name:
type: string
countryCode:
type: string
taxRateId:
type: string
format: uuid
UnitOfMeasurePaginationResponseJson:
type: object
properties:
data:
type: array
readOnly: true
items:
$ref: '#/components/schemas/UnitOfMeasureJson'
numElements:
type: integer
format: int32
readOnly: true
nextCursor:
type: string
format: uuid
readOnly: true
BillingCycleDefinitionJson:
type: object
properties:
id:
type: string
readOnly: true
name:
type: string
readOnly: true
recurrence:
$ref: '#/components/schemas/RecurrenceJson'
status:
type: string
readOnly: true
enum:
- ACTIVE
- INACTIVE
isDefault:
type: boolean
readOnly: true
Condition:
type: object
properties:
key:
type: string
checks:
type: array
items:
type: string
enum:
- required
- empty
defaultValue:
type: string
DocxSettings:
type: object
properties:
isDocxAdminOnly:
type: boolean
isDocxPasswordProtected:
type: boolean
BillingCycleDefinitionUpdateJson:
type: object
required:
- status
properties:
name:
type: string
readOnly: true
status:
type: string
readOnly: true
enum:
- ACTIVE
- INACTIVE
BillingCycleDefinitionAdd:
type: object
properties:
name:
type: string
readOnly: true
recurrence:
$ref: '#/components/schemas/RecurrenceJson'
status:
type: string
readOnly: true
enum:
- ACTIVE
- INACTIVE
TenantJson:
type: object
properties:
tenantId:
type: string
name:
type: string
email:
type: string
phoneNumber:
type: string
address:
$ref: '#/components/schemas/AccountAddressJson'
sourceInitiator:
type: string
readOnly: true
enum:
- CPQ
- BILLY
companyDomain:
type: string
cfacId:
type: integer
format: int64
isSandbox:
type: boolean
hasSalesforceIntegration:
type: boolean
readOnly: true
isDeleted:
type: boolean
isTest:
type: boolean
hasHubSpotIntegration:
type: boolean
readOnly: true
hasSso:
type: boolean
readOnly: true
createdOn:
type: integer
format: int64
readOnly: true
tenantSetting:
$ref: '#/components/schemas/TenantSettingJson'
RecurrenceJson:
type: object
required:
- cycle
- step
properties:
cycle:
type: string
enum:
- DAY
- MONTH
- QUARTER
- SEMI_ANNUAL
- YEAR
- PAID_IN_FULL
- CUSTOM
step:
type: integer
format: int32
minimum: 1
AccountAddressJson:
type: object
properties:
streetAddressLine1:
type: string
description: Address Line 1 of the Contact
streetAddressLine2:
type: string
description: Address Line 2 of the Contact
streetAddressLine3:
type: string
description: Address Line 3 of the Contact
city:
type: string
description: City of the Contact
state:
type: string
description: State Code of the Contact (ISO 3166-2 state/province code). Currently supported for USA, Canada. For instance, for Arizona (USA), set state as AZ (not US-AZ).For British Columbia (Canada), set as BC (not CA-BC)
country:
type: string
description: Country Code of the Contact ( ISO 3166 alpha-2 country code).
zipcode:
type: string
description: Zip or Postal Code of the Contact
TenantUiCustomization:
type: object
required:
- version
properties:
version:
type: string
enum:
- V1_TENANT_LEVEL
customizations:
type: array
items:
$ref: '#/components/schemas/Customization'
TaxRateJson:
type: object
required:
- status
properties:
id:
type: string
format: uuid
name:
type: string
description:
type: string
taxPercentage:
type: number
taxCode:
type: string
taxInclusive:
type: boolean
status:
type: string
enum:
- ACTIVE
- DISABLED
- EXPIRED
inUse:
type: boolean
BackendConfig:
type: object
properties:
id:
type: string
conditions:
type: array
items:
$ref: '#/components/schemas/Condition'
DocumentSection:
type: object
required:
- location
properties:
id:
type: string
format: uuid
entityIds:
type: array
uniqueItems: true
items:
type: string
name:
type: string
minLength: 0
maxLength: 1024
title:
type: string
minLength: 0
maxLength: 1024
location:
type: string
enum:
- BEFORE_SIGNATURE
- AFTER_SIGNATURE
deleted:
type: boolean
UnitOfMeasureJson:
type: object
required:
- status
properties:
id:
type: string
format: uuid
name:
type: string
description:
type: string
status:
type: string
enum:
- DRAFT
- ACTIVE
- DEPRECATED
PaymentTermSettingsJson:
type: object
required:
- customPaymentTermsAllowed
- defaultPaymentTerm
- defaultPaymentTerms
properties:
defaultPaymentTerms:
type: array
readOnly: true
items:
type: string
defaultPaymentTerm:
type: string
readOnly: true
customPaymentTermsAllowed:
type: boolean
readOnly: true
TaxRateStrategyPaginatedResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/TaxRateStrategyJson'
count:
type: integer
format: int32
pageToken:
type: string
totalCount:
type: integer
format: int32
TaxRatePaginationResponseJson:
type: object
properties:
data:
type: array
readOnly: true
items:
$ref: '#/components/schemas/TaxRateJson'
numElements:
type: integer
format: int32
readOnly: true
nextCursor:
type: string
format: uuid
readOnly: true
DefaultBillingCycleDefinitionInput:
type: object
required:
- id
properties:
id:
type: string
readOnly: true
Customization:
type: object
required:
- configType
properties:
id:
type: string
configType:
type: string
enum:
- state
- form
- dgpTable
hidden:
type: boolean
required:
type: boolean
defaultValueSetters:
type: array
items:
$ref: '#/components/schemas/DefaultValueDefinition'
columnOrdering:
type: array
items:
type: string
columnDefaultInvisible:
type: array
items:
type: string
backend:
$ref: '#/components/schemas/BackendConfig'
requestBodies:
uploadApprovalMatrixCSV:
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: string
format: binary
UnitOfMeasureJson:
content:
application/json:
schema:
$ref: '#/components/schemas/UnitOfMeasureJson'
TaxRateStrategyJson:
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRateStrategyJson'
postInvoicesForBulkInvoiceRunBody:
content:
application/json:
schema:
type: array
items:
type: string
DocumentSection:
content:
application/json:
schema:
$ref: '#/components/schemas/DocumentSection'
TenantJson:
content:
application/json:
schema:
$ref: '#/components/schemas/TenantJson'
TaxRateJson:
content:
application/json:
schema:
$ref: '#/components/schemas/TaxRateJson'
securitySchemes:
ApiKeyAuth:
type: apiKey
in: header
name: X-API-Key
x-provenance:
method: searched
source: https://developers.dealhub.io/reference
harvested: '2026-10-22'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://developers.dealhub.io/reference/acceptsalesroom.md
- https://developers.dealhub.io/reference/acceptsalesroom_1.md
# --- truncated at 32 KB (69 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dealhubio/refs/heads/main/openapi/dealhubio-settings-api-openapi.yml