MonetizeNow Subscription API

Subscriptions are things your customers have been sold or signed up for that can be billed on a recurring basis.

Operations 4

GET /api/accounts/{accountId}/subscriptions Get a list of subscriptions by providing an accountId #
GET /api/billGroups/{billGroupId}/subscriptions Get a list of subscriptions by providing a billGroupId #
GET /api/billGroups/{billGroupId}/subscriptions/{subscriptionId} Get a list of subscriptions by providing a billGroupId and a subscriptionId #
GET /api/subscriptions/{subscriptionId} Get subscription by Id #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/monetizenow-subscription-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

monetizenow-subscription-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OpenAPI definition Subscription API
  version: v0
  description: "# About MonetizeNow\n\nMonetizeNow provides a Quoting, Billing, and Usage platform built for the B2B SaaS enterprise. Our platform simplifies monetization for SMBs by uniting these functions in a single application.\n\n<img src=\"https://i.ibb.co/VDN53ZF/MNArch.png\">\n\n## Core Platform Features\n\nMonetizeNow provides:\n\n- Product catalog specifically built to handle enterprise-grade selling complexity of subscriptions, one-time, and usage.\n- A single system that supports all your sales channels natively: self-serve, CRM, Partners, In-Product, and Marketplaces.\n- Complex enterprise quoting, flexible rules and approval engine, E-sign, Clean order forms\n- Broad API support for integrating with existing and future systems.\n    \n\n# Getting Started with MonetizeNow APIs\n\nThe MonetizeNow APIs are RESTful libraries that enable developers to integrate with the MonetizeNow platform for the complete revenue life cycle.\n\n## Authentication\n\nThe preferred authentication method is a generated API key.\n\n### Getting an API Key\n\nYou can request your API Key from your MonetizeNow tenant:\n\n1. Navigate to the **Settings -> API Keys** page to generate an API key for your tenant.\n    \n\n<img src=\"https://i.ibb.co/QMvvLtL/MNAPIKey.png\">\n\n1. Click **New Api Key**.\n2. Enter a name for the key as an identifier.\n3. Click **Ok**.\n    \n\n<img src=\"https://i.ibb.co/7WQM27b/MNKey-Sample.png\">\n\n1. Copy and store your key in a safe place.  \n    For security reasons, this is the only time we display it.\n2. Click **Ok**.\n    \n\nYou can now use this API key to interact with all MonetizeNow APIs.\n\n## Pagination\n\nThe MonetizeNow API provides pagination attributes for methods that return multiple records.\n\n**pageSize**\\=n  \npageSize indicates the number of elements in the page.\n\n**currentPage**\\=n  \ncurrentPage indicates the page to start with.\n\nUse currentPage and pageSize to return a sublist from a list of sorted resources where the sort criteria is defaulted or set via API:\n\n`GET /api/accounts?currentPage=3&pageSize=20`\n\n## Error Handling\n\nThe MonetizeNow API follows standard RESTful error handling. It returns the following error types:\n\n| Title | Code | Description |\n| --- | --- | --- |\n| Bad request | 400 | The request submitted was not acceptable. Missing parameters or a malformed request body will produce this error |\n| Resource not found by ID | 404 | The request submitted an identifier that does not match a record for the target entity. |\n| Resource is not in the required state | 409 | The identified resource is not an eligible target. For example, attempting to restore an offering that has not been archived returns a 409. |\n| Internal server error | 500 | An unexpected error occurred. Contact MonetizeNow Support. |\n\n## Webhooks\n\nUse webhooks to integrate MonetizeNow with external services. The following events are supported.\n\n| Entity | Event | Occurs When |\n| --- | --- | --- |\n| Account | account.created | an account is created |\n|  | account.updated | an account is updated |\n| Contact | contact.created | a contact is created |\n|  | contact.updated | a contact is updated |\n| Quote | quote.created | a quote is created |\n|  | quote.updated | a quote is updated |\n|  | quote.accepted | a quote is accepted |\n|  | quote.processed | a quote is processed |\n|  | quote.cancelled | a quote is cancelled |\n|  | quote.offering.created | an offering is added to a quote |\n|  | quote.offering.updated | an offering on a quote is updated |\n|  | quote.offering.deleted | an offering is deleted from a quote |\n| Opportunity | opportunity.created | an opportunity is created |\n|  | opportunity.updated | an opportunity is updated |\n| Offering | offering.created | an offering is created |\n|  | offering.updated | an offering is updated |\n| Contract | contract.created | a contract is created |\n|  | contract.updated | a contract is updated |\n| Rate | rate.created | a rate is created |\n|  | rate.updated | a rate is updated |\n|  | rate.deleted | a rate is deleted |\n|  | price.deleted | a rate's price is deleted |\n| Bill Group | dunning.step.tiggered | a dunning step is triggered |\n\n# Concepts\n\n## Product Catalog\n\nThe core of the MonetizeNow platform is the product catalog.\n\nThe entities that make up the Product Catalog are:\n\n- Product\n- Usage Type\n- Price\n- Offering\n- Rate\n    \n\nThe **Product** is the starting point for any quote, the simplest line item. If that line item has a usage component, then a **Usage Type** is assigned. A single Product has a **Price**. However, a Product can be one of several included in an **Offering**, or bundle. Offerings are available at one \\*_Rate \\*_or more. A Rate is a different way to price products and model an offering. You can create multiple Rates of different currencies and billing frequencies.\n\nFor example, the Products in a product catalog might include software access, services, setup fees, and API calls. Your organization may allow a customer to order a single set of 200 API calls, or you may provide a package of support hours and API calls as an Offering. Prices might be directly related to set of API calls or calculated by means of an \"Get Started\" Offering and Rate for API access.\n\n## Accounts\n\nAccounts represent your existing and potential customers.\n\nThe entities related to account records include:\n\n- Contacts\n- Bill Groups\n- Subscriptions\n- Quotes\n- Contracts\n- Invoices\n- Credits\n- Payments\n    \n\nEach **Account** represents a current or potential customer. **Contacts** are people your organization has interacted with. **Bill Groups** represent departments, divisions, or other separate destinations for billing within that business. A **Subscription** represents a renewable request for an **Offering**. A **Quote** is a formal statement of what is being ordered and how much the items will cost. A **Contract** stores information on the Subscriptions that have been quoted and captures the result of Quote acceptance. An **Invoice** results from the agreement to make a purchase. It includes items and costs, as well as payment conditions. An Invoice might include **Credits** as adjustments to the Invoice, reducing the final amount due.\n\nFor example, you might have an Account with Acme, Inc. During the sales process, your team has interacted with John, Paul, and Janis, who are now Contacts. John and Paul are in the Construction Bill Group, while Janis is in the Demolition Bill Group, reflecting their organization's structure and different payment policies. Once Janis requests a Quote for Offering A, your team adds that Offering to her Subscription. A Contract is included to specify the parameters of customer support limitations for onboarding. When Janis agrees to the purchase, your team generates an Invoice, including Credits for participation in a webinar.\n\n### Bill Day and Invoices\n\nEach **Bill Group** has a **Bill Day** field. Bill Day specifies the day of the month on which **Invoices** will be generated. Bill Day defaults to the day on which the Bill Group was created unless you specify an alternate number in the Bill Day field.\n\n### Quotes and Future Start Dates\n\nYou might set the **Start Date** of a **Quote** to a future date, maybe to align with your customer's budgeting process. That date automatically applies to the associated **Contract**. In this case, both the Contract and the quoted **Subscriptions** remain in a Pending state until the Start Date.\n\n### Payment Methods\n\nThe **Payment Methods** available to a **Bill Group** represent the payment service providers you have integrated with your MonetizeNow tenant. Payments made through integrated gateways are reflected in **Payment** records credited to the Bill Group.\n\n# Sample Workflows\n\n## Sending Usage/Consumption Data\n\nSending Usage Events to the MonetizeNow Usage Service requires calls to both the CPQ/Billing API and the Usage API. Here's a basic workflow:\n\n| Task | Call |\n| --- | --- |\n| Get Subscriptions for Account | GET /api/accounts/{accountId}/subscriptions |\n| Determine which Usage Types apply to each Subscription |  |\n| Post usage Events by Subscription | POST /events |\n\n# Object Life Cycles\n\n## Quotes\n\nThe Quote life cycle depends on whether the request for a new quote is actually a renewal or amendment of an existing quote. Event for a customer who has ordered before, any difference in the underlying contract makes a the new quote route necessary. The following diagram outlines the differences in the life cycles of new quotes and renewals.\n\n<img src=\"https://i.ibb.co/YyFztCC/Quote-Life-Cycle.png\">\n\n<!-- stackedit_data:<br>eyJoaXN0b3J5IjpbLTE0ODQxMzYzMzksLTExMDMyOTg1MzEsMT<br>M2MTI2MDY3MywtMTUwMTM1NjU1NywzODU3MzI2OTAsMjA1NTI2<br>NDUzMywtMjE0Mjk1NDY3NCwtMzYzNzk4NzAyLC0xNTEyNzQ4OD<br>Q2XX0=<br> -->"
servers:
- url: https://api.monetizeplatform.com
tags:
- name: Subscription
  description: Subscriptions are things your customers have been sold or signed up for that can be billed on a recurring basis.
paths:
  /api/accounts/{accountId}/subscriptions:
    get:
      tags:
      - Subscription
      summary: Get a list of subscriptions by providing an accountId
      description: Get a list of subscriptions by an accountId
      operationId: getSubscriptionByAccountId
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          example: acct_jgPH8G33rELY6
        example: acct_jgPH8G33rELY6
      - name: id
        in: query
        schema:
          type: string
          example: subs_9TkhFbhZ5oY4q
      - name: billGroupId
        in: query
        schema:
          type: string
          example: bilg_tDbC2FxuCwQox
      - name: offeringId
        in: query
        schema:
          type: string
          example: offr_iJuVJLgQKIFc9
      - name: rateId
        in: query
        schema:
          type: string
          example: rate_fvCOerGF0bC8JuV2
      - name: customId
        in: query
        schema:
          type: string
          example: 6b48c3f6-852e-4cd7-b4f4-a35ad60ad483
      - name: description
        in: query
        schema:
          type: string
          example: Netflix Monthly Subscription
      - name: addOn
        in: query
        schema:
          type: string
          example: Add On
      - name: periodStartDate
        in: query
        schema:
          type: string
          example: '2022-04-07'
      - name: periodEndDate
        in: query
        schema:
          type: string
          example: '2022-04-07'
      - name: prorationDate
        in: query
        schema:
          type: string
          example: '2022-04-07'
      - name: billingStatus
        in: query
        schema:
          type: string
          example: ACTIVE
      - name: provisioningStatus
        in: query
        schema:
          type: string
          example: ACTIVE
      - name: sort
        in: query
        schema:
          type: string
          example: 20
      - name: currentPage
        in: query
        schema:
          type: string
          example: 1
      - name: pageSize
        in: query
        schema:
          type: string
          example: 10
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: Get a list of subscriptions by an accountId
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionListDto'
        '400':
          description: Bad Request
        '500':
          description: Internal server error. Please contact the support team.
  /api/billGroups/{billGroupId}/subscriptions:
    get:
      tags:
      - Subscription
      summary: Get a list of subscriptions by providing a billGroupId
      description: Get a list of subscriptions by providing a billGroupId
      operationId: getAllSubscriptionByBillGroupId
      parameters:
      - name: billGroupId
        in: path
        required: true
        schema:
          type: string
          example: bilg_tDbC2FxuCwQox
        example: bilg_tDbC2FxuCwQox
      - name: id
        in: query
        schema:
          type: string
          example: subs_9TkhFbhZ5oY4q
      - name: offeringId
        in: query
        schema:
          type: string
          example: offr_iJuVJLgQKIFc9
      - name: rateId
        in: query
        schema:
          type: string
          example: rate_fvCOerGF0bC8JuV2
      - name: customId
        in: query
        schema:
          type: string
          example: 6b48c3f6-852e-4cd7-b4f4-a35ad60ad483
      - name: description
        in: query
        schema:
          type: string
          example: Netflix Monthly Subscription
      - name: addOn
        in: query
        schema:
          type: string
          example: Add On
      - name: periodStartDate
        in: query
        schema:
          type: string
          example: '2022-04-07'
      - name: periodEndDate
        in: query
        schema:
          type: string
          example: '2022-04-07'
      - name: prorationDate
        in: query
        schema:
          type: string
          example: '2022-04-07'
      - name: billingStatus
        in: query
        schema:
          type: string
          example: ACTIVE
      - name: provisioningStatus
        in: query
        schema:
          type: string
          example: ACTIVE
      - name: sort
        in: query
        schema:
          type: string
          example: 20
      - name: currentPage
        in: query
        schema:
          type: string
          example: 1
      - name: pageSize
        in: query
        schema:
          type: string
          example: 10
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: Get a list of subscriptions by providing a billGroupId
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionListDto'
        '400':
          description: Bad Request
        '500':
          description: Internal server error. Please contact the support team.
  /api/billGroups/{billGroupId}/subscriptions/{subscriptionId}:
    get:
      tags:
      - Subscription
      summary: Get a list of subscriptions by providing a billGroupId and a subscriptionId
      description: Get a list of subscriptions by providing a billGroupId and a subscriptionId
      operationId: getSubscriptionByBillGroupIdAndSubscriptionId
      parameters:
      - name: billGroupId
        in: path
        required: true
        schema:
          type: string
          example: bilg_tDbC2FxuCwQox
        example: bilg_tDbC2FxuCwQox
      - name: subscriptionId
        in: path
        required: true
        schema:
          type: string
          example: subs_9TkhFbhZ5oY4q
        example: subs_9TkhFbhZ5oY4q
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: Get a list of subscriptions by providing a billGroupId and a subscriptionId
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionDetailDto'
        '400':
          description: Bad Request
        '404':
          description: Get object by id
        '500':
          description: Internal server error. Please contact the support team.
  /api/subscriptions/{subscriptionId}:
    get:
      tags:
      - Subscription
      summary: Get subscription by Id
      description: Get subscription by Id
      operationId: getSubscriptionById
      parameters:
      - name: subscriptionId
        in: path
        required: true
        schema:
          type: string
          example: subs_9TkhFbhZ5oY4q
        example: subs_9TkhFbhZ5oY4q
      - name: includeInactiveItems
        in: query
        required: false
        schema:
          type: boolean
          default: false
      - name: x-api-key
        in: header
        description: x-api-key is an authentication or authorization token used in API requests to verify the identity and permissions of the client
        required: true
        schema:
          type: string
          example: TYQ1YzM3NWItZjQzMi00NDYwLTlmOWYtN2UwNzI5YzM2ZmV0
      responses:
        '200':
          description: Get subscription by Id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionDetailDto'
        '400':
          description: Bad Request
        '404':
          description: Get object by id
        '500':
          description: Internal server error. Please contact the support team.
components:
  schemas:
    com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData:
      required:
      - type
      type: object
      properties:
        type:
          type: string
      discriminator:
        propertyName: type
    com.monytyz.billing.catalog.dto.product.ProductDto:
      required:
      - id
      type: object
      properties:
        createdBy:
          type: string
          description: Identifier for the user who created the record
          example: usr_X0XZ05bvkrB1RpLS
        createDate:
          type: string
          description: Timestamp of when the record was created
          format: date-time
        lastModifiedBy:
          type: string
          description: Identifier for the user who last modified the record
          example: usr_X0XZ05bvkrB1RpLS
        modifyDate:
          type: string
          description: Timestamp of when the record was last modified
          format: date-time
        id:
          type: string
          description: Unique identifier for the product
          example: prod_nStU73ZJahgBSxnh
        customId:
          type: string
          description: A user provided identifier for the product
          example: c993f52b-0bbd-454b-9849-fd6c1991efb6
        financeId:
          type: string
          description: This is the Income Account ID from the accounting system
          example: GL-123
        name:
          type: string
          description: Name of the product
          example: Netflix Premium
        description:
          type: string
          description: Description of the product
          example: Netflix Monthly Premium
        status:
          type: string
          description: Status of the product, which indicates if the product is ACTIVE or INACTIVE
          enum:
          - ACTIVE
          - INACTIVE
        productType:
          type: string
          description: Indicates the type of the product, which can be USAGE, ONETIME MIN_COMMIT, ADVANCE, ARREARS, ONETIME_PREPAID_CREDIT etc.
          enum:
          - ADVANCE
          - ARREARS
          - USAGE
          - ONETIME
          - ONETIME_PREPAID_CREDIT
          - MIN_COMMIT
        usageTypes:
          uniqueItems: true
          type: array
          description: 'Definition for the type of usage for usage products. It accepts list of usage types. A usage product can be multiple things. I.E. for ISP connection usage type might be Bandwidth with unit Megabytes, for telephone calls usage type might be time with unit as minutes. '
          items:
            $ref: '#/components/schemas/com.monytyz.billing.catalog.dto.usage.UsageTypeDto'
        oneTimePrepaidCreditConfig:
          $ref: '#/components/schemas/com.monytyz.billing.catalog.dto.prepaidcredit.OneTimePrePaidCreditConfigData'
        sku:
          type: string
          description: Stock Keeping Unit. Used for identifying a specific stock of a product.
          example: UGG-BB-PUR-06
        recognitionMethod:
          type: string
          description: Recognition method for the product
          enum:
          - IMMEDIATE
          - EVENLY_MONTHLY_IN_ADVANCE
        locked:
          type: boolean
          description: Indicates if a product is locked or not. When a product is used in offering, it's locked and can not be deleted.
        customFields:
          type: object
          additionalProperties:
            type: object
            description: User configured custom fields for the product
          description: User configured custom fields for the product
        taxItemCode:
          type: string
          description: Tax code identifier for the product
          example: B13E4D91-B3C9-4847-BB9E-58B925ECF033
        taxExempt:
          type: boolean
          description: Boolean field to identify if the product is tax-exempt
          example: false
      description: Product details associated with the subscription item
    com.monytyz.billing.subscription.dto.subscriptionitem.SubscriptionItemDetailDto:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the subscription item
          example: suit_9TkhFbhZ5oY4q2fw
        description:
          type: string
          description: Description of the subscription item
          example: Netflix Subscription
        units:
          type: number
          description: Unit/Quantity of the subscription item within a subscription
          format: double
          example: 5
        product:
          $ref: '#/components/schemas/com.monytyz.billing.catalog.dto.product.ProductDto'
        orderItemId:
          type: string
          example: orit_GA1jSFv4Lzs3V34y
        customPrice:
          $ref: '#/components/schemas/com.monytyz.billing.catalog.dto.customprice.CustomPriceDto'
        applicableItemDiscounts:
          uniqueItems: true
          type: array
          description: List of applicable item discounts
          items:
            $ref: '#/components/schemas/com.monytyz.billing.subscription.dto.subscriptionitem.SubscriptionItemDiscountDto'
        quoteItemId:
          type: string
          description: Unique identifier for the quote item
          example: qtit_GA1jSFv4Lzs3V34y
        isActive:
          type: boolean
      description: List of subscription items
    com.monytyz.billing.catalog.dto.usage.UsageTypeDto:
      type: object
      properties:
        createdBy:
          type: string
          description: Identifier for the user who created the record
          example: usr_X0XZ05bvkrB1RpLS
        createDate:
          type: string
          description: Timestamp of when the record was created
          format: date-time
        lastModifiedBy:
          type: string
          description: Identifier for the user who last modified the record
          example: usr_X0XZ05bvkrB1RpLS
        modifyDate:
          type: string
          description: Timestamp of when the record was last modified
          format: date-time
        id:
          type: string
          description: Unique identifier for a usage type
        name:
          type: string
          description: Display name of a usage type
        pluralName:
          type: string
          description: Name of a usage type in plural form
        description:
          type: string
          description: Description of a usage type
        unitName:
          type: string
          description: Unit for the usage. I.E. GB for bandwidth usage
        decimalPlaces:
          type: integer
          description: Decimal places is used to count fractional precision for a usage unit
          format: int32
          example: 2
        status:
          type: string
          description: Active status for a UsageType. Can be ACTIVE/INACTIVE
          enum:
          - ACTIVE
          - INACTIVE
    com.monytyz.billing.customer.dto.account.AccountData:
      required:
      - accountType
      - customId
      - id
      - name
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the account
          example: acct_jgPH8G33rELY6LQa
        name:
          type: string
          description: Name of the account.
          example: Demo Account
        customId:
          type: string
          description: A user provided identifier for the account
          example: 6b48c3f6-852e-4cd7-b4f4-a35ad60ad483
        accountType:
          type: string
          description: Type of the account. An account can be CUSTOMER, PARTNER
          example: CUSTOMER
          enum:
          - CUSTOMER
          - PARTNER
      description: Account details associated with the subscription
      example:
        id: acct_VbeTm9zhLf7pw
        name: Demo Account
        customId: 6b48c3f6-852e-4cd7-b4f4-a35ad60ad483
    com.monytyz.billing.subscription.dto.subscriptionitem.SubscriptionItemDiscountDto:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the subscription item
          example: suit_9TkhFbhZ5oY4q2fw
        discount:
          $ref: '#/components/schemas/com.monytyz.billing.catalog.dto.discount.DiscountDto'
        applicableDiscountType:
          type: string
          description: Type of discount. Valid values are PERCENTAGE, FLAT
          example: PERCENTAGE
          enum:
          - FLAT
          - PERCENTAGE
        applicableDiscountAmount:
          type: number
          description: Discount amount of the subscription
          example: 100
      description: List of applicable item discounts
    com.monytyz.billing.subscription.dto.subscription.SubscriptionListDto:
      required:
      - content
      - totalElements
      - totalPages
      type: object
      properties:
        content:
          type: array
          items:
            $ref: '#/components/schemas/com.monytyz.billing.subscription.dto.subscription.SubscriptionDetailDto'
        totalElements:
          type: integer
          format: int64
        totalPages:
          type: integer
          format: int32
        pageable:
          $ref: '#/components/schemas/MNPageable'
    MNPageable:
      required:
      - pageNumber
      - pageSize
      type: object
      properties:
        pageNumber:
          type: integer
          format: int32
        pageSize:
          type: integer
          format: int32
    com.monytyz.billing.catalog.dto.offering.OfferingDto:
      type: object
      properties:
        createdBy:
          type: string
          description: Identifier for the user who created the record
          example: usr_X0XZ05bvkrB1RpLS
        createDate:
          type: string
          description: Timestamp of when the record was created
          format: date-time
        lastModifiedBy:
          type: string
          description: Identifier for the user who last modified the record
          example: usr_X0XZ05bvkrB1RpLS
        modifyDate:
          type: string
          description: Timestamp of when the record was last modified
          format: date-time
        id:
          type: string
          example: offer_iJuVJLgQKIFc98RE
        customId:
          type: string
          example: c993f52b-0bbd-454b-9849-fd6c1991efb6
        name:
          type: string
          example: Netflix
        description:
          type: string
          example: Premium Subscription
        status:
          type: string
          enum:
          - ACTIVE
          - INACTIVE
          - CANCELED
          - PENDING
          - EXPIRED
          - ARCHIVED
        type:
          type: string
          enum:
          - SUBSCRIPTION
          - ONETIME
          - MIN_COMMIT
          - CUSTOM_PERCENT_OF_TOTAL
        startDate:
          type: string
          format: date
        endDate:
          type: string
          format: date
        locked:
          type: boolean
        financeId:
          type: string
      description: Offering details associated with the subscription
    com.monytyz.billing.catalog.dto.discount.DiscountDto:
      type: object
      properties:
        createdBy:
          type: string
          description: Identifier for the user who created the record
          example: usr_X0XZ05bvkrB1RpLS
        createDate:
          type: string
          description: Timestamp of when the record was created
          format: date-time
        lastModifiedBy:
          type: string
          description: Identifier for the user who last modified the record
          example: usr_X0XZ05bvkrB1RpLS
        modifyDate:
          type: string
          description: Timestamp of when the record was last modified
          format: date-time
        id:
          type: string
          description: Unique identifier for the discount
          example: disc_TbFRB6xKDHScB
        name:
          type: string
          description: Name of the discount
          example: Early payment flat discount
        description:
          type: string
          description: Description of the discount
          example: Discount for early payment
        discountType:
          type: string
          description: Type of discount. Valid values are PERCENTAGE, FLAT
          example: FLAT
          enum:
          - FLAT
          - PERCENTAGE
        status:
          type: string
          description: Status of the discount. Valid values are ACTIVE, INACTIVE, PENDING, EXPIRED
          example: ACTIVE
          enum:
          - ACTIVE
          - INACTIVE
          - PENDING
          - EXPIRED
        discountCode:
          type: string
          description: Code for the discount
          example: EARLY_PAYMENT
        quoteId:
          type: string
          description: Associated Quote Id for the discount
          example: quot_oKEMgylKzkIWR
        discountAmount:
          type: number
          description: Amount of the discount
          example: 100
        currency:
          type: string
          description: Currency of the discount
          example: USD
          enum:
          - AUD
          - BYN
          - CAD
          - CNY
          - DKK
          - EUR
          - GBP
          - INR
          - ISK
          - MYR
          - NOK
          - SEK
          - SGD
          - TWD
          - USD
        durationType:
          type: string
          description: Duration type of the discount. Valid values are ONE_TIME, UNLIMITED, LIMITED
          example: ONE_TIME
          enum:
          - ONE_TIME
          - UNLIMITED
          - LIMITED
        durationMonths:
          type: integer
          description: Duration of the discount
          format: int32
          example: 12
        maxUses:
          type: integer
          description: Maximum number of times the discount can be used
          format: int32
          example: 10
        remainingUses:
          type: integer
          description: Remaining number of times the discount can be used
          format: int32
          example: 5
        startDate:
          type: string
          description: Start date of the discount
          format: date
          example: '2021-01-01'
        endDate:
          type: string
          description: End date of the discount
          format: date
          example: '2021-12-31'
        autoRemove:
          type: boolean
          description: Boolean value indicating if the discount should be removed automatically
          example: true
        accountId:
          type: string
          description: Account Id for the discount
          example: acct_jHhOQjAs87kNj
        scopeProductId:
          type: string
          description: Product Id for the discount
          example: prod_N7oFTpLCwMRCo
        scopeOfferingId:
          type: string
       

# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/monetizenow/refs/heads/main/openapi/monetizenow-subscription-api-openapi.yml