Marketplace Public Offerings
Operations Summary
| Method | Endpoint | Description |
|---|---|---|
| Core CRUD | ||
| GET | /api/marketplace-public-offerings/ |
List public offerings |
| GET | /api/marketplace-public-offerings/{uuid}/ |
Retrieve a public offering |
| Other Actions | ||
| GET | /api/marketplace-public-offerings/{uuid}/plans/ |
List plans for an offering |
| GET | /api/marketplace-public-offerings/{uuid}/plans/{plan_uuid}/ |
Retrieve a specific plan for an offering |
Core CRUD
List public offerings
Returns a paginated list of public offerings. The list is filtered to show only offerings that are active or paused and available for ordering by the current user. If anonymous access is enabled, it shows shared offerings available to unauthenticated users.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 | |
- API Source:
marketplace_public_offerings_list
1 2 3 4 5 6 7 8 9 10 | |
| Name | Type | Description |
|---|---|---|
accessible_via_calls |
boolean | Accessible via calls |
allowed_customer_uuid |
string (uuid) | Allowed customer UUID |
attributes |
string | Offering attributes (JSON) |
billable |
boolean | Billable |
can_create_offering_user |
boolean | |
category_group_uuid |
string (uuid) | Category group UUID |
category_uuid |
string (uuid) | Category UUID |
created |
string (date-time) | Created after |
customer |
string | Customer URL |
customer_uuid |
string (uuid) | Customer UUID |
description |
string | Description contains |
field |
array | |
has_active_terms_of_service |
boolean | Has Active Terms of Service |
has_terms_of_service |
boolean | Has Terms of Service |
keyword |
string | Keyword |
modified |
string (date-time) | Modified after |
name |
string | Name |
name_exact |
string | Name (exact) |
o |
array | Ordering |
organization_group_uuid |
array | Organization group UUID |
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
parent_uuid |
string (uuid) | Parent offering UUID |
project_uuid |
string (uuid) | Project UUID |
query |
string | Search by offering name, slug or description |
resource_customer_uuid |
string (uuid) | Resource customer UUID |
resource_project_uuid |
string (uuid) | Resource project UUID |
scope_uuid |
string | Scope UUID |
service_manager_uuid |
string (uuid) | Service manager UUID |
shared |
boolean | Shared |
state |
array | Offering state |
type |
array | Offering type |
user_has_consent |
boolean | User Has Consent |
user_has_offering_user |
boolean | User Has Offering User |
uuid_list |
string | Comma-separated offering UUIDs |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type | Description |
|---|---|---|
url |
string (uri) | |
uuid |
string (uuid) | |
created |
string (date-time) | |
name |
string | |
slug |
string | |
description |
string | |
full_description |
string | |
privacy_policy_link |
string (uri) | |
access_url |
string (uri) | Publicly accessible offering access URL |
endpoints |
array of objects | |
endpoints.uuid |
string (uuid) | |
endpoints.name |
string | |
endpoints.url |
string | |
software_catalogs |
array of objects | |
software_catalogs.uuid |
string (uuid) | |
software_catalogs.catalog |
object | |
software_catalogs.catalog.uuid |
string | |
software_catalogs.catalog.name |
string | |
software_catalogs.catalog.version |
string | |
software_catalogs.catalog.description |
string | |
software_catalogs.enabled_cpu_family |
any | List of enabled CPU families: ['x86_64', 'aarch64'] |
software_catalogs.enabled_cpu_microarchitectures |
any | List of enabled CPU microarchitectures: ['generic', 'zen3'] |
software_catalogs.package_count |
integer | |
software_catalogs.partition |
object | |
software_catalogs.partition.uuid |
string | |
software_catalogs.partition.partition_name |
string | |
software_catalogs.partition.priority_tier |
integer | |
software_catalogs.partition.qos |
string | |
partitions |
array of objects | |
partitions.uuid |
string (uuid) | |
partitions.partition_name |
string | Name of the SLURM partition |
partitions.cpu_bind |
integer | Default task binding policy (SLURM cpu_bind) |
partitions.def_cpu_per_gpu |
integer | Default CPUs allocated per GPU |
partitions.max_cpus_per_node |
integer | Maximum allocated CPUs per node |
partitions.max_cpus_per_socket |
integer | Maximum allocated CPUs per socket |
partitions.def_mem_per_cpu |
integer (int64) | Default memory per CPU in MB |
partitions.def_mem_per_gpu |
integer (int64) | Default memory per GPU in MB |
partitions.def_mem_per_node |
integer (int64) | Default memory per node in MB |
partitions.max_mem_per_cpu |
integer (int64) | Maximum memory per CPU in MB |
partitions.max_mem_per_node |
integer (int64) | Maximum memory per node in MB |
partitions.default_time |
integer | Default time limit in minutes |
partitions.max_time |
integer | Maximum time limit in minutes |
partitions.grace_time |
integer | Preemption grace time in seconds |
partitions.max_nodes |
integer | Maximum nodes per job |
partitions.min_nodes |
integer | Minimum nodes per job |
partitions.exclusive_topo |
boolean | Exclusive topology access required |
partitions.exclusive_user |
boolean | Exclusive user access required |
partitions.priority_tier |
integer | Priority tier for scheduling and preemption |
partitions.qos |
string | Quality of Service (QOS) name |
partitions.req_resv |
boolean | Require reservation for job allocation |
roles |
array of objects | |
roles.uuid |
string (uuid) | |
roles.name |
string | |
roles.url |
string (uri) | |
customer |
string (uri) | |
customer_uuid |
string (uuid) | |
customer_name |
string | |
project |
string (uri) | |
project_uuid |
string (uuid) | |
project_name |
string | |
category |
string (uri) | |
category_uuid |
string (uuid) | |
category_title |
string | |
attributes |
object (free-form) | |
options |
any | |
resource_options |
any | |
components |
array of objects | |
components.uuid |
string (uuid) | |
components.billing_type |
string | Enum: fixed, usage, limit, one, few |
components.type |
string | Unique internal name of the measured unit, for example floating_ip. |
components.name |
string | Display name for the measured unit, for example, Floating IP. |
components.description |
string | |
components.measured_unit |
string | Unit of measurement, for example, GB. |
components.unit_factor |
integer | The conversion factor from backend units to measured_unit |
components.limit_period |
any | |
components.limit_amount |
integer | |
components.article_code |
string | |
components.max_value |
integer | |
components.min_value |
integer | |
components.max_available_limit |
integer | |
components.is_boolean |
boolean | |
components.default_limit |
integer | |
components.factor |
integer | |
components.is_builtin |
boolean | |
components.is_prepaid |
boolean | |
components.overage_component |
string (uuid) | |
components.min_prepaid_duration |
integer | |
components.max_prepaid_duration |
integer | |
plugin_options |
any | |
state |
any | |
vendor_details |
string | |
getting_started |
string | |
integration_guide |
string | |
thumbnail |
string (uri) | |
order_count |
integer | |
plans |
array of objects | |
plans.url |
string (uri) | |
plans.uuid |
string (uuid) | |
plans.name |
string | |
plans.description |
string | |
plans.article_code |
string | |
plans.max_amount |
integer | Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. |
plans.archived |
boolean | Forbids creation of new resources. |
plans.is_active |
boolean | |
plans.unit_price |
string (decimal) | |
plans.unit |
string | Enum: month, quarter, half_month, day, hour, quantity |
plans.init_price |
number (double) | |
plans.switch_price |
number (double) | |
plans.backend_id |
string | |
plans.organization_groups |
array of objects | |
plans.organization_groups.uuid |
string (uuid) | |
plans.organization_groups.url |
string (uri) | |
plans.organization_groups.name |
string | |
plans.organization_groups.parent_uuid |
string (uuid) | |
plans.organization_groups.parent_name |
string | |
plans.organization_groups.parent |
string (uri) | |
plans.organization_groups.customers_count |
integer | |
plans.components |
array of objects | |
plans.components.type |
string | Unique internal name of the measured unit, for example floating_ip. |
plans.components.name |
string | Display name for the measured unit, for example, Floating IP. |
plans.components.measured_unit |
string | Unit of measurement, for example, GB. |
plans.components.amount |
integer | |
plans.components.price |
string (decimal) | |
plans.components.future_price |
string (decimal) | |
plans.components.discount_threshold |
integer | Minimum amount to be eligible for discount. |
plans.components.discount_rate |
integer | Discount rate in percentage. |
plans.prices |
object (free-form) | |
plans.future_prices |
object (free-form) | |
plans.quotas |
object (free-form) | |
plans.resources_count |
integer | |
plans.plan_type |
string | |
plans.minimal_price |
number (double) | |
screenshots |
array of objects | |
screenshots.name |
string | |
screenshots.uuid |
string (uuid) | |
screenshots.description |
string | |
screenshots.image |
string (uri) | |
screenshots.thumbnail |
string (uri) | |
screenshots.created |
string (date-time) | |
type |
string | |
shared |
boolean | Accessible to all customers. |
billable |
boolean | Purchase and usage is invoiced. |
scope |
string | |
scope_uuid |
string (uuid) | |
scope_name |
string (uuid) | |
scope_state |
any | |
scope_error_message |
string | |
files |
array of objects | |
files.name |
string | |
files.created |
string (date-time) | |
files.file |
string (uri) | |
quotas |
array of objects | |
quotas.name |
string | |
quotas.usage |
integer | |
quotas.limit |
integer | |
paused_reason |
string | |
datacite_doi |
string | |
citation_count |
integer | Number of citations of a DOI |
latitude |
number (double) | |
longitude |
number (double) | |
country |
any | |
backend_id |
string | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
image |
string (uri) | |
total_customers |
integer | |
total_cost |
integer | |
total_cost_estimated |
integer | |
parent_description |
string | |
parent_uuid |
string (uuid) | |
parent_name |
string | |
backend_metadata |
any | |
has_compliance_requirements |
boolean | |
billing_type_classification |
string | Classify offering components by billing type. Returns 'limit_only', 'usage_only', or 'mixed'. |
compliance_checklist |
string (uri) | |
user_has_consent |
boolean | |
google_calendar_is_public |
boolean | |
google_calendar_link |
string | Get the Google Calendar link for an offering. |
promotion_campaigns |
array of objects | |
promotion_campaigns.uuid |
string (uuid) | |
promotion_campaigns.name |
string | |
promotion_campaigns.start_date |
string (date) | Starting from this date, the campaign is active. |
promotion_campaigns.end_date |
string (date) | The last day the campaign is active. |
promotion_campaigns.discount_type |
string | Enum: discount, special_price |
promotion_campaigns.discount |
integer | |
promotion_campaigns.stock |
integer | |
promotion_campaigns.description |
string | |
promotion_campaigns.months |
integer | How many months in a row should the related service (when activated) get special deal (0 for indefinitely until active) |
promotion_campaigns.service_provider |
string (uri) |
Retrieve a public offering
Returns the details of a specific public offering. Access is granted if the offering is available for ordering by the current user or if anonymous access is enabled.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
- API Source:
marketplace_public_offerings_retrieve
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Name | Type |
|---|---|
field |
array |
200 -
| Field | Type | Description |
|---|---|---|
url |
string (uri) | |
uuid |
string (uuid) | |
created |
string (date-time) | |
name |
string | |
slug |
string | |
description |
string | |
full_description |
string | |
privacy_policy_link |
string (uri) | |
access_url |
string (uri) | Publicly accessible offering access URL |
endpoints |
array of objects | |
endpoints.uuid |
string (uuid) | |
endpoints.name |
string | |
endpoints.url |
string | |
software_catalogs |
array of objects | |
software_catalogs.uuid |
string (uuid) | |
software_catalogs.catalog |
object | |
software_catalogs.catalog.uuid |
string | |
software_catalogs.catalog.name |
string | |
software_catalogs.catalog.version |
string | |
software_catalogs.catalog.description |
string | |
software_catalogs.enabled_cpu_family |
any | List of enabled CPU families: ['x86_64', 'aarch64'] |
software_catalogs.enabled_cpu_microarchitectures |
any | List of enabled CPU microarchitectures: ['generic', 'zen3'] |
software_catalogs.package_count |
integer | |
software_catalogs.partition |
object | |
software_catalogs.partition.uuid |
string | |
software_catalogs.partition.partition_name |
string | |
software_catalogs.partition.priority_tier |
integer | |
software_catalogs.partition.qos |
string | |
partitions |
array of objects | |
partitions.uuid |
string (uuid) | |
partitions.partition_name |
string | Name of the SLURM partition |
partitions.cpu_bind |
integer | Default task binding policy (SLURM cpu_bind) |
partitions.def_cpu_per_gpu |
integer | Default CPUs allocated per GPU |
partitions.max_cpus_per_node |
integer | Maximum allocated CPUs per node |
partitions.max_cpus_per_socket |
integer | Maximum allocated CPUs per socket |
partitions.def_mem_per_cpu |
integer (int64) | Default memory per CPU in MB |
partitions.def_mem_per_gpu |
integer (int64) | Default memory per GPU in MB |
partitions.def_mem_per_node |
integer (int64) | Default memory per node in MB |
partitions.max_mem_per_cpu |
integer (int64) | Maximum memory per CPU in MB |
partitions.max_mem_per_node |
integer (int64) | Maximum memory per node in MB |
partitions.default_time |
integer | Default time limit in minutes |
partitions.max_time |
integer | Maximum time limit in minutes |
partitions.grace_time |
integer | Preemption grace time in seconds |
partitions.max_nodes |
integer | Maximum nodes per job |
partitions.min_nodes |
integer | Minimum nodes per job |
partitions.exclusive_topo |
boolean | Exclusive topology access required |
partitions.exclusive_user |
boolean | Exclusive user access required |
partitions.priority_tier |
integer | Priority tier for scheduling and preemption |
partitions.qos |
string | Quality of Service (QOS) name |
partitions.req_resv |
boolean | Require reservation for job allocation |
roles |
array of objects | |
roles.uuid |
string (uuid) | |
roles.name |
string | |
roles.url |
string (uri) | |
customer |
string (uri) | |
customer_uuid |
string (uuid) | |
customer_name |
string | |
project |
string (uri) | |
project_uuid |
string (uuid) | |
project_name |
string | |
category |
string (uri) | |
category_uuid |
string (uuid) | |
category_title |
string | |
attributes |
object (free-form) | |
options |
any | |
resource_options |
any | |
components |
array of objects | |
components.uuid |
string (uuid) | |
components.billing_type |
string | Enum: fixed, usage, limit, one, few |
components.type |
string | Unique internal name of the measured unit, for example floating_ip. |
components.name |
string | Display name for the measured unit, for example, Floating IP. |
components.description |
string | |
components.measured_unit |
string | Unit of measurement, for example, GB. |
components.unit_factor |
integer | The conversion factor from backend units to measured_unit |
components.limit_period |
any | |
components.limit_amount |
integer | |
components.article_code |
string | |
components.max_value |
integer | |
components.min_value |
integer | |
components.max_available_limit |
integer | |
components.is_boolean |
boolean | |
components.default_limit |
integer | |
components.factor |
integer | |
components.is_builtin |
boolean | |
components.is_prepaid |
boolean | |
components.overage_component |
string (uuid) | |
components.min_prepaid_duration |
integer | |
components.max_prepaid_duration |
integer | |
plugin_options |
any | |
state |
any | |
vendor_details |
string | |
getting_started |
string | |
integration_guide |
string | |
thumbnail |
string (uri) | |
order_count |
integer | |
plans |
array of objects | |
plans.url |
string (uri) | |
plans.uuid |
string (uuid) | |
plans.name |
string | |
plans.description |
string | |
plans.article_code |
string | |
plans.max_amount |
integer | Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. |
plans.archived |
boolean | Forbids creation of new resources. |
plans.is_active |
boolean | |
plans.unit_price |
string (decimal) | |
plans.unit |
string | Enum: month, quarter, half_month, day, hour, quantity |
plans.init_price |
number (double) | |
plans.switch_price |
number (double) | |
plans.backend_id |
string | |
plans.organization_groups |
array of objects | |
plans.organization_groups.uuid |
string (uuid) | |
plans.organization_groups.url |
string (uri) | |
plans.organization_groups.name |
string | |
plans.organization_groups.parent_uuid |
string (uuid) | |
plans.organization_groups.parent_name |
string | |
plans.organization_groups.parent |
string (uri) | |
plans.organization_groups.customers_count |
integer | |
plans.components |
array of objects | |
plans.components.type |
string | Unique internal name of the measured unit, for example floating_ip. |
plans.components.name |
string | Display name for the measured unit, for example, Floating IP. |
plans.components.measured_unit |
string | Unit of measurement, for example, GB. |
plans.components.amount |
integer | |
plans.components.price |
string (decimal) | |
plans.components.future_price |
string (decimal) | |
plans.components.discount_threshold |
integer | Minimum amount to be eligible for discount. |
plans.components.discount_rate |
integer | Discount rate in percentage. |
plans.prices |
object (free-form) | |
plans.future_prices |
object (free-form) | |
plans.quotas |
object (free-form) | |
plans.resources_count |
integer | |
plans.plan_type |
string | |
plans.minimal_price |
number (double) | |
screenshots |
array of objects | |
screenshots.name |
string | |
screenshots.uuid |
string (uuid) | |
screenshots.description |
string | |
screenshots.image |
string (uri) | |
screenshots.thumbnail |
string (uri) | |
screenshots.created |
string (date-time) | |
type |
string | |
shared |
boolean | Accessible to all customers. |
billable |
boolean | Purchase and usage is invoiced. |
scope |
string | |
scope_uuid |
string (uuid) | |
scope_name |
string (uuid) | |
scope_state |
any | |
scope_error_message |
string | |
files |
array of objects | |
files.name |
string | |
files.created |
string (date-time) | |
files.file |
string (uri) | |
quotas |
array of objects | |
quotas.name |
string | |
quotas.usage |
integer | |
quotas.limit |
integer | |
paused_reason |
string | |
datacite_doi |
string | |
citation_count |
integer | Number of citations of a DOI |
latitude |
number (double) | |
longitude |
number (double) | |
country |
any | |
backend_id |
string | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
image |
string (uri) | |
total_customers |
integer | |
total_cost |
integer | |
total_cost_estimated |
integer | |
parent_description |
string | |
parent_uuid |
string (uuid) | |
parent_name |
string | |
backend_metadata |
any | |
has_compliance_requirements |
boolean | |
billing_type_classification |
string | Classify offering components by billing type. Returns 'limit_only', 'usage_only', or 'mixed'. |
compliance_checklist |
string (uri) | |
user_has_consent |
boolean | |
google_calendar_is_public |
boolean | |
google_calendar_link |
string | Get the Google Calendar link for an offering. |
promotion_campaigns |
array of objects | |
promotion_campaigns.uuid |
string (uuid) | |
promotion_campaigns.name |
string | |
promotion_campaigns.start_date |
string (date) | Starting from this date, the campaign is active. |
promotion_campaigns.end_date |
string (date) | The last day the campaign is active. |
promotion_campaigns.discount_type |
string | Enum: discount, special_price |
promotion_campaigns.discount |
integer | |
promotion_campaigns.stock |
integer | |
promotion_campaigns.description |
string | |
promotion_campaigns.months |
integer | How many months in a row should the related service (when activated) get special deal (0 for indefinitely until active) |
promotion_campaigns.service_provider |
string (uri) |
Other Actions
List plans for an offering
Returns a list of plans available for a specific offering. The plans are filtered based on the current user's permissions and organization group memberships.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
- API Source:
marketplace_public_offerings_plans_list
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type | Description |
|---|---|---|
url |
string (uri) | |
uuid |
string (uuid) | |
name |
string | |
description |
string | |
article_code |
string | |
max_amount |
integer | Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. |
archived |
boolean | Forbids creation of new resources. |
is_active |
boolean | |
unit_price |
string (decimal) | |
unit |
string | Enum: month, quarter, half_month, day, hour, quantity |
init_price |
number (double) | |
switch_price |
number (double) | |
backend_id |
string | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
components |
array of objects | |
components.type |
string | Unique internal name of the measured unit, for example floating_ip. |
components.name |
string | Display name for the measured unit, for example, Floating IP. |
components.measured_unit |
string | Unit of measurement, for example, GB. |
components.amount |
integer | |
components.price |
string (decimal) | |
components.future_price |
string (decimal) | |
components.discount_threshold |
integer | Minimum amount to be eligible for discount. |
components.discount_rate |
integer | Discount rate in percentage. |
prices |
object (free-form) | |
future_prices |
object (free-form) | |
quotas |
object (free-form) | |
resources_count |
integer | |
plan_type |
string | |
minimal_price |
number (double) |
Retrieve a specific plan for an offering
Returns the details of a specific plan if it is available to the current user for the given offering.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
- API Source:
marketplace_public_offerings_plans_retrieve
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | |
| Name | Type | Required |
|---|---|---|
plan_uuid |
string | ✓ |
uuid |
string | ✓ |
200 -
| Field | Type | Description |
|---|---|---|
url |
string (uri) | |
uuid |
string (uuid) | |
name |
string | |
description |
string | |
article_code |
string | |
max_amount |
integer | Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. |
archived |
boolean | Forbids creation of new resources. |
is_active |
boolean | |
unit_price |
string (decimal) | |
unit |
string | Enum: month, quarter, half_month, day, hour, quantity |
init_price |
number (double) | |
switch_price |
number (double) | |
backend_id |
string | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
components |
array of objects | |
components.type |
string | Unique internal name of the measured unit, for example floating_ip. |
components.name |
string | Display name for the measured unit, for example, Floating IP. |
components.measured_unit |
string | Unit of measurement, for example, GB. |
components.amount |
integer | |
components.price |
string (decimal) | |
components.future_price |
string (decimal) | |
components.discount_threshold |
integer | Minimum amount to be eligible for discount. |
components.discount_rate |
integer | Discount rate in percentage. |
prices |
object (free-form) | |
future_prices |
object (free-form) | |
quotas |
object (free-form) | |
resources_count |
integer | |
plan_type |
string | |
minimal_price |
number (double) |