Paigo · Schema
CreateOfferingDTO
BillingUsage-Based BillingMeteringInvoicingPricingSoftware-as-a-ServiceSubscriptionDeveloper ToolsFinOps
Properties
| Name | Type | Description |
|---|---|---|
| offeringVisibility | string | The visibility of the offering, specifically if its private or public. Public offerings are designed to be shared among customers. Private offerings are typically used for enterprise deals which conta |
| offeringType | string | The type of offering. • `usage-based` - The offering is a pure usage-based offering, or pay-as-you-go. Customers on this plan will be billed precisely based on consumption. • `subscription` |
| billingCycle | string | The time frame when an automatic bill should be sent leave empty for no automated billing Example `"monthly"` |
| currency | string | The supported currency for the offering. USD is currently supported. Customers can override the currency for their account. However all offerings are denoted in USD. Example `"USD"` |
| dimensionOverrides | array | Overrides for the offering. Applies specific overrides to the dimensions associated with the offering. These effect the price of each dimension on the offering. |
| prepaidCredit | string | Prepaid credit amount to be deducted as part of the bill payments. Only numerical string is allowed. Example: `"20.00"` for $20.00. |
| minimumCharge | string | A minimum charge to be billed to the customer in the event that the customer's bill is less than the minimum charge. Only on usage based offerings. Only numerical strings are allowed, must be greater |
| topUpAmount | string | The amount to top up the account by. Only positive number string is allowed. Required if `billingCycle` is `topUp`. Example: `"20.00"` for $20.00. |
| topUpThreshold | string | The threshold at which the account should be topped up. Only positive number string is allowed. Between 0 and 1. If not provided the default value will be 0.2 or 20%. Meaning that when the account bal |
| subscriptionPrice | number | The price of the subscription. Only positive number string is allowed. Only required if `offeringType` is `subscription`. Example: `20.00` for $20.00. |
| freeTrialLength | string | The length of time for a free trial. This is a number of days. Only positive number string is allowed. Example: `"1"` for 1 day or 1 billing cycle depending on the offeringType. |
| offeringName | string | A friendly, human-readable name for the offering. Example `"Entperise Plan"` |
| dimensionIds | array | Array of the identifier of the dimensions that this offering contains. Dimensions specify the type of usage that is being billed for. Example `["092f9444-851a-43fb-9503-2228dc01b1b", "4fcafde |
| metadata | object | An optional key-value map of additional metadata to associate with the offerings. such as environment, purpose, owner, developer, contract number, or any arbitrary data to be associated with this usag |
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://paigo.tech/json-schema/CreateOfferingDTO.json",
"title": "CreateOfferingDTO",
"type": "object",
"properties": {
"offeringVisibility": {
"description": "The visibility of the offering, specifically if its private or public.\nPublic offerings are designed to be shared among customers.\nPrivate offerings are typically used for enterprise deals which contain discounts or prepaid credits.\n<br><br>\nExample: `\"private\"`",
"example": "private",
"enum": [
"private",
"public"
],
"type": "string",
"default": "public"
},
"offeringType": {
"type": "string",
"description": "The type of offering.\n<br> \u2022 `usage-based` - The offering is a pure usage-based offering, or pay-as-you-go. Customers on this plan will be billed precisely based on consumption.\n<br> \u2022 `subscription` - The offering is a fixed subscription. Customer will be billed on a fixed price.\n\nExample `\"subscription\"`",
"enum": [
"usage-based",
"subscription"
],
"default": "usage-based",
"example": "subscription",
"externalDocs": {
"description": "Read more about the different offering types",
"url": "https://docs.paigo.tech/model-pricing-and-package/pricing-modeling-guide"
}
},
"billingCycle": {
"description": "The time frame when an automatic bill should be sent leave empty for no automated billing\n<br><br>\n\nExample `\"monthly\"`",
"example": "monthly",
"enum": [
"monthly",
"annualToDate",
"topUp"
],
"type": "string",
"default": "monthly"
},
"currency": {
"description": "The supported currency for the offering. USD is currently supported. Customers can override the currency for their account.\nHowever all offerings are denoted in USD.\n<br><br>\nExample `\"USD\"`",
"example": "USD",
"enum": [
"USD",
"EUR",
"CNY"
],
"type": "string"
},
"dimensionOverrides": {
"description": "Overrides for the offering. Applies specific overrides to the dimensions associated with the offering. These effect the price of each dimension on the offering.",
"type": "array",
"items": {
"$ref": "#/components/schemas/DimensionOverridesDto"
}
},
"prepaidCredit": {
"type": "string",
"description": "Prepaid credit amount to be deducted as part of the bill payments. Only numerical string is allowed.\n<br><br>Example: `\"20.00\"` for $20.00.",
"example": "20.00"
},
"minimumCharge": {
"type": "string",
"nullable": true,
"description": "A minimum charge to be billed to the customer in the event that the customer's bill is less than the minimum charge. Only on usage based offerings. Only numerical strings are allowed, must be greater than zero.\n<br><br>Example: `\"32.00\"` for $32.00.",
"example": "32.00"
},
"topUpAmount": {
"type": "string",
"description": "The amount to top up the account by. Only positive number string is allowed. Required if `billingCycle` is `topUp`.\n<br><br>\nExample: `\"20.00\"` for $20.00.",
"example": "20.00"
},
"topUpThreshold": {
"type": "string",
"description": "The threshold at which the account should be topped up. Only positive number string is allowed. Between 0 and 1.\nIf not provided the default value will be 0.2 or 20%. Meaning that when the account balance reaches 20% of the the top up amount, the account will be\ntopped up, and the end customer charged.\n<br><br>\nExample: `\"0.2\"` for 20%.",
"example": "0.2"
},
"subscriptionPrice": {
"type": "number",
"description": "The price of the subscription.\nOnly positive number string is allowed.\nOnly required if `offeringType` is `subscription`.\n<br><br>\n\nExample: `20.00` for $20.00.",
"example": 20
},
"freeTrialLength": {
"type": "string",
"description": "The length of time for a free trial. This is a number of days.\nOnly positive number string is allowed.\n<br><br>\n\nExample: `\"1\"` for 1 day or 1 billing cycle depending on the offeringType.",
"example": "1"
},
"offeringName": {
"type": "string",
"description": "A friendly, human-readable name for the offering.\n<br><br>\nExample `\"Entperise Plan\"`",
"example": "Entperise Plan"
},
"dimensionIds": {
"description": "Array of the identifier of the dimensions that this offering contains. Dimensions specify the type of usage that is being billed for.\n<br><br>\nExample `[\"092f9444-851a-43fb-9503-2228dc01b1b\", \"4fcafdec-eeb9-4a7f-9caf-61387102b6fa\"]`",
"example": [
"092f9444-851a-43fb-9503-2228dc01b1b",
"4fcafdec-eeb9-4a7f-9caf-61387102b6fa"
],
"type": "array",
"items": {
"type": "string"
}
},
"metadata": {
"type": "object",
"description": "An optional key-value map of additional metadata to associate with the offerings.\nsuch as environment, purpose, owner, developer, contract number,\nor any arbitrary data to be associated with this usage record. Additionally, if `null` is passed for any value in the metadata object it will be removed.\nTo entirely remove the metadata object, pass null to the metadata field.\n<br><br>\nExample `{\"environment\": \"staging\", \"purpose\": \"proof-of-concept\", \"owner\": \"John Doe\", \"workspaceId\": null}`\n<br><br>\nIn the above example, the `workspaceId` metadata key will be removed from the dimension. To remove all fields pass the following.\n<br><br>\nExample `\"metadata\": null`"
}
},
"required": [
"offeringName"
]
}
Work with this as data
Every JSON Schema 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 schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/paigo-create-offering"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.