Creates a plan.
Plan resource.
Details of the subscription order plan. Use this plan for subscriptions or sales that reoccur over a period of time.
Variant of the plan. This field is optional in create and update requests. The variant is subscription when recurringInterval is present. If included, this field must match the applicable variant. A mismatch results in an HTTP 422 response. Responses always include this field.
Name of the plan. This name is displayed on invoices and receipts.
Plain-text description of the plan. This field accepts plain-text only.
Rich-text description of the plan. This field accepts rich text formatting, such as: bold, underline, italic, and hyperlinks.
ID of the related product.
Name-value pairs that specify the product options.
{ "color": "red", "size": "xxl" }
Use custom fields to extend a resource scheme to include custom data that is not provided as a common field. For more information, see Custom fields.
{ "foo": "bar" }
Trial configuration setting. If you do not want to offer a trial, set this value to null.
- Mock serverhttps://www.rebilly.com/_mock/catalog/all/plans
- Sandbox serverhttps://api-sandbox.rebilly.com/organizations/{organizationId}/plans
- Live serverhttps://api.rebilly.com/organizations/{organizationId}/plans
curl -i -X POST \
https://www.rebilly.com/_mock/catalog/all/plans \
-H 'Content-Type: application/json' \
-H 'REB-APIKEY: YOUR_API_KEY_HERE' \
-d '{
"type": "subscription",
"name": "string",
"description": "string",
"richDescription": "string",
"productId": "prod_0YV7DES3WPC5J8JD8QTVNZBZNZ",
"productOptions": {
"color": "red",
"size": "xxl"
},
"currency": "USD",
"pricing": {
"formula": "fixed-fee",
"price": 99.95
},
"setup": {
"price": 0.1
},
"customFields": {
"foo": "bar"
},
"isActive": true,
"recurringInterval": {
"periodAnchorInstruction": {
"method": "day-of-month",
"day": 1,
"time": "14:15:22Z"
},
"unit": "day",
"length": 1,
"limit": 1,
"billingTiming": "prepaid"
},
"trial": {
"price": 0.1,
"period": {
"unit": "day",
"length": 1
}
},
"meteredBilling": {
"strategy": "sum",
"min": 0.01,
"max": 0.01,
"sticky": false
},
"invoiceTimeShift": {
"issueTimeShift": {
"chronology": "before",
"duration": 1,
"unit": "second"
},
"dueTimeShift": {
"duration": 1,
"unit": "hour"
}
}
}'Plan created.
Total number of rate limit tokens for this request within a rate limit period. For more information, see Rate limits.
Variant of the plan. This field is optional in create and update requests. The variant is subscription when recurringInterval is present. If included, this field must match the applicable variant. A mismatch results in an HTTP 422 response. Responses always include this field.
Name of the plan. This name is displayed on invoices and receipts.
Plain-text description of the plan. This field accepts plain-text only.
Rich-text description of the plan. This field accepts rich text formatting, such as: bold, underline, italic, and hyperlinks.
ID of the related product.
Name-value pairs that specify the product options.
{ "color": "red", "size": "xxl" }
Use custom fields to extend a resource scheme to include custom data that is not provided as a common field. For more information, see Custom fields.
{ "foo": "bar" }
Number of times the plan is modified. Compare this value with materialized subscription item revision values.
Specifies if a plan is a trial that does not have recurring instructions.
Trial configuration setting. If you do not want to offer a trial, set this value to null.
Use metered billing when an exact quantity is unknown. Report usage during a service period and charge customers afterwards. Metered billing plans must be postpaid.
Date and time when the resource is created. This value is set automatically when the resource is created.
Date and time when the resource is updated. This value is set automatically when the resource is updated.
Use invoice time shift to control the billing time.
Invoice time shift adjusts the invoice issue and due date when billing must occur before the service period changes.
Use invoice time shift in conjunction with billingTiming to:
- Bill immediately when the service period starts.
- Bill immediately after the service period ends.
- Bill at an interval of time before the service period starts.
- Bill at an interval of time after the service period starts.
- Bill at an interval of time before the service period ends.
- Bill at an interval of time after the service period ends.
{ "id": "plan_0YV7DENSVGDBW9S71XZNNYYQ0X", "type": "subscription", "name": "string", "description": "string", "richDescription": "string", "productId": "prod_0YV7DES3WPC5J8JD8QTVNZBZNZ", "productOptions": { "color": "red", "size": "xxl" }, "currency": "USD", "currencySign": "string", "pricing": { "formula": "fixed-fee", "price": 99.95 }, "setup": { "price": 0.1 }, "customFields": { "foo": "bar" }, "isActive": true, "revision": 0, "isTrialOnly": false, "recurringInterval": { "periodAnchorInstruction": { … }, "unit": "day", "length": 1, "limit": 1, "billingTiming": "prepaid" }, "trial": { "price": 0.1, "period": { … } }, "meteredBilling": { "strategy": "sum", "min": 0.01, "max": 0.01, "sticky": false }, "invoiceTimeShift": { "issueTimeShift": { … }, "dueTimeShift": { … } }, "createdTime": "2019-08-24T14:15:22Z", "updatedTime": "2019-08-24T14:15:22Z", "_links": [ { … } ] }