Skip to content
Coritan Docs

Set up products and pricing

Create the products your customers buy, link each one to a Coritan product, and set a price for each billing cycle.

View as Markdown

Products are what your customers can buy, and plans are their prices. Create a product for each thing you sell, link it to a Coritan product when Coritan should create the resource, then add at least one plan so customers can order it.

  • Any member can see products. Creating and changing them takes the owner or admin role.
  • For a linked product, look at the Coritan product you want to resell and its price, which your Coritan account pays for each resource. Billing explains how your account pays.
Linked to a platform product
Coritan creates the resource, such as a Container Apps server or a Cloud Compute instance, when a customer orders. The resource runs on the owner's Coritan account at Coritan's price for the matching billing cycle.
Standalone
You deliver it yourself, and Coritan creates nothing. Use it for a service you provide outside Coritan, such as setup work.
  1. In the dashboard, open the organization, then the Products tab.
  2. Select New product.
  3. Enter a Name and check the Slug, which your storefront uses in the product's address. The slug takes lowercase letters, digits and hyphens and cannot be changed later.
  4. Add a Description if you like.
  5. Under Kind, choose Linked to a platform product and pick the Platform product, or choose Standalone.
  6. Select Create product.

The dashboard reminds you to add a plan: a product without an active plan cannot be ordered, and the product list shows None under Active plans.

  1. Open the product and, under Plans, select Add plan.
  2. Enter a Plan name, such as Monthly.
  3. Choose a Billing cycle: monthly, quarterly, semi-annually, annually, biennially, one time or hourly.
  4. Enter the Currency as a three-letter code, the Price and, if you charge one, a Setup fee.
  5. Select Add plan.

The plan appears under Plans and the product can be ordered on your storefront. You cannot edit or remove a plan once it is added, so check the price before you save it, and add a new plan to change a price.

  1. Open the product and select Edit.
  2. Change the Name, Description or Sort order. Lower numbers come first on the storefront.
  3. Clear Available to order to hide the product. Hidden products keep their existing services.
  4. Select Save changes.

The Available to order switch on the product page does the same as the checkbox. The kind and the linked product cannot be changed after creation.

Product limit reached
Your organization holds as many products as Coritan allows its tier, and New product is turned off. The API answers Product limit reached (50/50). Hide or reuse a product, or ask support to raise the limit.
Product slug already exists
Another of your products uses the slug. Choose another.
Your organization cannot sell the free plan. Contact support to have it switched on.
Coritan's free plan is only offered to organizations Coritan has allowed to sell it.
Platform product not found
The linked product id does not exist. List the products you can link with GET /platform-products.

List the Coritan products you can link to. The list is Coritan's active catalogue, with the free plan when Coritan lets your organization sell it:

Shell
curl https://api.coritan.com/api/v1/orgs/acme/platform-products \
  -H "Authorization: Bearer $CORITAN_TOKEN"

Create a product with name, slug, description, product_type (platform_linked or custom_standalone, which is the default in the API) and linked_product_id for a linked product:

Shell
curl -X POST https://api.coritan.com/api/v1/orgs/acme/products \
  -H "Authorization: Bearer $CORITAN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Pro Container", "slug": "pro-container", "product_type": "platform_linked", "linked_product_id": 17}'

Add a plan with name, billing_cycle (monthly, quarterly, semiannually, annually, biennially, one_time or hourly), price, setup_fee (default 0) and currency (default USD):

Shell
curl -X POST https://api.coritan.com/api/v1/orgs/acme/products/5/pricing \
  -H "Authorization: Bearer $CORITAN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Monthly", "billing_cycle": "monthly", "price": "12.99", "currency": "EUR"}'

GET /products lists your products, GET /products/{product_id}/pricing lists a product's active plans, and PATCH /products/{product_id} changes name, description, is_active, sort_order and config_schema.

For a product linked to Container Apps, GET /containers/catalog lists the games and applications a server can run, Coritan's and your organization's own, filtered with category. GET /containers/catalog/{slug}/compose returns one entry's versions and the runtimes recommended for each.

API operations on this page

MethodPathWhat it does
GET/api/v1/orgs/{org_slug}/productsList products
POST/api/v1/orgs/{org_slug}/productsCreate product
PATCH/api/v1/orgs/{org_slug}/products/{product_id}Update product
GET/api/v1/orgs/{org_slug}/products/{product_id}/pricingList product pricing
POST/api/v1/orgs/{org_slug}/products/{product_id}/pricingCreate product pricing
GET/api/v1/orgs/{org_slug}/platform-productsThe platform products this organization may link a product to
GET/api/v1/orgs/{org_slug}/containers/catalogBrowse platform + this org's specializations for versioned deploy UX
GET/api/v1/orgs/{org_slug}/containers/catalog/{slug}/composeCompose versions + recommended runtimes for an org-visible specialization