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
URL-friendly identifier. Only editable by staff users.
description
string
full_description
string
privacy_policy_link
string (uri)
helpdesk_url
string (uri)
documentation_url
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
URL of the access endpoint
software_catalogs
array of objects
software_catalogs.uuid
string (uuid)
software_catalogs.catalog
any
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
any
partitions
array of objects
partitions.uuid
string (uuid)
partitions.partition_name
string
Name of the SLURM partition
partitions.cpu_arch
string
CPU architecture of the partition (e.g., x86_64/amd/zen3)
partitions.gpu_arch
string
GPU architecture of the partition (e.g., nvidia/cc90, amd/gfx90a)
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
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.offering_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
components.prepaid_duration_step
integer
Step size in months for the initial prepaid duration at order creation. If set, only multiples of this value (starting from min_prepaid_duration) are valid. Defaults to 1 (any value between min and max).
components.min_renewal_duration
integer
Minimum number of months allowed for a renewal.
components.max_renewal_duration
integer
Maximum number of months allowed for a renewal.
components.renewal_duration_step
integer
Step size in months for renewal. Only multiples of this value (starting from min_renewal_duration) are valid. Defaults to 1.
plugin_options
any
secret_options
any
service_attributes
object (free-form)
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.
URL-friendly identifier. Only editable by staff users.
description
string
full_description
string
privacy_policy_link
string (uri)
helpdesk_url
string (uri)
documentation_url
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
URL of the access endpoint
software_catalogs
array of objects
software_catalogs.uuid
string (uuid)
software_catalogs.catalog
any
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
any
partitions
array of objects
partitions.uuid
string (uuid)
partitions.partition_name
string
Name of the SLURM partition
partitions.cpu_arch
string
CPU architecture of the partition (e.g., x86_64/amd/zen3)
partitions.gpu_arch
string
GPU architecture of the partition (e.g., nvidia/cc90, amd/gfx90a)
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
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.offering_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
components.prepaid_duration_step
integer
Step size in months for the initial prepaid duration at order creation. If set, only multiples of this value (starting from min_prepaid_duration) are valid. Defaults to 1 (any value between min and max).
components.min_renewal_duration
integer
Minimum number of months allowed for a renewal.
components.max_renewal_duration
integer
Maximum number of months allowed for a renewal.
components.renewal_duration_step
integer
Step size in months for renewal. Only multiples of this value (starting from min_renewal_duration) are valid. Defaults to 1.
plugin_options
any
secret_options
any
service_attributes
object (free-form)
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.
URL-friendly identifier. Only editable by staff users.
description
string
full_description
string
privacy_policy_link
string (uri)
helpdesk_url
string (uri)
documentation_url
string (uri)
access_url
string (uri)
Publicly accessible offering access URL
customer
string (uri)
category
string (uri)
✓
attributes
any
options
object
options.order
array of strings
✓
options.options
object (free-form)
✓
resource_options
object
resource_options.order
array of strings
✓
resource_options.options
object (free-form)
✓
components
array of objects
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.is_prepaid
boolean
components.overage_component
string (uuid)
components.min_prepaid_duration
integer
components.max_prepaid_duration
integer
components.prepaid_duration_step
integer
Step size in months for the initial prepaid duration at order creation. If set, only multiples of this value (starting from min_prepaid_duration) are valid. Defaults to 1 (any value between min and max).
components.min_renewal_duration
integer
Minimum number of months allowed for a renewal.
components.max_renewal_duration
integer
Maximum number of months allowed for a renewal.
components.renewal_duration_step
integer
Step size in months for renewal. Only multiples of this value (starting from min_renewal_duration) are valid. Defaults to 1.
plugin_options
object
plugin_options.auto_approve_remote_orders
boolean
If set to True, an order can be processed without approval
plugin_options.resource_expiration_threshold
integer
Resource expiration threshold in days. Constraints: default: 30
If set to True, offering users will be automatically marked for deletion by the cleanup task when users lose project access. If False (default), deletion must be triggered manually by the service provider. Constraints: default: False
If set to True, create orders when options of related resources are changed.
plugin_options.enable_resource_projects
boolean
Enable sub-project management within resources.
plugin_options.auto_ok_resource_projects
boolean
If set to True, newly-created resource projects are immediately transitioned from CREATING to OK on save, bypassing the provider/site-agent reconciliation callback. Use for offerings that have no external backend to reconcile against.
plugin_options.resource_projects_limits_required
boolean
If set to True, every limit-billing component declared by the offering must have a value when creating or updating a resource project. Use this for backends that reject projects without resource quotas (e.g. the rancher-keycloak-operator's project-level resourceQuota.limit cap).
GLAuth initial usergroup number Constraints: default: 6000
plugin_options.initial_rolegroup_number
integer
GLAuth initial gid for role-aware groups (one per (resource
plugin_options.resource_role_map
object (free-form)
Mapping of Waldur role names (on Resource scope) to emitted role tokens used in group name rendering. Roles outside the map are skipped. Example: {"PI": "admin", "Member": "member"}.
plugin_options.resource_project_role_map
object (free-form)
Mapping of Waldur role names (on ResourceProject scope) to emitted role tokens. Same semantics as resource_role_map.
plugin_options.resource_role_group_template
string
string.Template for resource-scope role group names. Variables: ${role_name}, ${resource_slug}, ${customer_slug}, ${project_slug}. Constraints: default: ${resource_slug}_${role_name}
string.Template for resource-project-scope role group names. Adds ${rp_uuid}, ${rp_uuid_short}, ${project_name} to the variables available for resource-scope templates. Constraints: default: ${resource_slug}_${rp_uuid_short}_${role_name}
plugin_options.username_anonymized_prefix
string
GLAuth prefix for anonymized usernames Constraints: default: waldur_
If set to True, highlighted backend ID display is only shown when the resource has an effective_id. Constraints: default: False
plugin_options.expose_inference_playground
boolean
Show an in-browser inference playground action for resources of this offering (for offerings whose resources expose an OpenAI-compatible endpoint). Constraints: default: False
plugin_options.disabled_resource_actions
array of strings
List of disabled marketplace resource actions for this offering.
vendor_details
string
getting_started
string
integration_guide
string
thumbnail
string (binary)
plans
array of objects
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.
Validation rules for resource backend_id: format regex and uniqueness scope.
image
string (binary)
backend_metadata
any
compliance_checklist
string (uri)
offering_group
string (uuid)
limits
object (free-form)
Constraints: write-only
201 -
Field
Type
Description
url
string (uri)
uuid
string (uuid)
created
string (date-time)
name
string
slug
string
URL-friendly identifier. Only editable by staff users.
description
string
full_description
string
privacy_policy_link
string (uri)
helpdesk_url
string (uri)
documentation_url
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
URL of the access endpoint
software_catalogs
array of objects
software_catalogs.uuid
string (uuid)
software_catalogs.catalog
any
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
any
partitions
array of objects
partitions.uuid
string (uuid)
partitions.partition_name
string
Name of the SLURM partition
partitions.cpu_arch
string
CPU architecture of the partition (e.g., x86_64/amd/zen3)
partitions.gpu_arch
string
GPU architecture of the partition (e.g., nvidia/cc90, amd/gfx90a)
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
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.offering_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
components.prepaid_duration_step
integer
Step size in months for the initial prepaid duration at order creation. If set, only multiples of this value (starting from min_prepaid_duration) are valid. Defaults to 1 (any value between min and max).
components.min_renewal_duration
integer
Minimum number of months allowed for a renewal.
components.max_renewal_duration
integer
Maximum number of months allowed for a renewal.
components.renewal_duration_step
integer
Step size in months for renewal. Only multiples of this value (starting from min_renewal_duration) are valid. Defaults to 1.
plugin_options
any
secret_options
any
service_attributes
object (free-form)
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.
This endpoint provides a configuration file for GLauth.
It is intended to be used by an external agent to synchronize user data from Waldur to GLauth.
Example output format:
```
[[users]]
name = "johndoe"
givenname="John"
sn="Doe"
mail = "john.doe@example.com"
...
[[groups]]
name = "group1"
gidnumber = 1001
```
List of ISD source identifiers this user can manage via Identity Bridge. E.g., ['isd:puhuri', 'isd:fenix']. Non-empty list implies identity manager role.
active_isds
any
List of ISDs that have asserted this user exists. User is deactivated when this becomes empty.
deactivation_reason
string
Reason why the user was deactivated. Visible to staff and support.
is_admin_deactivated
boolean
Designates that the user was deactivated by an administrator and must not be reactivated automatically by the role-sync task. Visible to staff and support.
List project service accounts for an offering
Returns a paginated list of project-level service accounts for projects that have resources of this offering.
The response body is an array of objects, where each object has the following structure:
Field
Type
url
string (uri)
uuid
string (uuid)
created
string (date-time)
modified
string (date-time)
username
string
description
string
error_message
string
error_traceback
string
state
any
token
string
email
string (email)
expires_at
string
preferred_identifier
string
project
string (uuid)
project_uuid
string (uuid)
project_name
string
customer_uuid
string (uuid)
customer_name
string
customer_abbreviation
string
List users and their roles in a scope
Retrieves a list of users who have a role within a specific scope (e.g., a project or an organization). The list can be filtered by user details or role.
Updates the expiration time for a user's existing role in the current scope. This is useful for extending or shortening the duration of a permission. To make a role permanent, set expiration_time to null.
Unique internal name of the measured unit, for example floating_ip.
name
string
✓
Display name for the measured unit, for example, Floating IP.
description
string
measured_unit
string
Unit of measurement, for example, GB.
unit_factor
integer
The conversion factor from backend units to measured_unit
limit_period
any
limit_amount
integer
article_code
string
max_value
integer
min_value
integer
max_available_limit
integer
is_boolean
boolean
default_limit
integer
is_prepaid
boolean
overage_component
string (uuid)
min_prepaid_duration
integer
max_prepaid_duration
integer
prepaid_duration_step
integer
Step size in months for the initial prepaid duration at order creation. If set, only multiples of this value (starting from min_prepaid_duration) are valid. Defaults to 1 (any value between min and max).
min_renewal_duration
integer
Minimum number of months allowed for a renewal.
max_renewal_duration
integer
Maximum number of months allowed for a renewal.
renewal_duration_step
integer
Step size in months for renewal. Only multiples of this value (starting from min_renewal_duration) are valid. Defaults to 1.
201 - No response body
Remove an offering component
Removes a custom component from an offering. Built-in components cannot be removed.
Unique internal name of the measured unit, for example floating_ip.
name
string
✓
Display name for the measured unit, for example, Floating IP.
description
string
measured_unit
string
Unit of measurement, for example, GB.
unit_factor
integer
The conversion factor from backend units to measured_unit
limit_period
any
limit_amount
integer
article_code
string
max_value
integer
min_value
integer
max_available_limit
integer
is_boolean
boolean
default_limit
integer
is_prepaid
boolean
overage_component
string (uuid)
min_prepaid_duration
integer
max_prepaid_duration
integer
prepaid_duration_step
integer
Step size in months for the initial prepaid duration at order creation. If set, only multiples of this value (starting from min_prepaid_duration) are valid. Defaults to 1 (any value between min and max).
min_renewal_duration
integer
Minimum number of months allowed for a renewal.
max_renewal_duration
integer
Maximum number of months allowed for a renewal.
renewal_duration_step
integer
Step size in months for renewal. Only multiples of this value (starting from min_renewal_duration) are valid. Defaults to 1.
200 - No response body
Software Catalogs and Partitions
Add a partition to an offering
Adds a new partition configuration to an offering.
Target customer URL with service provider profile where the offering should be moved
preserve_permissions
boolean
✓
Whether to preserve existing permissions when moving the offering
200 -
Field
Type
Description
url
string (uri)
uuid
string (uuid)
created
string (date-time)
name
string
slug
string
URL-friendly identifier. Only editable by staff users.
description
string
full_description
string
privacy_policy_link
string (uri)
helpdesk_url
string (uri)
documentation_url
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
URL of the access endpoint
software_catalogs
array of objects
software_catalogs.uuid
string (uuid)
software_catalogs.catalog
any
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
any
partitions
array of objects
partitions.uuid
string (uuid)
partitions.partition_name
string
Name of the SLURM partition
partitions.cpu_arch
string
CPU architecture of the partition (e.g., x86_64/amd/zen3)
partitions.gpu_arch
string
GPU architecture of the partition (e.g., nvidia/cc90, amd/gfx90a)
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
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.offering_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
components.prepaid_duration_step
integer
Step size in months for the initial prepaid duration at order creation. If set, only multiples of this value (starting from min_prepaid_duration) are valid. Defaults to 1 (any value between min and max).
components.min_renewal_duration
integer
Minimum number of months allowed for a renewal.
components.max_renewal_duration
integer
Maximum number of months allowed for a renewal.
components.renewal_duration_step
integer
Step size in months for renewal. Only multiples of this value (starting from min_renewal_duration) are valid. Defaults to 1.
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.
If set to True, offering users will be automatically marked for deletion by the cleanup task when users lose project access. If False (default), deletion must be triggered manually by the service provider. Constraints: default: False
If set to True, create orders when options of related resources are changed.
plugin_options.enable_resource_projects
boolean
Enable sub-project management within resources.
plugin_options.auto_ok_resource_projects
boolean
If set to True, newly-created resource projects are immediately transitioned from CREATING to OK on save, bypassing the provider/site-agent reconciliation callback. Use for offerings that have no external backend to reconcile against.
plugin_options.resource_projects_limits_required
boolean
If set to True, every limit-billing component declared by the offering must have a value when creating or updating a resource project. Use this for backends that reject projects without resource quotas (e.g. the rancher-keycloak-operator's project-level resourceQuota.limit cap).
GLAuth initial usergroup number Constraints: default: 6000
plugin_options.initial_rolegroup_number
integer
GLAuth initial gid for role-aware groups (one per (resource
plugin_options.resource_role_map
object (free-form)
Mapping of Waldur role names (on Resource scope) to emitted role tokens used in group name rendering. Roles outside the map are skipped. Example: {"PI": "admin", "Member": "member"}.
plugin_options.resource_project_role_map
object (free-form)
Mapping of Waldur role names (on ResourceProject scope) to emitted role tokens. Same semantics as resource_role_map.
plugin_options.resource_role_group_template
string
string.Template for resource-scope role group names. Variables: ${role_name}, ${resource_slug}, ${customer_slug}, ${project_slug}. Constraints: default: ${resource_slug}_${role_name}
string.Template for resource-project-scope role group names. Adds ${rp_uuid}, ${rp_uuid_short}, ${project_name} to the variables available for resource-scope templates. Constraints: default: ${resource_slug}_${rp_uuid_short}_${role_name}
plugin_options.username_anonymized_prefix
string
GLAuth prefix for anonymized usernames Constraints: default: waldur_
If set to True, highlighted backend ID display is only shown when the resource has an effective_id. Constraints: default: False
plugin_options.expose_inference_playground
boolean
Show an in-browser inference playground action for resources of this offering (for offerings whose resources expose an OpenAI-compatible endpoint). Constraints: default: False
plugin_options.disabled_resource_actions
array of strings
List of disabled marketplace resource actions for this offering.
service_attributes
any
backend_id
string
200 - No response body
Update offering location
Updates the geographical location (latitude and longitude) of an offering.
Public data used by specific plugin, such as storage mode for OpenStack.
provider_name
string
provider_uuid
string (uuid)
provider_slug
string
provider_description
string
category_title
string
category_uuid
string (uuid)
category_icon
string (uri)
plan
string (uri)
plan_unit
any
plan_name
string
plan_uuid
string (uuid)
plan_description
string
attributes
object (free-form)
limits
object (free-form)
uuid
string (uuid)
created
string (date-time)
modified
string (date-time)
url
string (uri)
scope
string
description
string
state
any
resource_uuid
string (uuid)
backend_id
string
effective_id
string
resource_type
string
project
string (uri)
project_uuid
string (uuid)
project_name
string
project_description
string
project_end_date
string (date)
The date is inclusive. Once reached, all project resource will be scheduled for termination.
project_effective_end_date
string (date)
Effective project end date including grace period. After this date, resources will be terminated.
project_is_in_grace_period
boolean
True if the project is past its end date but still within the grace period.
project_end_date_requested_by
string (uri)
customer_uuid
string (uuid)
customer_name
string
offering_slug
string
parent_offering_uuid
string (uuid)
parent_offering_name
string
parent_offering_slug
string
offering_backend_id
string
parent_uuid
string (uuid)
parent_name
string
backend_metadata
any
is_usage_based
boolean
Returns True if the resource has usage-based components that track variable consumption.
is_limit_based
boolean
Returns True if the resource has limit-based components with user-adjustable quotas.
name
string
slug
string
URL-friendly identifier. Only editable by staff users.
current_usages
object (free-form)
Dictionary mapping component types to their latest reported usage amounts.
can_terminate
boolean
report
array of objects
report.header
string
Section header text
report.body
string
Section body content
end_date
string (date)
The date is inclusive. Once reached, a resource will be scheduled for termination.
end_date_requested_by
string (uri)
end_date_updated_at
string (date-time)
Timestamp of the last end_date change.
username
string
limit_usage
object (free-form)
Dictionary mapping limit-based component types to their consumed usage. For monthly periods, maps from current_usages; for longer periods, aggregates historical usage.
downscaled
boolean
restrict_member_access
boolean
paused
boolean
endpoints
array of objects
endpoints.uuid
string (uuid)
endpoints.name
string
endpoints.url
string
URL of the access endpoint
error_message
string
error_traceback
string
options
any
available_actions
array of strings
last_sync
string (date-time)
order_in_progress
any
creation_order
any
service_settings_uuid
string (uuid)
project_slug
string
customer_slug
string
user_requires_reconsent
boolean
Check if the current user needs to re-consent for this resource's offering.
renewal_date
object (free-form)
offering_state
any
offering_components
array of objects
offering_components.uuid
string (uuid)
offering_components.offering_uuid
string (uuid)
offering_components.billing_type
string
Enum: fixed, usage, limit, one, few
offering_components.type
string
Unique internal name of the measured unit, for example floating_ip.
offering_components.name
string
Display name for the measured unit, for example, Floating IP.
offering_components.description
string
offering_components.measured_unit
string
Unit of measurement, for example, GB.
offering_components.unit_factor
integer
The conversion factor from backend units to measured_unit
offering_components.limit_period
any
offering_components.limit_amount
integer
offering_components.article_code
string
offering_components.max_value
integer
offering_components.min_value
integer
offering_components.max_available_limit
integer
offering_components.is_boolean
boolean
offering_components.default_limit
integer
offering_components.factor
integer
offering_components.is_builtin
boolean
offering_components.is_prepaid
boolean
offering_components.overage_component
string (uuid)
offering_components.min_prepaid_duration
integer
offering_components.max_prepaid_duration
integer
offering_components.prepaid_duration_step
integer
Step size in months for the initial prepaid duration at order creation. If set, only multiples of this value (starting from min_prepaid_duration) are valid. Defaults to 1 (any value between min and max).
offering_components.min_renewal_duration
integer
Minimum number of months allowed for a renewal.
offering_components.max_renewal_duration
integer
Maximum number of months allowed for a renewal.
offering_components.renewal_duration_step
integer
Step size in months for renewal. Only multiples of this value (starting from min_renewal_duration) are valid. Defaults to 1.
Synchronize offering service settings
Schedules a synchronization task to pull the latest data for the offering's service settings from the backend.
Returns the same set of users, groups and robot accounts as glauth_users_config, but as a structured JSON tree suitable for navigation in admin UIs. Source of truth for the TOML endpoint.
Return True if this is a default (unsaved) config.
offering_uuid
string (uuid)
offering_name
string
Check if backend_id is unique
Checks if the provided backend_id has been used in resources of this offering or all offerings of the same customer. Returns true if unique, false if already used.
Include offering components in export Constraints: default: True
include_plans
boolean
Include offering plans in export Constraints: default: True
include_screenshots
boolean
Include offering screenshots in export Constraints: default: True
include_files
boolean
Include offering files in export Constraints: default: True
include_endpoints
boolean
Include offering access endpoints in export Constraints: default: True
include_organization_groups
boolean
Include organization groups associations in export Constraints: default: True
include_terms_of_service
boolean
Include terms of service configurations in export Constraints: default: True
include_plugin_options
boolean
Include plugin options in export Constraints: default: True
include_secret_options
boolean
Include secret options in export (WARNING: sensitive data) Constraints: default: False
include_attributes
boolean
Include offering attributes in export Constraints: default: True
include_options
boolean
Include offering options in export Constraints: default: True
include_resource_options
boolean
Include resource options in export Constraints: default: True
200 -
Field
Type
Description
offering_uuid
string (uuid)
UUID of the exported offering
offering_name
string
Name of the exported offering
export_data
any
Complete export data containing the offering structure
exported_components
array of strings
List of exported component types
export_timestamp
string (date-time)
Timestamp when the export was completed
Import offering data
Imports an offering and all its connected parts from YAML format. Allows configuration of which components to import and how to handle conflicts. Imported offerings are always created in DRAFT state for security.
Sets the offering's offering_group FK. Pass offering_group: <uuid> to assign a group, or offering_group: null to clear it. The group must belong to the same customer as the offering.
OfferingGroup UUID. Pass null to remove the assignment.
200 - No response body
Bind / unbind offering to a service profile
Sets the offering's profile FK. Pass profile: <uuid> to bind, or profile: null to unbind. Requires UPDATE_OFFERING permission on the offering's customer (service-provider owners and staff). Triggers async reconciliation of RoleAvailability rows on this offering against the profile's role catalog (or wipes them on unbind).
OfferingProfile UUID to bind to. Pass null to unbind.
200 - No response body
Switch billing mode for builtin components
Switches all builtin components between monthly (LIMIT), prepaid (ONE_TIME + is_prepaid), and usage-based billing modes. Works for any offering type that has registered builtin components.
Changes the offering's type between Marketplace.Basic and the site-agent type (Marketplace.Slurm). Both plugins share the same data shape (the site-agent processors inherit from Basic and only delegate the send paths to the external agent), so the swap is safe in either direction. Refused if the offering's current type is not in the swappable set.