Suger
Suger is the fastest and easiest way for ISVs to list, transact, and co-sell on cloud marketplaces including AWS Marketplace, Azure Marketplace, GCP Marketplace, and Snowflake Marketplace. Suger provides a full API for managing products, offers, entitlements, buyers, usage metering, and revenue reporting.
1 APIs
0 Features
Cloud MarketplaceGTMSaaSBillingEntitlementRevenueCo-Sell
APIs
Suger API
CRUD operations on cloud marketplace resources including organizations, products, offers, entitlements, buyers, usage record groups, billing metrics, invoices, and revenue repor...
Collections
Suger API
OPENPricing Plans
Rate Limits
FinOps
Suger Finops
FINOPSSemantic Vocabularies
API Governance Rules
JSON Structure
Example Payloads
Resources
🔗
LinkedIn
LinkedIn
🌐
Portal
Portal
🔗
Documentation
Documentation
🔗
Website
Website
📦
SDKs
SDKs
🚀
GettingStarted
GettingStarted
💰
Pricing
Pricing
Sources
opencollection: 1.0.0
info:
name: Suger API
version: '1.0'
items:
- info:
name: Billing
type: folder
items:
- info:
name: List Addons
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/addon
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: limit
value: ''
type: query
description: List pagination size, default 1000, max value is 1000
- name: offset
value: ''
type: query
description: List pagination offset, default 0
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: List all addon templates
- info:
name: Create Addon
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/addon
params:
- name: orgId
value: ''
type: path
description: Organization ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Create an addon template
- info:
name: Get Addon
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/addon/:addonId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: addonId
value: ''
type: path
description: Addon ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Get an addon template
- info:
name: Update Addon
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/addon/:addonId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: addonId
value: ''
type: path
description: Addon ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Update an addon template
- info:
name: Delete Addon
type: http
http:
method: DELETE
url: https://api.suger.cloud/org/:orgId/addon/:addonId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: addonId
value: ''
type: path
description: Addon ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Soft delete an addon template
- info:
name: List Refunds.
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId/paymentTransaction/:paymentTransactionId/refund
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
- name: paymentTransactionId
value: ''
type: path
description: Payment transaction ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: list refunds of the payment transactions.
- info:
name: Create Refund.
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId/paymentTransaction/:paymentTransactionId/refund
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
- name: paymentTransactionId
value: ''
type: path
description: Payment transaction ID
- name: amount
value: ''
type: query
description: Refund amount
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: create refund on the payment transaction, support partial refunds multiple times.
- info:
name: List Invoices
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/invoice
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: entitlementId
value: ''
type: query
description: Optional, filter by the entitlement ID
- name: buyerId
value: ''
type: query
description: Optional, filter by the given buyer ID
- name: status
value: ''
type: query
description: Optional, filter by invoice status as filter, if not provided, all status invoices are returned
- name: limit
value: ''
type: query
description: List pagination size, default 1000, max value is 1000
- name: offset
value: ''
type: query
description: List pagination offset, default 0
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: List invoices with pagination and filter by status (optional)
- info:
name: Get Invoice
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/invoice/:invoiceId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: invoiceId
value: ''
type: path
description: Invoice ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Get the invoice by ID
- info:
name: Update Invoice Info
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/invoice/:invoiceId/info
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: invoiceId
value: ''
type: path
description: Invoice ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Update a draft invoice. Only DueDate, OverallDiscount, and Memo can be updated.
- info:
name: Issue Invoice
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/invoice/:invoiceId/issue
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: invoiceId
value: ''
type: path
description: Invoice ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Issue the invoice immediately. It can be used for manual issue or reissue invoice.
- info:
name: Pay Invoice
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/invoice/:invoiceId/pay
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: invoiceId
value: ''
type: path
description: Invoice ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Initiate the payment for the invoice immediately. It can be used for manual payment or retry payment.
- info:
name: Preview Invoice Email
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/invoice/:invoiceId/preview
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: invoiceId
value: ''
type: path
description: Invoice ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Returns the preview HTML content of the invoice issued email.
- info:
name: Void Invoice
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/invoice/:invoiceId/void
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: invoiceId
value: ''
type: path
description: Invoice ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Void the invoice. It can be used for manual void or cancel the invoice.
- info:
name: List Payment Transactions
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/paymentTransaction
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: query
description: Optional, filter by the given buyer ID
- name: entitlementId
value: ''
type: query
description: Optional, filter by the given entitlement ID
- name: invoiceId
value: ''
type: query
description: Optional, filter by the given invoice ID
- name: status
value: ''
type: query
description: Optional, filter by status
- name: type
value: ''
type: query
description: Optional, filter by transaction type
- name: limit
value: ''
type: query
description: List pagination size, default 1000, max value is 1000
- name: offset
value: ''
type: query
description: List pagination offset, default 0
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: List payment transactions with pagination and filters
- info:
name: API
type: folder
items:
- info:
name: List Api Clients
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/apiClient
params:
- name: orgId
value: ''
type: path
description: Organization ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: List all API clients in the given organization.
- info:
name: Get Api Client
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/apiClient/:apiClientId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: apiClientId
value: ''
type: path
description: API client ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Get the API client by ID.
- info:
name: Metering
type: folder
items:
- info:
name: Batch Report UsageRecordGroups
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/batchCreateUsageRecordGroups
params:
- name: orgId
value: ''
type: path
description: Organization ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Batch report new usage record groups.
- info:
name: Batch Validate UsageRecordGroups
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/batchValidateUsageRecordGroups
params:
- name: orgId
value: ''
type: path
description: Organization ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Provide a batch of usage record groups and validate each individual usage record group one by one.
- info:
name: List Billable Metrics
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/billableMetric
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: status
value: ''
type: query
description: Status of the billable metric
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: list billable metrics for the given organization.
- info:
name: Create Billable Metric
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/billableMetric
params:
- name: orgId
value: ''
type: path
description: Organization ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Create a new billable metric for the given organization.
- info:
name: Get Billable Metric
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/billableMetric/:billableMetricId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: billableMetricId
value: ''
type: path
description: Billable Metric ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Get the billable metric for the given organization and billable metric ID.
- info:
name: Update Billable Metric
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/billableMetric/:billableMetricId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: billableMetricId
value: ''
type: path
description: Billable Metric ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Update the name, description and status of the billable metric for the given organization.
- info:
name: Report UsageRecordGroup
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/entitlement/:entitlementId/usageRecordGroup
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: entitlementId
value: ''
type: path
description: Entitlement ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: It is recommended to provide the ID in the request body CreateUsageRecordGroupParams, so the report can be deduplicated.
All duplicate report will return error code 409.
- info:
name: Get Usage Metering Config Info
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/usageMeteringConfigInfo
params:
- name: orgId
value: ''
type: path
description: Organization ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Get the usage metering config info of the given organization.
- info:
name: Update Usage Metering Config Info
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/usageMeteringConfigInfo
params:
- name: orgId
value: ''
type: path
description: Organization ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Update the usage metering config info of the given organization.
- info:
name: List UsageRecordGroups
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/usageRecordGroup
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: partner
value: ''
type: query
description: Cloud Partner
- name: buyerId
value: ''
type: query
description: filter by buyer ID, default no filter by buyerId if not provided
- name: entitlementId
value: ''
type: query
description: filter by entitlement ID, default no filter by entitlementId if not provided
- name: status
value: ''
type: query
description: The status of the usage record group, default no filter by status if not provided
- name: source
value: ''
type: query
description: The source of the usage record group, default no filter by source if not provided
- name: metaInfo
value: ''
type: query
description: metaInfo filter
- name: startDate
value: ''
type: query
description: start date (UTC) in YYYY-MM-DD format, default is 30 days before the endDate
- name: endDate
value: ''
type: query
description: end date (UTC) in YYYY-MM-DD format, default is today
- name: limit
value: ''
type: query
description: List pagination size, default 1000, max value is 1000
- name: offset
value: ''
type: query
description: List pagination offset, default 0
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: 'List UsageRecordGroups by the given organization, partner, product, entitlement or buyer. Only provide one or none
of the optional query parameters: partner, productId, entitlementId & buyerId .'
- info:
name: Delete UsageRecordGroup
type: http
http:
method: DELETE
url: https://api.suger.cloud/org/:orgId/usageRecordGroup/:usageRecordGroupId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: usageRecordGroupId
value: ''
type: path
description: UsageRecordGroup ID
- name: creationDate
value: ''
type: query
description: UsageRecordGroup's creation date (UTC) in YYYY-MM-DD format
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: delete the UsageRecordGroup for the given organization and usageRecordGroup ID. Only usageRecordGroup with status
"CREATED" or "INVALID" can be deleted.
- info:
name: Retry UsageRecordGroup
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/usageRecordGroup/:usageRecordGroupId/retry
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: usageRecordGroupId
value: ''
type: path
description: UsageRecordGroup ID
- name: creationDate
value: ''
type: query
description: UsageRecordGroup's creation date (UTC) in YYYY-MM-DD format
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Retry the given UsageRecordGroup by setting from status "REPORT_FAILED" to "CREATED", and it will be ready for the
next hourly report. Only usageRecordGroup with status "REPORT_FAILED" can be retried.
- info:
name: List UsageRecordReports
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/usageRecordReport
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: partner
value: ''
type: query
description: Cloud Partner
- name: buyerId
value: ''
type: query
description: buyer ID
- name: entitlementId
value: ''
type: query
description: entitlement ID
- name: startDate
value: ''
type: query
description: start date (UTC) in YYYY-MM-DD format, default is 30 days before the endDate
- name: endDate
value: ''
type: query
description: end date (UTC) in YYYY-MM-DD format, default is today
- name: limit
value: ''
type: query
description: List pagination size, default 1000, max value is 1000
- name: offset
value: ''
type: query
description: List pagination offset, default 0
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: List usageRecordReports under the given organization, partner, entitlement or buyer, within the given time range
and pagination.
- info:
name: Buyer
type: folder
items:
- info:
name: List Buyers
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/buyer
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: partner
value: ''
type: query
description: filter by partner
- name: contactId
value: ''
type: query
description: filter by contactId
- name: awsAccountId
value: ''
type: query
description: filter by awsAccountId
- name: limit
value: ''
type: query
description: List pagination size, default 1000, max value is 1000
- name: offset
value: ''
type: query
description: List pagination offset, default 0
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: list buyers by the given organization with pagination and optional filters.
- info:
name: Create Buyer
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/buyer
params:
- name: orgId
value: ''
type: path
description: Organization ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: create a new buyer for Stripe or Adyen under the given organization.
- info:
name: Get Buyer
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: get buyer by the given organization and buyer id.
- info:
name: Update Buyer
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: update buyer by the given organization and buyer id.
- info:
name: List Buyer's Wallets
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId/wallet
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: list all wallets of a buyer.
- info:
name: Create Credit Wallet
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId/wallet
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: create a new credit wallet for the buyer.
- info:
name: Update Credit Wallet
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId/wallet/:walletId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
- name: walletId
value: ''
type: path
description: Wallet ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: update startTime or expireTime of the wallet.
- info:
name: Delete Buyer Wallet
type: http
http:
method: DELETE
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId/wallet/:walletId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
- name: walletId
value: ''
type: path
description: Wallet ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: delete a wallet of the buyer, if it's a payment method, sync to payment provider too.
- info:
name: Close Credit Wallet
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId/wallet/:walletId/close
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
- name: walletId
value: ''
type: path
description: Wallet ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Close the given credit wallet, if it's a payment method, sync to payment provider too. Once closed, it can't be
used for payment.
- info:
name: Set Buyer Default Wallet
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/buyer/:buyerId/wallet/:walletId/default
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
- name: walletId
value: ''
type: path
description: Wallet ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: set a payment method wallet as buyer's default wallet.
- info:
name: Contact
type: folder
items:
- info:
name: List Contacts By Organization
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/contact
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: limit
value: ''
type: query
description: List pagination size, default 1000, max value is 1000
- name: offset
value: ''
type: query
description: List pagination offset, default 0
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: List all contacts under the given organization.
- info:
name: Create Contact
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/contact
params:
- name: orgId
value: ''
type: path
description: Organization ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Create a contact under the given organization. If the email address already exists, return the existing contact.
- info:
name: Get Contact
type: http
http:
method: GET
url: https://api.suger.cloud/org/:orgId/contact/:contactId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: contactId
value: ''
type: path
description: Contact ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: Get the Contact by the given contact ID.
- info:
name: Update Contact
type: http
http:
method: PATCH
url: https://api.suger.cloud/org/:orgId/contact/:contactId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: contactId
value: ''
type: path
description: Contact ID
body:
type: json
data: '{}'
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: update contact by the given organization and buyer id. The given name and information should be complete. Please
note that this function does not support partial updates.
- info:
name: Add Contact To Buyer
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/contact/:contactId/buyer/:buyerId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
- name: contactId
value: ''
type: path
description: Contact ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: add contact to buyer by the given organization, buyer id and contact id.
- info:
name: Remove Contact From Buyer
type: http
http:
method: DELETE
url: https://api.suger.cloud/org/:orgId/contact/:contactId/buyer/:buyerId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: buyerId
value: ''
type: path
description: Buyer ID
- name: contactId
value: ''
type: path
description: Contact ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: remove contact from buyer by the given organization, buyer id and contact id.
- info:
name: Add Contact To Offer
type: http
http:
method: POST
url: https://api.suger.cloud/org/:orgId/contact/:contactId/offer/:offerId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: contactId
value: ''
type: path
description: Contact ID
- name: offerId
value: ''
type: path
description: Offer ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: add contact to offer by the given organization, offer id and contact id.
- info:
name: Remove Contact From Offer
type: http
http:
method: DELETE
url: https://api.suger.cloud/org/:orgId/contact/:contactId/offer/:offerId
params:
- name: orgId
value: ''
type: path
description: Organization ID
- name: contactId
value: ''
type: path
description: Contact ID
- name: offerId
value: ''
type: path
description: Offer ID
auth:
type: apikey
key: Authorization
value: '{{Authorization}}'
placement: header
docs: remove contact from offer by given organization, off
# --- truncated at 32 KB (72 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/suger/refs/heads/main/apis.yml