Marketplace Software Packages
Operations Summary
List software packages
Returns a paginated list of software packages available in the catalogs. Can be filtered by catalog, offering, or various package attributes.
| http \
GET \
https://api.example.com/api/marketplace-software-packages/ \
Authorization:"Token YOUR_API_TOKEN"
|
| from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.marketplace_software_packages import marketplace_software_packages_list # (1)
client = AuthenticatedClient(
base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_software_packages_list.sync(client=client)
for item in response:
print(item)
|
- API Source:
marketplace_software_packages_list
| import { marketplaceSoftwarePackagesList } from 'waldur-js-client';
try {
const response = await marketplaceSoftwarePackagesList({
auth: "Token YOUR_API_TOKEN"
});
console.log('Success:', response);
} catch (error) {
console.error('Error:', error);
}
|
| Name |
Type |
Description |
catalog_name |
string |
Filter packages by catalog name (case-insensitive partial match) |
catalog_uuid |
string (uuid) |
Filter packages from a specific software catalog |
catalog_version |
string |
Filter packages by catalog version (case-insensitive partial match) |
cpu_family |
string |
Filter packages available for specific CPU family (e.g., x86_64, aarch64) |
cpu_microarchitecture |
string |
Filter packages available for specific CPU microarchitecture (e.g., generic, zen2, haswell) |
description |
string |
Filter packages by description (case-insensitive partial match) |
has_version |
string |
Filter packages that have a specific version |
name |
string |
Filter packages by name (case-insensitive partial match) |
o |
array |
Ordering
|
offering_uuid |
string (uuid) |
Filter packages available for a specific offering |
page |
integer |
A page number within the paginated result set. |
page_size |
integer |
Number of results to return per page. |
query |
string |
Query packages by name, description, or version (case-insensitive partial match) |
200 -
The response body is an array of objects, where each object has the following structure:
| Field |
Type |
Description |
url |
string (uri) |
|
uuid |
string (uuid) |
|
created |
string (date-time) |
|
modified |
string (date-time) |
|
catalog |
string (uri) |
|
name |
string |
|
description |
string |
|
homepage |
string (uri) |
|
categories |
any |
Package categories (e.g., ['bio', 'hpc', 'build-tools']) |
licenses |
any |
Software licenses (e.g., ['GPL-3.0', 'MIT']) |
maintainers |
any |
Package maintainers |
is_extension |
boolean |
Whether this package is an extension of another package |
parent_software |
string (uri) |
Parent package for extensions (e.g., Python package within Python) |
catalog_name |
string |
|
catalog_version |
string |
|
catalog_type |
string |
|
catalog_type_display |
string |
|
version_count |
integer |
|
extension_count |
integer |
|
versions |
array of objects |
|
versions.uuid |
string (uuid) |
|
versions.version |
string |
|
versions.release_date |
string (date) |
|
versions.targets |
array of objects |
|
versions.targets.uuid |
string (uuid) |
|
versions.targets.target_type |
string |
Type of target (architecture, platform, variant, etc.) |
versions.targets.target_name |
string |
Target identifier (x86_64/generic, linux, variant_name, etc.) |
versions.targets.target_subtype |
string |
Target subtype (microarchitecture, distribution, etc.) |
versions.targets.location |
string |
Target location (CVMFS path, download URL, etc.) |
versions.targets.metadata |
any |
Target-specific metadata (build options, system requirements, etc.) |
Retrieve a software package
Returns the details of a specific software package, including its description, homepage, and available versions.
| http \
GET \
https://api.example.com/api/marketplace-software-packages/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_software_packages import marketplace_software_packages_retrieve # (1)
client = AuthenticatedClient(
base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = marketplace_software_packages_retrieve.sync(
uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
client=client
)
print(response)
|
- API Source:
marketplace_software_packages_retrieve
1
2
3
4
5
6
7
8
9
10
11
12
13 | import { marketplaceSoftwarePackagesRetrieve } from 'waldur-js-client';
try {
const response = await marketplaceSoftwarePackagesRetrieve({
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) |
|
modified |
string (date-time) |
|
catalog |
string (uri) |
|
name |
string |
|
description |
string |
|
homepage |
string (uri) |
|
categories |
any |
Package categories (e.g., ['bio', 'hpc', 'build-tools']) |
licenses |
any |
Software licenses (e.g., ['GPL-3.0', 'MIT']) |
maintainers |
any |
Package maintainers |
is_extension |
boolean |
Whether this package is an extension of another package |
parent_software |
string (uri) |
Parent package for extensions (e.g., Python package within Python) |
catalog_name |
string |
|
catalog_version |
string |
|
catalog_type |
string |
|
catalog_type_display |
string |
|
version_count |
integer |
|
extension_count |
integer |
|
versions |
array of objects |
|
versions.uuid |
string (uuid) |
|
versions.version |
string |
|
versions.release_date |
string (date) |
|
versions.targets |
array of objects |
|
versions.targets.uuid |
string (uuid) |
|
versions.targets.target_type |
string |
Type of target (architecture, platform, variant, etc.) |
versions.targets.target_name |
string |
Target identifier (x86_64/generic, linux, variant_name, etc.) |
versions.targets.target_subtype |
string |
Target subtype (microarchitecture, distribution, etc.) |
versions.targets.location |
string |
Target location (CVMFS path, download URL, etc.) |
versions.targets.metadata |
any |
Target-specific metadata (build options, system requirements, etc.) |
Create a software package
Creates a new software package within a catalog. Requires staff permissions.
| http \
POST \
https://api.example.com/api/marketplace-software-packages/ \
Authorization:"Token YOUR_API_TOKEN" \
catalog="https://api.example.com/api/catalog/a1b2c3d4-e5f6-7890-abcd-ef1234567890/" \
name="my-awesome-marketplace-software-package"
|
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.software_package_request import SoftwarePackageRequest # (1)
from waldur_api_client.api.marketplace_software_packages import marketplace_software_packages_create # (2)
client = AuthenticatedClient(
base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
body_data = SoftwarePackageRequest(
catalog="https://api.example.com/api/catalog/a1b2c3d4-e5f6-7890-abcd-ef1234567890/",
name="my-awesome-marketplace-software-package"
)
response = marketplace_software_packages_create.sync(
client=client,
body=body_data
)
print(response)
|
- Model Source:
SoftwarePackageRequest
- API Source:
marketplace_software_packages_create
1
2
3
4
5
6
7
8
9
10
11
12
13
14 | import { marketplaceSoftwarePackagesCreate } from 'waldur-js-client';
try {
const response = await marketplaceSoftwarePackagesCreate({
auth: "Token YOUR_API_TOKEN",
body: {
"catalog": "https://api.example.com/api/catalog/a1b2c3d4-e5f6-7890-abcd-ef1234567890/",
"name": "my-awesome-marketplace-software-package"
}
});
console.log('Success:', response);
} catch (error) {
console.error('Error:', error);
}
|
| Field |
Type |
Required |
Description |
catalog |
string (uri) |
✓ |
|
name |
string |
✓ |
|
description |
string |
|
|
homepage |
string (uri) |
|
|
categories |
any |
|
Package categories (e.g., ['bio', 'hpc', 'build-tools']) |
licenses |
any |
|
Software licenses (e.g., ['GPL-3.0', 'MIT']) |
maintainers |
any |
|
Package maintainers |
is_extension |
boolean |
|
Whether this package is an extension of another package |
parent_software |
string (uri) |
|
Parent package for extensions (e.g., Python package within Python) |
201 -
| Field |
Type |
Description |
url |
string (uri) |
|
uuid |
string (uuid) |
|
created |
string (date-time) |
|
modified |
string (date-time) |
|
catalog |
string (uri) |
|
name |
string |
|
description |
string |
|
homepage |
string (uri) |
|
categories |
any |
Package categories (e.g., ['bio', 'hpc', 'build-tools']) |
licenses |
any |
Software licenses (e.g., ['GPL-3.0', 'MIT']) |
maintainers |
any |
Package maintainers |
is_extension |
boolean |
Whether this package is an extension of another package |
parent_software |
string (uri) |
Parent package for extensions (e.g., Python package within Python) |
catalog_name |
string |
|
catalog_version |
string |
|
catalog_type |
string |
|
catalog_type_display |
string |
|
version_count |
integer |
|
extension_count |
integer |
|
versions |
array of objects |
|
versions.uuid |
string (uuid) |
|
versions.version |
string |
|
versions.release_date |
string (date) |
|
versions.targets |
array of objects |
|
versions.targets.uuid |
string (uuid) |
|
versions.targets.target_type |
string |
Type of target (architecture, platform, variant, etc.) |
versions.targets.target_name |
string |
Target identifier (x86_64/generic, linux, variant_name, etc.) |
versions.targets.target_subtype |
string |
Target subtype (microarchitecture, distribution, etc.) |
versions.targets.location |
string |
Target location (CVMFS path, download URL, etc.) |
versions.targets.metadata |
any |
Target-specific metadata (build options, system requirements, etc.) |
Update a software package
Updates an existing software package. Requires staff permissions.
| http \
PUT \
https://api.example.com/api/marketplace-software-packages/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
Authorization:"Token YOUR_API_TOKEN" \
catalog="https://api.example.com/api/catalog/a1b2c3d4-e5f6-7890-abcd-ef1234567890/" \
name="my-awesome-marketplace-software-package"
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 | from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.software_package_request import SoftwarePackageRequest # (1)
from waldur_api_client.api.marketplace_software_packages import marketplace_software_packages_update # (2)
client = AuthenticatedClient(
base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
body_data = SoftwarePackageRequest(
catalog="https://api.example.com/api/catalog/a1b2c3d4-e5f6-7890-abcd-ef1234567890/",
name="my-awesome-marketplace-software-package"
)
response = marketplace_software_packages_update.sync(
uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
client=client,
body=body_data
)
print(response)
|
- Model Source:
SoftwarePackageRequest
- API Source:
marketplace_software_packages_update
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 | import { marketplaceSoftwarePackagesUpdate } from 'waldur-js-client';
try {
const response = await marketplaceSoftwarePackagesUpdate({
auth: "Token YOUR_API_TOKEN",
path: {
"uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
},
body: {
"catalog": "https://api.example.com/api/catalog/a1b2c3d4-e5f6-7890-abcd-ef1234567890/",
"name": "my-awesome-marketplace-software-package"
}
});
console.log('Success:', response);
} catch (error) {
console.error('Error:', error);
}
|
| Name |
Type |
Required |
uuid |
string (uuid) |
✓ |
| Field |
Type |
Required |
Description |
catalog |
string (uri) |
✓ |
|
name |
string |
✓ |
|
description |
string |
|
|
homepage |
string (uri) |
|
|
categories |
any |
|
Package categories (e.g., ['bio', 'hpc', 'build-tools']) |
licenses |
any |
|
Software licenses (e.g., ['GPL-3.0', 'MIT']) |
maintainers |
any |
|
Package maintainers |
is_extension |
boolean |
|
Whether this package is an extension of another package |
parent_software |
string (uri) |
|
Parent package for extensions (e.g., Python package within Python) |
200 -
| Field |
Type |
Description |
url |
string (uri) |
|
uuid |
string (uuid) |
|
created |
string (date-time) |
|
modified |
string (date-time) |
|
catalog |
string (uri) |
|
name |
string |
|
description |
string |
|
homepage |
string (uri) |
|
categories |
any |
Package categories (e.g., ['bio', 'hpc', 'build-tools']) |
licenses |
any |
Software licenses (e.g., ['GPL-3.0', 'MIT']) |
maintainers |
any |
Package maintainers |
is_extension |
boolean |
Whether this package is an extension of another package |
parent_software |
string (uri) |
Parent package for extensions (e.g., Python package within Python) |
catalog_name |
string |
|
catalog_version |
string |
|
catalog_type |
string |
|
catalog_type_display |
string |
|
version_count |
integer |
|
extension_count |
integer |
|
versions |
array of objects |
|
versions.uuid |
string (uuid) |
|
versions.version |
string |
|
versions.release_date |
string (date) |
|
versions.targets |
array of objects |
|
versions.targets.uuid |
string (uuid) |
|
versions.targets.target_type |
string |
Type of target (architecture, platform, variant, etc.) |
versions.targets.target_name |
string |
Target identifier (x86_64/generic, linux, variant_name, etc.) |
versions.targets.target_subtype |
string |
Target subtype (microarchitecture, distribution, etc.) |
versions.targets.location |
string |
Target location (CVMFS path, download URL, etc.) |
versions.targets.metadata |
any |
Target-specific metadata (build options, system requirements, etc.) |
Partially update a software package
Partially updates an existing software package. Requires staff permissions.
| http \
PATCH \
https://api.example.com/api/marketplace-software-packages/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_software_package_request import PatchedSoftwarePackageRequest # (1)
from waldur_api_client.api.marketplace_software_packages import marketplace_software_packages_partial_update # (2)
client = AuthenticatedClient(
base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
body_data = PatchedSoftwarePackageRequest()
response = marketplace_software_packages_partial_update.sync(
uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
client=client,
body=body_data
)
print(response)
|
- Model Source:
PatchedSoftwarePackageRequest
- API Source:
marketplace_software_packages_partial_update
1
2
3
4
5
6
7
8
9
10
11
12
13 | import { marketplaceSoftwarePackagesPartialUpdate } from 'waldur-js-client';
try {
const response = await marketplaceSoftwarePackagesPartialUpdate({
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 |
catalog |
string (uri) |
|
|
name |
string |
|
|
description |
string |
|
|
homepage |
string (uri) |
|
|
categories |
any |
|
Package categories (e.g., ['bio', 'hpc', 'build-tools']) |
licenses |
any |
|
Software licenses (e.g., ['GPL-3.0', 'MIT']) |
maintainers |
any |
|
Package maintainers |
is_extension |
boolean |
|
Whether this package is an extension of another package |
parent_software |
string (uri) |
|
Parent package for extensions (e.g., Python package within Python) |
200 -
| Field |
Type |
Description |
url |
string (uri) |
|
uuid |
string (uuid) |
|
created |
string (date-time) |
|
modified |
string (date-time) |
|
catalog |
string (uri) |
|
name |
string |
|
description |
string |
|
homepage |
string (uri) |
|
categories |
any |
Package categories (e.g., ['bio', 'hpc', 'build-tools']) |
licenses |
any |
Software licenses (e.g., ['GPL-3.0', 'MIT']) |
maintainers |
any |
Package maintainers |
is_extension |
boolean |
Whether this package is an extension of another package |
parent_software |
string (uri) |
Parent package for extensions (e.g., Python package within Python) |
catalog_name |
string |
|
catalog_version |
string |
|
catalog_type |
string |
|
catalog_type_display |
string |
|
version_count |
integer |
|
extension_count |
integer |
|
versions |
array of objects |
|
versions.uuid |
string (uuid) |
|
versions.version |
string |
|
versions.release_date |
string (date) |
|
versions.targets |
array of objects |
|
versions.targets.uuid |
string (uuid) |
|
versions.targets.target_type |
string |
Type of target (architecture, platform, variant, etc.) |
versions.targets.target_name |
string |
Target identifier (x86_64/generic, linux, variant_name, etc.) |
versions.targets.target_subtype |
string |
Target subtype (microarchitecture, distribution, etc.) |
versions.targets.location |
string |
Target location (CVMFS path, download URL, etc.) |
versions.targets.metadata |
any |
Target-specific metadata (build options, system requirements, etc.) |
Delete a software package
Deletes a software package. Requires staff permissions.