Skip to content

Marketplace Resources

Operations Summary

Method Endpoint Description
Core CRUD
GET /api/marketplace-resources/ List Marketplace Resources
GET /api/marketplace-resources/{uuid}/ Retrieve
POST /api/marketplace-resources/{uuid}/pull/ Starts process of pulling a resource
POST /api/marketplace-resources/{uuid}/unlink/ Unlink
PUT /api/marketplace-resources/{uuid}/ Update
PATCH /api/marketplace-resources/{uuid}/ Partial Update
State Management
POST /api/marketplace-resources/{uuid}/set_downscaled/ Set downscaled flag for resource
POST /api/marketplace-resources/{uuid}/set_paused/ Set paused flag for resource
POST /api/marketplace-resources/{uuid}/terminate/ Create marketplace order for resource termination
Configuration & Updates
POST /api/marketplace-resources/{uuid}/move_resource/ Move resource to another project
POST /api/marketplace-resources/{uuid}/renew/ Create a renewal order for a prepaid resource
POST /api/marketplace-resources/{uuid}/set_end_date_by_staff/ Set end date of the resource by staff
POST /api/marketplace-resources/{uuid}/set_restrict_member_access/ Set restrict_member_access flag for resource
POST /api/marketplace-resources/{uuid}/set_slug/ Set slug for resource
POST /api/marketplace-resources/{uuid}/switch_plan/ Create marketplace order for resource plan switch
POST /api/marketplace-resources/{uuid}/update_limits/ Create marketplace order for resource limits update
POST /api/marketplace-resources/{uuid}/update_options/ Update resource options
Data & Reporting
GET /api/marketplace-resources/{uuid}/details/ Details
GET /api/marketplace-resources/{uuid}/glauth_users_config/ Glauth users config
GET /api/marketplace-resources/{uuid}/offering_for_subresources/ Offering for subresources
GET /api/marketplace-resources/{uuid}/offering/ Offering
GET /api/marketplace-resources/{uuid}/plan_periods/ Plan periods
GET /api/marketplace-resources/{uuid}/team/ Return users connected to the project
Naming
POST /api/marketplace-resources/suggest_name/ Suggest name

Core CRUD

List Marketplace Resources

1
2
3
4
http \
  GET \
  https://api.example.com/api/marketplace-resources/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_list # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_list.sync(client=client)

for item in response:
    print(item)
  1. API Source: marketplace_resources_list
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import { marketplaceResourcesList } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesList({
  auth: "Token YOUR_API_TOKEN"
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Description
backend_id string Backend ID
category_uuid string (uuid)
component_count number Filter by exact number of components
created string (date-time) Created after
customer string
customer_uuid string (uuid)
downscaled boolean
field array
has_terminate_date boolean Has termination date
lexis_links_supported boolean LEXIS links supported
limit_based boolean Filter by limit-based offerings
limit_component_count number Filter by exact number of limit-based components
modified string (date-time) Modified after
name string
name_exact string
o array Ordering

offering string
offering_billable boolean
offering_shared boolean Offering shared
offering_slug array Multiple values may be separated by commas.
offering_type string
offering_uuid array Multiple values may be separated by commas.
only_limit_based boolean Filter resources with only limit-based components
only_usage_based boolean Filter resources with only usage-based components
page integer A page number within the paginated result set.
page_size integer Number of results to return per page.
parent_offering_uuid string (uuid)
paused boolean
plan_uuid string (uuid)
project_name string
project_uuid string (uuid)
provider_uuid string (uuid)
query string Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor
restrict_member_access boolean
runtime_state string Runtime state
service_manager_uuid string (uuid) Service Manager UUID
state array
usage_based boolean Filter by usage-based offerings
visible_to_username string Visible to username

200 -

The response body is an array of objects, where each object has the following structure:

Field Type Description
offering string (uri)
offering_name string
offering_uuid string (uuid)
offering_description string
offering_image string (uri)
offering_thumbnail string (uri)
offering_type string
offering_shared boolean Accessible to all customers.
offering_billable boolean Purchase and usage is invoiced.
offering_plugin_options any Public data used by specific plugin, such as storage mode for OpenStack.
provider_name string
provider_uuid string (uuid)
provider_slug 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_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
parent_uuid string (uuid)
parent_name string
backend_metadata any
is_usage_based boolean
is_limit_based boolean
name string
slug string
current_usages object (free-form)
can_terminate boolean
report array of objects
report.header string
report.body string
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.
end_date_requested_by string (uri)
username string
limit_usage object (free-form)
downscaled boolean
restrict_member_access boolean
paused boolean
endpoints array of objects
endpoints.uuid string (uuid)
endpoints.name string
endpoints.url string
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)

Retrieve

1
2
3
4
http \
  GET \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_retrieve # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_retrieve.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: marketplace_resources_retrieve
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesRetrieve } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesRetrieve({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Name Type
field array

200 -

Field Type Description
offering string (uri)
offering_name string
offering_uuid string (uuid)
offering_description string
offering_image string (uri)
offering_thumbnail string (uri)
offering_type string
offering_shared boolean Accessible to all customers.
offering_billable boolean Purchase and usage is invoiced.
offering_plugin_options any Public data used by specific plugin, such as storage mode for OpenStack.
provider_name string
provider_uuid string (uuid)
provider_slug 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_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
parent_uuid string (uuid)
parent_name string
backend_metadata any
is_usage_based boolean
is_limit_based boolean
name string
slug string
current_usages object (free-form)
can_terminate boolean
report array of objects
report.header string
report.body string
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.
end_date_requested_by string (uri)
username string
limit_usage object (free-form)
downscaled boolean
restrict_member_access boolean
paused boolean
endpoints array of objects
endpoints.uuid string (uuid)
endpoints.name string
endpoints.url string
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)

Starts process of pulling a resource

Starts process of pulling a resource

1
2
3
4
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/pull/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_pull # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_pull.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: marketplace_resources_pull
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesPull } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesPull({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -


Delete marketplace resource and related plugin resource from the database without scheduling operations on backend and without checking current state of the resource. It is intended to be used for removing resource stuck in transitioning state.

1
2
3
4
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/unlink/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_unlink # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_unlink.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: marketplace_resources_unlink
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesUnlink } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesUnlink({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 - No response body


Update

1
2
3
4
5
http \
  PUT \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN" \
  name="my-awesome-marketplace-resource"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_update_request import ResourceUpdateRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_update # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceUpdateRequest(
    name="my-awesome-marketplace-resource"
)
response = marketplace_resources_update.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceUpdateRequest
  2. API Source: marketplace_resources_update
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import { marketplaceResourcesUpdate } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesUpdate({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "name": "my-awesome-marketplace-resource"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
name string
description string
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.

200 -

Field Type Description
name string
description string
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.

Partial Update

1
2
3
4
http \
  PATCH \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.patched_resource_update_request import PatchedResourceUpdateRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_partial_update # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = PatchedResourceUpdateRequest()
response = marketplace_resources_partial_update.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: PatchedResourceUpdateRequest
  2. API Source: marketplace_resources_partial_update
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesPartialUpdate } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesPartialUpdate({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
name string
description string
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.

200 -

Field Type Description
name string
description string
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.

State Management

Set downscaled flag for resource

Set downscaled flag for resource.

1
2
3
4
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/set_downscaled/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_downscaled_request import ResourceDownscaledRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_set_downscaled # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceDownscaledRequest()
response = marketplace_resources_set_downscaled.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceDownscaledRequest
  2. API Source: marketplace_resources_set_downscaled
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesSetDownscaled } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesSetDownscaled({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
downscaled boolean

200 - No response body


Set paused flag for resource

Set paused flag for resource.

1
2
3
4
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/set_paused/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_paused_request import ResourcePausedRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_set_paused # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourcePausedRequest()
response = marketplace_resources_set_paused.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourcePausedRequest
  2. API Source: marketplace_resources_set_paused
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesSetPaused } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesSetPaused({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
paused boolean

200 - No response body


Create marketplace order for resource termination

Create marketplace order for resource termination.

1
2
3
4
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/terminate/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_terminate_request import ResourceTerminateRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_terminate # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceTerminateRequest()
response = marketplace_resources_terminate.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceTerminateRequest
  2. API Source: marketplace_resources_terminate
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesTerminate } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesTerminate({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
attributes any

200 -

Field Type
order_uuid string (uuid)

Configuration & Updates

Move resource to another project

Move resource to another project.

1
2
3
4
5
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/move_resource/ \
  Authorization:"Token YOUR_API_TOKEN" \
  project=null
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.move_resource_request import MoveResourceRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_move_resource # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = MoveResourceRequest(
    project=null
)
response = marketplace_resources_move_resource.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: MoveResourceRequest
  2. API Source: marketplace_resources_move_resource
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import { marketplaceResourcesMoveResource } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesMoveResource({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "project": null
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
project any

200 -

Field Type Description
offering string (uri)
offering_name string
offering_uuid string (uuid)
offering_description string
offering_image string (uri)
offering_thumbnail string (uri)
offering_type string
offering_shared boolean Accessible to all customers.
offering_billable boolean Purchase and usage is invoiced.
offering_plugin_options any Public data used by specific plugin, such as storage mode for OpenStack.
provider_name string
provider_uuid string (uuid)
provider_slug 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_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
parent_uuid string (uuid)
parent_name string
backend_metadata any
is_usage_based boolean
is_limit_based boolean
name string
slug string
current_usages object (free-form)
can_terminate boolean
report array of objects
report.header string
report.body string
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.
end_date_requested_by string (uri)
username string
limit_usage object (free-form)
downscaled boolean
restrict_member_access boolean
paused boolean
endpoints array of objects
endpoints.uuid string (uuid)
endpoints.name string
endpoints.url string
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)

Create a renewal order for a prepaid resource

Create a renewal order for a prepaid resource.

1
2
3
4
5
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/renew/ \
  Authorization:"Token YOUR_API_TOKEN" \
  extension_months=123
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_renew_request import ResourceRenewRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_renew # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceRenewRequest(
    extension_months=123
)
response = marketplace_resources_renew.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceRenewRequest
  2. API Source: marketplace_resources_renew
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import { marketplaceResourcesRenew } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesRenew({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "extension_months": 123
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
extension_months integer Number of months to extend the subscription by.
limits object (free-form) Optional new limits for the resource. Supports upgrades only.

200 -

Field Type
order_uuid string (uuid)

Set end date of the resource by staff

Set end date of the resource by staff.

1
2
3
4
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/set_end_date_by_staff/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_end_date_by_provider_request import ResourceEndDateByProviderRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_set_end_date_by_staff # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceEndDateByProviderRequest()
response = marketplace_resources_set_end_date_by_staff.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceEndDateByProviderRequest
  2. API Source: marketplace_resources_set_end_date_by_staff
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesSetEndDateByStaff } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesSetEndDateByStaff({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.

200 - No response body


Set restrict_member_access flag for resource

Set restrict_member_access flag for resource.

1
2
3
4
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/set_restrict_member_access/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_restrict_member_access_request import ResourceRestrictMemberAccessRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_set_restrict_member_access # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceRestrictMemberAccessRequest()
response = marketplace_resources_set_restrict_member_access.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceRestrictMemberAccessRequest
  2. API Source: marketplace_resources_set_restrict_member_access
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesSetRestrictMemberAccess } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesSetRestrictMemberAccess({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
restrict_member_access boolean

200 - No response body


Set slug for resource

Set slug for resource.

1
2
3
4
5
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/set_slug/ \
  Authorization:"Token YOUR_API_TOKEN" \
  slug="string-value"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_slug_request import ResourceSlugRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_set_slug # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceSlugRequest(
    slug="string-value"
)
response = marketplace_resources_set_slug.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceSlugRequest
  2. API Source: marketplace_resources_set_slug
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import { marketplaceResourcesSetSlug } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesSetSlug({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "slug": "string-value"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
slug string

200 - No response body


Create marketplace order for resource plan switch

Create marketplace order for resource plan switch.

1
2
3
4
5
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/switch_plan/ \
  Authorization:"Token YOUR_API_TOKEN" \
  plan="https://api.example.com/api/plan/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_switch_plan_request import ResourceSwitchPlanRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_switch_plan # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceSwitchPlanRequest(
    plan="https://api.example.com/api/plan/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
)
response = marketplace_resources_switch_plan.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceSwitchPlanRequest
  2. API Source: marketplace_resources_switch_plan
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import { marketplaceResourcesSwitchPlan } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesSwitchPlan({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "plan": "https://api.example.com/api/plan/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
plan string (uri)

200 -

Field Type
order_uuid string (uuid)

Create marketplace order for resource limits update

Create marketplace order for resource limits update.

1
2
3
4
5
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/update_limits/ \
  Authorization:"Token YOUR_API_TOKEN" \
  limits:='{}'
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_update_limits_request import ResourceUpdateLimitsRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_update_limits # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceUpdateLimitsRequest(
    limits={}
)
response = marketplace_resources_update_limits.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceUpdateLimitsRequest
  2. API Source: marketplace_resources_update_limits
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import { marketplaceResourcesUpdateLimits } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesUpdateLimits({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "limits": {}
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
limits object (free-form)
request_comment string

200 -

Field Type
order_uuid string (uuid)

Update resource options

Update resource options.

1
2
3
4
http \
  POST \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/update_options/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_options_request import ResourceOptionsRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_update_options # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceOptionsRequest()
response = marketplace_resources_update_options.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceOptionsRequest
  2. API Source: marketplace_resources_update_options
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesUpdateOptions } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesUpdateOptions({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
options any

200 -

Field Type
status string

Data & Reporting

Details

1
2
3
4
http \
  GET \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/details/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_details_retrieve # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_details_retrieve.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: marketplace_resources_details_retrieve
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesDetailsRetrieve } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesDetailsRetrieve({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Name Type
field array

200 -

Field Type Description
offering string (uri)
offering_name string
offering_uuid string (uuid)
offering_description string
offering_image string (uri)
offering_thumbnail string (uri)
offering_type string
offering_shared boolean Accessible to all customers.
offering_billable boolean Purchase and usage is invoiced.
offering_plugin_options any Public data used by specific plugin, such as storage mode for OpenStack.
provider_name string
provider_uuid string (uuid)
provider_slug 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_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
parent_uuid string (uuid)
parent_name string
backend_metadata any
is_usage_based boolean
is_limit_based boolean
name string
slug string
current_usages object (free-form)
can_terminate boolean
report array of objects
report.header string
report.body string
end_date string (date) The date is inclusive. Once reached, a resource will be scheduled for termination.
end_date_requested_by string (uri)
username string
limit_usage object (free-form)
downscaled boolean
restrict_member_access boolean
paused boolean
endpoints array of objects
endpoints.uuid string (uuid)
endpoints.name string
endpoints.url string
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)

Glauth users config

1
2
3
4
    This endpoint provides a config file for GLauth.
    Example: https://github.com/glauth/glauth/blob/master/v2/sample-simple.cfg
    It is assumed that the config is used by an external agent,
    which synchronizes data from Waldur to GLauth.
1
2
3
4
http \
  GET \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/glauth_users_config/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_glauth_users_config_retrieve # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_glauth_users_config_retrieve.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: marketplace_resources_glauth_users_config_retrieve
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesGlauthUsersConfigRetrieve } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesGlauthUsersConfigRetrieve({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -


Offering for subresources

1
2
3
4
http \
  GET \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/offering_for_subresources/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_offering_for_subresources_list # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_offering_for_subresources_list.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

for item in response:
    print(item)
  1. API Source: marketplace_resources_offering_for_subresources_list
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesOfferingForSubresourcesList } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesOfferingForSubresourcesList({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -

The response body is an array of objects, where each object has the following structure:

Field Type
uuid string (uuid)
type string

Offering

1
2
3
4
http \
  GET \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/offering/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_offering_retrieve # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_offering_retrieve.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: marketplace_resources_offering_retrieve
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesOfferingRetrieve } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesOfferingRetrieve({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

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
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)

Plan periods

1
2
3
4
http \
  GET \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/plan_periods/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_plan_periods_list # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_plan_periods_list.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

for item in response:
    print(item)
  1. API Source: marketplace_resources_plan_periods_list
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesPlanPeriodsList } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesPlanPeriodsList({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
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
uuid string (uuid)
plan_name string
plan_uuid string (uuid)
start string (date-time)
end string (date-time)
components array of objects
components.uuid string (uuid)
components.created string (date-time)
components.description string
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.usage string (decimal)
components.date string (date-time)
components.recurring boolean Reported value is reused every month until changed.

Return users connected to the project

Return users connected to the project.

1
2
3
4
http \
  GET \
  https://api.example.com/api/marketplace-resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/team/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_resources import marketplace_resources_team_list # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_resources_team_list.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

for item in response:
    print(item)
  1. API Source: marketplace_resources_team_list
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { marketplaceResourcesTeamList } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesTeamList({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
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)
username string Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters
full_name string
email string (email)
role string
expiration_time string (date-time)
offering_user_username string
offering_user_state any

Naming

Suggest name

1
2
3
4
5
6
http \
  POST \
  https://api.example.com/api/marketplace-resources/suggest_name/ \
  Authorization:"Token YOUR_API_TOKEN" \
  project="a1b2c3d4-e5f6-7890-abcd-ef1234567890" \
  offering="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.resource_suggest_name_request import ResourceSuggestNameRequest # (1)
from waldur_api_client.api.marketplace_resources import marketplace_resources_suggest_name # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = ResourceSuggestNameRequest(
    project="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    offering="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
)
response = marketplace_resources_suggest_name.sync(
    client=client,
    body=body_data
)

print(response)
  1. Model Source: ResourceSuggestNameRequest
  2. API Source: marketplace_resources_suggest_name
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import { marketplaceResourcesSuggestName } from 'waldur-js-client';

try {
  const response = await marketplaceResourcesSuggestName({
  auth: "Token YOUR_API_TOKEN",
  body: {
    "project": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "offering": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Field Type Required
project string (uuid)
offering string (uuid)

200 -

Field Type
project string (uuid)
offering string (uuid)