Suger website screenshot

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

OPEN

Pricing Plans

Suger Plans Pricing

3 plans

PLANS

Rate Limits

Suger Rate Limits

5 limits

RATE LIMITS

FinOps

Suger Finops

FINOPS

Semantic Vocabularies

Suger Context

16 classes · 7 properties

JSON-LD

API Governance Rules

Suger API Rules

9 rules · 3 errors 6 warnings

SPECTRAL

JSON Structure

Suger Product Structure

0 properties

JSON STRUCTURE

Example Payloads

Suger List Products Example

4 fields

EXAMPLE

Resources

🔗
LinkedIn
LinkedIn
🌐
Portal
Portal
🔗
Documentation
Documentation
🔗
Website
Website
📦
SDKs
SDKs
🚀
GettingStarted
GettingStarted
💰
Pricing
Pricing

Sources

Raw ↑
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