Skip to content
Coritan Docs

Client API: Catalog

Browse sellable products and plan options.

View as Markdown

Browse sellable products and plan options. Listing is public and needs no auth.

Base URL: https://api.coritan.com/api/v1. Paths below are complete.

To try these requests in the browser, open the interactive Client API reference.

Method Path Summary
GET /api/v1/client/containers/catalog Browse platform specializations available for deploy composition
GET /api/v1/client/containers/catalog/{slug}/compose Get software versions + recommended runtimes for a specialization
GET /api/v1/locations List locations
GET /api/v1/locations/availability Locations availability
GET /api/v1/products/ List products
GET /api/v1/products/{product_id} Get product

Browse platform specializations available for deploy composition

Section titled Browse platform specializations available for deploy composition

GET /api/v1/client/containers/catalog

Browse platform specializations available for deploy composition.

Carries the same icons, colours and grouping as the org storefront's storefront/specializations and the panel's Software tab, so the platform order page does not have to draw a Paper server with a generic terminal glyph. The MCJars lookup is cached and never blocks once warm.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required
category query string or null no
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

A 200 response is a list; each item has these fields:

Field Type
[].uuid string
[].slug string or null
[].name string
[].description string or null
[].runtime_template_slug string or null
[].org_id integer or null
[].default_variables object or null
[].metadata object or null
[].category string or null
[].versioned boolean
[].version_variable string or null
[].version_source_slug string or null
[].software_identifier string or null
[].runtime_family string or null
[].icon_url string or null
[].color string or null
[].group string or null
[].deprecated boolean

Get software versions + recommended runtimes for a specialization

Section titled Get software versions + recommended runtimes for a specialization

GET /api/v1/client/containers/catalog/{slug}/compose

Get software versions + recommended runtimes for a specialization.

Authentication: an access token, sent as Authorization: Bearer <token>.

Name In Type Required Description
slug path string yes
supported_only query boolean no Default: True.
include_snapshots query boolean no Default: False.
limit query integer no Default: 200.
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Fields of a 200 response:

Field Type
slug string or null
uuid string
name string
description string or null
runtime_template_slug string or null
default_variables object or null
metadata object or null
category string or null
versioned boolean
version_variable string or null
version_source_slug string or null
software_identifier string or null
adapter_type string or null
runtime_family string or null
versions array of CatalogVersionOption
versions[].version_id string
versions[].name string
versions[].release_date string or null
versions[].supported boolean or null
versions[].required_java integer or null
versions[].build_number integer or null
versions[].recommended_runtime_slug string or null
versions[].recommended_runtime_uuid string or null
versions[].recommended_runtime_name string or null
versions[].game_versions array of string
versions[].metadata object or null
versions[].runtime_template_slug string or null
versions[].runtime_template_uuid string or null
runtime_versions array of CatalogVersionOption
runtime_versions[].version_id string
runtime_versions[].name string
runtime_versions[].release_date string or null
runtime_versions[].supported boolean or null
runtime_versions[].required_java integer or null
runtime_versions[].build_number integer or null
runtime_versions[].recommended_runtime_slug string or null
runtime_versions[].recommended_runtime_uuid string or null
runtime_versions[].recommended_runtime_name string or null
runtime_versions[].game_versions array of string
runtime_versions[].metadata object or null
runtime_versions[].runtime_template_slug string or null
runtime_versions[].runtime_template_uuid string or null
runtimes array of CatalogRuntimeOption
runtimes[].uuid string
runtimes[].slug string
runtimes[].name string
runtimes[].docker_image string or null
runtimes[].description string or null
defaults Defaults

GET /api/v1/locations

Name In Type Required Description
active_only query boolean no Default: True.
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

A 200 response is a list; each item has these fields:

Field Type
[].id integer
[].code string
[].name string
[].country_code string
[].timezone string or null
[].latitude number or null
[].longitude number or null
[].lb_region_code string or null
[].sort_order integer
[].is_active boolean
[].created_at string (date-time)
[].updated_at string (date-time)

GET /api/v1/locations/availability

Name In Type Required Description
module query string yes vps or container
hardware_tier_id query integer or null no
template_id query integer or null no VPS OS template id
memory_mb query integer no Default: 512.
disk_gb query integer no VPS disk GB Default: 10.
disk_mb query integer no Container disk MB Default: 10240.
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

A 200 response is a list; each item has these fields:

Field Type
[].id integer
[].code string
[].name string
[].country_code string
[].available boolean
[].reason string or null

GET /api/v1/products/

Name In Type Required Description
group query string no
hardware_tier query string no
hardware_tier_id query integer no
page query integer no Default: 1.
per_page query integer no Default: 100.
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

A 200 response is a list; each item has these fields:

Field Type
[].id integer
[].name string
[].slug string
[].description string or null
[].group_name string or null
[].module_name string
[].hardware_tier_id integer or null
[].hardware_tier HardwareTierSummary or null
[].hardware_tier.id integer
[].hardware_tier.slug string
[].hardware_tier.name string
[].hardware_tier.code string
[].hardware_tier.description string or null
[].status string
[].config_schema object or null
[].sort_order integer
[].stock_limit integer or null
[].metadata object or null
[].pricing array of PricingResponse
[].pricing[].id integer
[].pricing[].product_id integer
[].pricing[].name string
[].pricing[].billing_cycle string
[].pricing[].price number
[].pricing[].setup_fee number
[].pricing[].currency string
[].pricing[].is_active boolean
[].pricing[].sort_order integer
[].pricing[].metadata object or null
[].pricing[].created_at string (date-time)
[].config_options array of ConfigOptionResponse
[].config_options[].id integer
[].config_options[].product_id integer
[].config_options[].field_name string
[].config_options[].label string
[].config_options[].field_type string
[].config_options[].options object or null
[].config_options[].default_value string or null
[].config_options[].required boolean
[].config_options[].price_modifier number
[].config_options[].sort_order integer
[].is_orderable_now boolean or null
[].stock_status string or null
[].availability_reason string or null
[].group_is_orderable_now boolean or null
[].group_stock_status string or null
[].locations array of ProductLocationAvailability
[].locations[].id integer
[].locations[].code string
[].locations[].name string
[].locations[].country_code string
[].locations[].available boolean
[].locations[].orderable boolean
[].locations[].reason string or null
[].created_at string (date-time)

GET /api/v1/products/{product_id}

Name In Type Required
product_id path integer yes
Status Meaning
200 Success.
422 The request is not valid. detail lists each problem.

Fields of a 200 response:

Field Type
id integer
name string
slug string
description string or null
group_name string or null
module_name string
hardware_tier_id integer or null
hardware_tier HardwareTierSummary or null
hardware_tier.id integer
hardware_tier.slug string
hardware_tier.name string
hardware_tier.code string
hardware_tier.description string or null
status string
config_schema object or null
sort_order integer
stock_limit integer or null
metadata object or null
pricing array of PricingResponse
pricing[].id integer
pricing[].product_id integer
pricing[].name string
pricing[].billing_cycle string
pricing[].price number
pricing[].setup_fee number
pricing[].currency string
pricing[].is_active boolean
pricing[].sort_order integer
pricing[].metadata object or null
pricing[].created_at string (date-time)
config_options array of ConfigOptionResponse
config_options[].id integer
config_options[].product_id integer
config_options[].field_name string
config_options[].label string
config_options[].field_type string
config_options[].options object or null
config_options[].default_value string or null
config_options[].required boolean
config_options[].price_modifier number
config_options[].sort_order integer
is_orderable_now boolean or null
stock_status string or null
availability_reason string or null
group_is_orderable_now boolean or null
group_stock_status string or null
locations array of ProductLocationAvailability
locations[].id integer
locations[].code string
locations[].name string
locations[].country_code string
locations[].available boolean
locations[].orderable boolean
locations[].reason string or null
created_at string (date-time)