openapi: 3.0.3 info: title: Waldur API version: 8.0.5 paths: /api-auth/eduteams/complete/: get: operationId: api_auth_eduteams_complete_retrieve parameters: - in: query name: code schema: type: string - in: query name: state schema: type: string tags: - api-auth responses: '200': description: No response body /api-auth/eduteams/init/: get: operationId: api_auth_eduteams_init_retrieve description: Redirect user to OIDC authorization endpoint tags: - api-auth responses: '200': description: No response body /api-auth/keycloak/complete/: get: operationId: api_auth_keycloak_complete_retrieve parameters: - in: query name: code schema: type: string - in: query name: state schema: type: string tags: - api-auth responses: '200': description: No response body /api-auth/keycloak/init/: get: operationId: api_auth_keycloak_init_retrieve description: Redirect user to OIDC authorization endpoint tags: - api-auth responses: '200': description: No response body /api-auth/logout/: post: operationId: api_auth_logout description: Logs out the current user by deleting their authentication token. If single logout (SLO) is supported for the current authentication method (e.g., SAML2 or OIDC), this endpoint may return a logout URL to which the user should be redirected to complete the logout process on the identity provider side. summary: Log out tags: - api-auth security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Logout' description: '' '204': description: No response body /api-auth/password/: post: operationId: api_auth_password description: Authenticates a user with username and password and returns an authentication token. summary: Obtain authentication token tags: - api-auth requestBody: content: application/json: schema: $ref: '#/components/schemas/ObtainAuthTokenRequest' examples: ValidRequest: value: username: alice password: $ecr3t summary: Valid request example description: Example of a valid request to obtain an authentication token. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CoreAuthToken' examples: SuccessResponse: value: token: c84d653b9ec92c6cbac41c706593e66f567a7fa4 summary: Success response example description: Example of a successful response with the authentication token. description: '' '401': description: No response body /api-auth/saml2/login/: post: operationId: api_auth_saml2_login tags: - api-auth requestBody: content: application/json: schema: $ref: '#/components/schemas/Saml2LoginRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Saml2Login' description: '' /api-auth/saml2/login/complete/: post: operationId: api_auth_saml2_login_complete tags: - api-auth requestBody: content: application/json: schema: $ref: '#/components/schemas/Saml2LoginCompleteRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/Saml2LoginComplete' description: '' /api-auth/saml2/logout/: get: operationId: api_auth_saml2_logout_retrieve tags: - api-auth responses: '200': description: No response body /api-auth/saml2/logout/complete/: get: operationId: api_auth_saml2_logout_complete_retrieve description: For IdPs which send GET requests tags: - api-auth responses: '200': content: application/json: schema: $ref: '#/components/schemas/Saml2LogoutComplete' description: '' post: operationId: api_auth_saml2_logout_complete description: For IdPs which send POST requests tags: - api-auth requestBody: content: application/json: schema: $ref: '#/components/schemas/Saml2LogoutCompleteRequest' required: false responses: '200': content: application/json: schema: $ref: '#/components/schemas/Saml2LogoutComplete' description: '' /api-auth/saml2/providers/: get: operationId: api_auth_saml2_providers_list parameters: - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - api-auth security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Saml2Provider' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api-auth/tara/complete/: get: operationId: api_auth_tara_complete_retrieve parameters: - in: query name: code schema: type: string - in: query name: state schema: type: string tags: - api-auth responses: '200': description: No response body /api-auth/tara/init/: get: operationId: api_auth_tara_init_retrieve description: Redirect user to OIDC authorization endpoint tags: - api-auth responses: '200': description: No response body /api/access-subnets/: get: operationId: access_subnets_list description: Retrieve a list of access subnets. Staff and support users can see all subnets, while other users can only see subnets associated with customers they have a role in. summary: List access subnets parameters: - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: inet schema: type: string description: Inet - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - access-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AccessSubnet' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: access_subnets_create description: Create a new access subnet for a customer. summary: Create an access subnet tags: - access-subnets requestBody: content: application/json: schema: $ref: '#/components/schemas/AccessSubnetRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AccessSubnet' description: '' head: operationId: access_subnets_count description: Get number of items in the collection matching the request parameters. summary: List access subnets parameters: - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: inet schema: type: string description: Inet - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - access-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/access-subnets/{uuid}/: get: operationId: access_subnets_retrieve description: Fetch the details of a specific access subnet by its UUID. summary: Retrieve access subnet parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - access-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AccessSubnet' description: '' put: operationId: access_subnets_update description: Update an existing access subnet. summary: Update an access subnet parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - access-subnets requestBody: content: application/json: schema: $ref: '#/components/schemas/AccessSubnetRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AccessSubnet' description: '' x-permissions: - permission: ACCESS_SUBNET.UPDATE scopes: - customer patch: operationId: access_subnets_partial_update description: Partially update an existing access subnet. summary: Partially update an access subnet parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - access-subnets requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAccessSubnetRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AccessSubnet' description: '' x-permissions: - permission: ACCESS_SUBNET.UPDATE scopes: - customer delete: operationId: access_subnets_destroy description: Delete an existing access subnet. summary: Delete an access subnet parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - access-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: ACCESS_SUBNET.DELETE scopes: - customer /api/admin-announcements/: get: operationId: admin_announcements_list parameters: - in: query name: description schema: type: string - in: query name: field schema: type: array items: $ref: '#/components/schemas/AdminAnnouncementFieldEnum' - in: query name: is_active schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/AdminAnnouncementOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: type schema: type: array items: $ref: '#/components/schemas/AdminAnnouncementTypeEnum' explode: true style: form tags: - admin-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AdminAnnouncement' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: admin_announcements_create tags: - admin-announcements requestBody: content: application/json: schema: $ref: '#/components/schemas/AdminAnnouncementRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AdminAnnouncement' description: '' head: operationId: admin_announcements_count parameters: - in: query name: description schema: type: string - in: query name: is_active schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/AdminAnnouncementOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: type schema: type: array items: $ref: '#/components/schemas/AdminAnnouncementTypeEnum' explode: true style: form tags: - admin-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/admin-announcements/{uuid}/: get: operationId: admin_announcements_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AdminAnnouncementFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - admin-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AdminAnnouncement' description: '' put: operationId: admin_announcements_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin-announcements requestBody: content: application/json: schema: $ref: '#/components/schemas/AdminAnnouncementRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AdminAnnouncement' description: '' patch: operationId: admin_announcements_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin-announcements requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAdminAnnouncementRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AdminAnnouncement' description: '' delete: operationId: admin_announcements_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/admin/arrow/billing-sync-items/: get: operationId: admin_arrow_billing_sync_items_list parameters: - in: query name: arrow_line_reference schema: type: string - in: query name: billing_sync schema: type: string format: uri x-waldur-operation-id: admin_arrow_billing_syncs_retrieve - in: query name: billing_sync_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_billing_syncs_retrieve - in: query name: classification schema: type: string - in: query name: has_compensation schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: report_period schema: type: string - in: query name: subscription_reference schema: type: string - in: query name: vendor_name schema: type: string tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ArrowBillingSyncItemDetail' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: admin_arrow_billing_sync_items_count parameters: - in: query name: arrow_line_reference schema: type: string - in: query name: billing_sync schema: type: string format: uri x-waldur-operation-id: admin_arrow_billing_syncs_retrieve - in: query name: billing_sync_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_billing_syncs_retrieve - in: query name: classification schema: type: string - in: query name: has_compensation schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: report_period schema: type: string - in: query name: subscription_reference schema: type: string - in: query name: vendor_name schema: type: string tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/admin/arrow/billing-sync-items/{uuid}/: get: operationId: admin_arrow_billing_sync_items_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowBillingSyncItemDetail' description: '' /api/admin/arrow/billing-syncs/: get: operationId: admin_arrow_billing_syncs_list parameters: - in: query name: arrow_state schema: type: string - in: query name: customer_mapping schema: type: string format: uri x-waldur-operation-id: admin_arrow_customer_mappings_retrieve - in: query name: customer_mapping_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_customer_mappings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: report_period schema: type: string - in: query name: report_period_from schema: type: string - in: query name: report_period_to schema: type: string - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: state schema: type: integer - in: query name: statement_reference schema: type: string tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ArrowBillingSync' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: admin_arrow_billing_syncs_count parameters: - in: query name: arrow_state schema: type: string - in: query name: customer_mapping schema: type: string format: uri x-waldur-operation-id: admin_arrow_customer_mappings_retrieve - in: query name: customer_mapping_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_customer_mappings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: report_period schema: type: string - in: query name: report_period_from schema: type: string - in: query name: report_period_to schema: type: string - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: state schema: type: integer - in: query name: statement_reference schema: type: string tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/admin/arrow/billing-syncs/{uuid}/: get: operationId: admin_arrow_billing_syncs_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowBillingSync' description: '' /api/admin/arrow/billing-syncs/cleanup_consumption/: post: operationId: admin_arrow_billing_syncs_cleanup_consumption description: Delete consumption records with optional dry-run preview. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/CleanupConsumptionRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CleanupConsumptionResponse' description: '' /api/admin/arrow/billing-syncs/consumption_statistics/: get: operationId: admin_arrow_billing_syncs_consumption_statistics_retrieve description: Get consumption statistics. tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConsumptionStatisticsResponse' description: '' head: operationId: admin_arrow_billing_syncs_consumption_statistics_count description: Get number of items in the collection matching the request parameters. tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/admin/arrow/billing-syncs/consumption_status/: get: operationId: admin_arrow_billing_syncs_consumption_status_retrieve description: Get current consumption sync status. tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConsumptionStatusResponse' description: '' head: operationId: admin_arrow_billing_syncs_consumption_status_count description: Get number of items in the collection matching the request parameters. tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/admin/arrow/billing-syncs/fetch_billing_export/: post: operationId: admin_arrow_billing_syncs_fetch_billing_export description: Fetch raw billing export from Arrow API. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/FetchBillingExportRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FetchBillingExportResponse' description: '' /api/admin/arrow/billing-syncs/fetch_consumption/: post: operationId: admin_arrow_billing_syncs_fetch_consumption description: Fetch raw consumption data from Arrow API. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/FetchConsumptionRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FetchConsumptionResponse' description: '' /api/admin/arrow/billing-syncs/fetch_license_info/: post: operationId: admin_arrow_billing_syncs_fetch_license_info description: Fetch license details from Arrow API. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/FetchLicenseInfoRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FetchLicenseInfoResponse' description: '' /api/admin/arrow/billing-syncs/pause_sync/: post: operationId: admin_arrow_billing_syncs_pause_sync description: Pause consumption sync operations. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/SyncPauseRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SyncPauseResponse' description: '' /api/admin/arrow/billing-syncs/pending_records/: get: operationId: admin_arrow_billing_syncs_pending_records_list description: List pending consumption records (not yet finalized). parameters: - in: query name: arrow_state schema: type: string - in: query name: customer_mapping schema: type: string format: uri x-waldur-operation-id: admin_arrow_customer_mappings_retrieve - in: query name: customer_mapping_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_customer_mappings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: report_period schema: type: string - in: query name: report_period_from schema: type: string - in: query name: report_period_to schema: type: string - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: state schema: type: integer - in: query name: statement_reference schema: type: string tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PendingRecord' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: admin_arrow_billing_syncs_pending_records_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: arrow_state schema: type: string - in: query name: customer_mapping schema: type: string format: uri x-waldur-operation-id: admin_arrow_customer_mappings_retrieve - in: query name: customer_mapping_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_customer_mappings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: report_period schema: type: string - in: query name: report_period_from schema: type: string - in: query name: report_period_to schema: type: string - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: state schema: type: integer - in: query name: statement_reference schema: type: string tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/admin/arrow/billing-syncs/reconcile/: post: operationId: admin_arrow_billing_syncs_reconcile description: Trigger reconciliation for a specific period. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ReconcileRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body /api/admin/arrow/billing-syncs/resume_sync/: post: operationId: admin_arrow_billing_syncs_resume_sync description: Resume consumption sync operations. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/SyncPauseRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SyncPauseResponse' description: '' /api/admin/arrow/billing-syncs/sync_resource_historical_consumption/: post: operationId: admin_arrow_billing_syncs_sync_resource_historical_consumption description: Sync historical consumption for a specific resource from Arrow. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/SyncResourceHistoricalConsumptionRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SyncResourceHistoricalConsumptionResponse' description: '' /api/admin/arrow/billing-syncs/sync_resources/: post: operationId: admin_arrow_billing_syncs_sync_resources description: Sync Arrow IAAS subscriptions to Waldur Resources. Matches subscriptions by Vendor Subscription ID to resource backend_id. Updates resource report and current_usages fields. With force_import=True, auto-creates Customers and Projects from Arrow data. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/SyncResourcesRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SyncResourcesResponse' description: '' /api/admin/arrow/billing-syncs/trigger_consumption_sync/: post: operationId: admin_arrow_billing_syncs_trigger_consumption_sync description: Trigger consumption sync for a specific period. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/TriggerConsumptionSyncRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body /api/admin/arrow/billing-syncs/trigger_reconciliation/: post: operationId: admin_arrow_billing_syncs_trigger_reconciliation description: Trigger reconciliation (check billing export and apply adjustments). tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ReconcileRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body /api/admin/arrow/billing-syncs/trigger_sync/: post: operationId: admin_arrow_billing_syncs_trigger_sync description: Trigger billing sync for a specific period. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/TriggerSyncRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body /api/admin/arrow/consumption-records/: get: operationId: admin_arrow_consumption_records_list parameters: - in: query name: billing_period schema: type: string format: date - in: query name: billing_period_from schema: type: string format: date - in: query name: billing_period_to schema: type: string format: date - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: is_finalized schema: type: boolean - in: query name: is_reconciled schema: type: boolean - in: query name: license_reference schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: resource schema: type: string format: uri x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ArrowConsumptionRecord' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: admin_arrow_consumption_records_count parameters: - in: query name: billing_period schema: type: string format: date - in: query name: billing_period_from schema: type: string format: date - in: query name: billing_period_to schema: type: string format: date - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: is_finalized schema: type: boolean - in: query name: is_reconciled schema: type: boolean - in: query name: license_reference schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: resource schema: type: string format: uri x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/admin/arrow/consumption-records/{uuid}/: get: operationId: admin_arrow_consumption_records_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowConsumptionRecord' description: '' /api/admin/arrow/customer-mappings/: get: operationId: admin_arrow_customer_mappings_list parameters: - in: query name: arrow_company_name schema: type: string - in: query name: arrow_reference schema: type: string - in: query name: is_active schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: waldur_customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: waldur_customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ArrowCustomerMapping' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: admin_arrow_customer_mappings_create tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ArrowCustomerMappingCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ArrowCustomerMappingCreate' description: '' head: operationId: admin_arrow_customer_mappings_count parameters: - in: query name: arrow_company_name schema: type: string - in: query name: arrow_reference schema: type: string - in: query name: is_active schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: waldur_customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: waldur_customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/admin/arrow/customer-mappings/{uuid}/: get: operationId: admin_arrow_customer_mappings_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowCustomerMapping' description: '' put: operationId: admin_arrow_customer_mappings_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ArrowCustomerMappingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowCustomerMapping' description: '' patch: operationId: admin_arrow_customer_mappings_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedArrowCustomerMappingRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowCustomerMapping' description: '' delete: operationId: admin_arrow_customer_mappings_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/admin/arrow/customer-mappings/{uuid}/billing_summary/: get: operationId: admin_arrow_customer_mappings_billing_summary_retrieve description: Get billing and consumption summary for this customer mapping. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerBillingSummaryResponse' description: '' /api/admin/arrow/customer-mappings/{uuid}/discover_licenses/: get: operationId: admin_arrow_customer_mappings_discover_licenses_retrieve description: Discover Arrow licenses for this customer and show linkable Waldur resources. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DiscoverLicensesResponse' description: '' /api/admin/arrow/customer-mappings/{uuid}/fetch_arrow_data/: get: operationId: admin_arrow_customer_mappings_fetch_arrow_data_retrieve description: Fetch fresh consumption and billing data from Arrow API for this customer. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FetchCustomerArrowDataResponse' description: '' /api/admin/arrow/customer-mappings/{uuid}/import_license/: post: operationId: admin_arrow_customer_mappings_import_license description: Import an Arrow license as a new Waldur resource. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportLicenseRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ImportLicenseResponse' description: '' /api/admin/arrow/customer-mappings/{uuid}/link_resource/: post: operationId: admin_arrow_customer_mappings_link_resource description: Link a Waldur resource to an Arrow license by setting its backend_id. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/LinkResourceRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/LinkResourceResponse' description: '' /api/admin/arrow/customer-mappings/available_customers/: get: operationId: admin_arrow_customer_mappings_available_customers_retrieve description: Get available Arrow customers that are not yet mapped, with suggestions for Waldur organization matches. tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AvailableArrowCustomersResponse' description: '' head: operationId: admin_arrow_customer_mappings_available_customers_count description: Get number of items in the collection matching the request parameters. tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/admin/arrow/customer-mappings/sync_from_arrow/: post: operationId: admin_arrow_customer_mappings_sync_from_arrow description: Sync customer list from Arrow and update arrow_company_name. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/SyncFromArrowRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/admin/arrow/settings/: get: operationId: admin_arrow_settings_list parameters: - in: query name: is_active schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: sync_enabled schema: type: boolean tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ArrowSettings' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: admin_arrow_settings_create tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ArrowSettingsCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ArrowSettingsCreate' description: '' head: operationId: admin_arrow_settings_count parameters: - in: query name: is_active schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: sync_enabled schema: type: boolean tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/admin/arrow/settings/{uuid}/: get: operationId: admin_arrow_settings_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowSettings' description: '' put: operationId: admin_arrow_settings_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ArrowSettingsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowSettings' description: '' patch: operationId: admin_arrow_settings_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedArrowSettingsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowSettings' description: '' delete: operationId: admin_arrow_settings_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/admin/arrow/settings/discover_customers/: post: operationId: admin_arrow_settings_discover_customers description: Discover Arrow customers and suggest mappings to Waldur customers. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverCustomersRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DiscoverCustomersResponse' description: '' /api/admin/arrow/settings/preview_settings/: post: operationId: admin_arrow_settings_preview_settings description: Preview settings configuration before saving. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/PreviewSettingsRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PreviewSettingsResponse' description: '' /api/admin/arrow/settings/save_settings/: post: operationId: admin_arrow_settings_save_settings description: Save Arrow settings and customer mappings. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/SaveSettingsRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SaveSettingsResponse' description: '' /api/admin/arrow/settings/validate_credentials/: post: operationId: admin_arrow_settings_validate_credentials description: Validate Arrow API credentials without saving them. tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ArrowCredentialsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowCredentialsValidationResponse' description: '' /api/admin/arrow/vendor-offering-mappings/: get: operationId: admin_arrow_vendor_offering_mappings_list parameters: - in: query name: arrow_vendor_name schema: type: string - in: query name: is_active schema: type: boolean - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ArrowVendorOfferingMapping' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: admin_arrow_vendor_offering_mappings_create tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ArrowVendorOfferingMappingCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ArrowVendorOfferingMappingCreate' description: '' head: operationId: admin_arrow_vendor_offering_mappings_count parameters: - in: query name: arrow_vendor_name schema: type: string - in: query name: is_active schema: type: boolean - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/admin/arrow/vendor-offering-mappings/{uuid}/: get: operationId: admin_arrow_vendor_offering_mappings_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowVendorOfferingMapping' description: '' put: operationId: admin_arrow_vendor_offering_mappings_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ArrowVendorOfferingMappingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowVendorOfferingMapping' description: '' patch: operationId: admin_arrow_vendor_offering_mappings_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedArrowVendorOfferingMappingRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ArrowVendorOfferingMapping' description: '' delete: operationId: admin_arrow_vendor_offering_mappings_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/admin/arrow/vendor-offering-mappings/vendor_choices/: get: operationId: admin_arrow_vendor_offering_mappings_vendor_choices_list description: Get vendor names from Arrow catalog API (IAAS category). parameters: - in: query name: arrow_vendor_name schema: type: string - in: query name: is_active schema: type: boolean - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VendorNameChoice' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: admin_arrow_vendor_offering_mappings_vendor_choices_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: arrow_vendor_name schema: type: string - in: query name: is_active schema: type: boolean - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri x-waldur-operation-id: admin_arrow_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: admin_arrow_settings_retrieve tags: - admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/assignment-batches/: get: operationId: assignment_batches_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/AssignmentBatchListOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_pool_entry_uuid schema: type: string format: uuid x-waldur-operation-id: call_reviewer_pools_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: sent_after schema: type: string format: date-time - in: query name: sent_before schema: type: string format: date-time - in: query name: source schema: type: array items: $ref: '#/components/schemas/AssignmentSource' explode: true style: form - in: query name: status schema: type: array items: $ref: '#/components/schemas/AssignmentBatchStatus' explode: true style: form tags: - assignment-batches security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AssignmentBatchList' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: assignment_batches_create tags: - assignment-batches requestBody: content: application/json: schema: $ref: '#/components/schemas/AssignmentBatchRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AssignmentBatch' description: '' head: operationId: assignment_batches_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/AssignmentBatchListOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_pool_entry_uuid schema: type: string format: uuid x-waldur-operation-id: call_reviewer_pools_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: sent_after schema: type: string format: date-time - in: query name: sent_before schema: type: string format: date-time - in: query name: source schema: type: array items: $ref: '#/components/schemas/AssignmentSource' explode: true style: form - in: query name: status schema: type: array items: $ref: '#/components/schemas/AssignmentBatchStatus' explode: true style: form tags: - assignment-batches security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/assignment-batches/{uuid}/: get: operationId: assignment_batches_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-batches security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AssignmentBatch' description: '' put: operationId: assignment_batches_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-batches requestBody: content: application/json: schema: $ref: '#/components/schemas/AssignmentBatchRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AssignmentBatch' description: '' patch: operationId: assignment_batches_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-batches requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAssignmentBatchRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AssignmentBatch' description: '' delete: operationId: assignment_batches_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-batches security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/assignment-batches/{uuid}/cancel/: post: operationId: assignment_batches_cancel description: Cancel this assignment batch. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-batches security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MessageResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - call.manager /api/assignment-batches/{uuid}/extend-deadline/: post: operationId: assignment_batches_extend_deadline description: Extend or modify the expiration date for an assignment batch. Can reactivate expired batches by setting a future deadline. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-batches requestBody: content: application/json: schema: $ref: '#/components/schemas/ExtendDeadlineRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExtendDeadlineResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - call.manager /api/assignment-batches/{uuid}/send/: post: operationId: assignment_batches_send description: Send this assignment batch invitation to the reviewer. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-batches requestBody: content: application/json: schema: $ref: '#/components/schemas/SendAssignmentBatchRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SendAssignmentBatchResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - call.manager /api/assignment-items/: get: operationId: assignment_items_list parameters: - in: query name: batch_uuid schema: type: string format: uuid x-waldur-operation-id: assignment_batches_retrieve - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: has_coi schema: type: boolean - in: query name: min_affinity_score schema: type: number format: float - in: query name: o schema: type: array items: $ref: '#/components/schemas/AssignmentItemOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: status schema: type: array items: $ref: '#/components/schemas/AssignmentItemStatus' explode: true style: form tags: - assignment-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AssignmentItem' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: assignment_items_create tags: - assignment-items requestBody: content: application/json: schema: $ref: '#/components/schemas/AssignmentItemRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AssignmentItem' description: '' head: operationId: assignment_items_count parameters: - in: query name: batch_uuid schema: type: string format: uuid x-waldur-operation-id: assignment_batches_retrieve - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: has_coi schema: type: boolean - in: query name: min_affinity_score schema: type: number format: float - in: query name: o schema: type: array items: $ref: '#/components/schemas/AssignmentItemOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: status schema: type: array items: $ref: '#/components/schemas/AssignmentItemStatus' explode: true style: form tags: - assignment-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/assignment-items/{uuid}/: get: operationId: assignment_items_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AssignmentItem' description: '' put: operationId: assignment_items_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-items requestBody: content: application/json: schema: $ref: '#/components/schemas/AssignmentItemRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AssignmentItem' description: '' patch: operationId: assignment_items_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-items requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAssignmentItemRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AssignmentItem' description: '' delete: operationId: assignment_items_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/assignment-items/{uuid}/accept/: post: operationId: assignment_items_accept description: Accept this assignment item. Creates a Review record. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AssignmentItemResponse' description: '' /api/assignment-items/{uuid}/decline/: post: operationId: assignment_items_decline description: Decline this assignment item. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-items requestBody: content: application/json: schema: $ref: '#/components/schemas/AssignmentItemDeclineRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AssignmentItemResponse' description: '' /api/assignment-items/{uuid}/reassign/: post: operationId: assignment_items_reassign description: Reassign this item to a different reviewer. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-items requestBody: content: application/json: schema: $ref: '#/components/schemas/ReassignItemRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReassignItemResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - batch.call.manager /api/assignment-items/{uuid}/suggest_alternatives/: get: operationId: assignment_items_suggest_alternatives_retrieve description: Suggest alternative reviewers for a declined assignment. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - assignment-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SuggestAlternativeReviewers' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - batch.call.manager /api/auth-tokens/: get: operationId: auth_tokens_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - auth-tokens security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AuthToken' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: auth_tokens_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - auth-tokens security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/auth-tokens/{user_id}/: get: operationId: auth_tokens_retrieve parameters: - in: path name: user_id schema: type: integer required: true tags: - auth-tokens security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AuthToken' description: '' delete: operationId: auth_tokens_destroy parameters: - in: path name: user_id schema: type: integer required: true tags: - auth-tokens security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/auth-valimo/: post: operationId: auth_valimo_create tags: - auth-valimo requestBody: content: application/json: schema: $ref: '#/components/schemas/AuthResultRequest' examples: ValidRequest: value: phone: '1234567890' summary: Start PKI login process description: Example of a valid request to start PKI login process with user's phone. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AuthResult' description: '' /api/auth-valimo/result/: post: operationId: auth_valimo_result description: "\n To get PKI login status and details - issue post request\ \ against /api/auth-valimo/result/\n with uuid in parameters.\n\n \ \ Possible states:\n - Scheduled - login process is scheduled\n\ \ - Processing - login is in progress\n - OK - login was successful.\ \ Response will contain token.\n - Canceled - login was canceled by\ \ user or timed out. Field details will contain additional info.\n \ \ - Erred - unexpected exception happened during login process.\n " tags: - auth-valimo requestBody: content: application/json: schema: $ref: '#/components/schemas/AuthResultUUIDRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AuthResult' examples: SuccessfulLogin: value: uuid: e42473f39c844333a80107e139a4dd06 token: null message: '1234' state: OK error_message: '' details: User authenticated. summary: Successful login description: Example of response for successful login. CanceledLogin: value: uuid: e42473f39c844333a80107e139a4dd06 token: null message: '1234' state: Canceled error_message: '' details: User cancel. summary: Canceled login description: Example of response when login was canceled by user. description: '' /api/autoprovisioning-rules/: get: operationId: autoprovisioning_rules_list description: Manage autoprovisioning rules. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - autoprovisioning-rules security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Rule' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: autoprovisioning_rules_create description: Manage autoprovisioning rules. tags: - autoprovisioning-rules requestBody: content: application/json: schema: $ref: '#/components/schemas/RuleRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Rule' description: '' head: operationId: autoprovisioning_rules_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - autoprovisioning-rules security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/autoprovisioning-rules/{uuid}/: get: operationId: autoprovisioning_rules_retrieve description: Manage autoprovisioning rules. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - autoprovisioning-rules security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Rule' description: '' put: operationId: autoprovisioning_rules_update description: Manage autoprovisioning rules. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - autoprovisioning-rules requestBody: content: application/json: schema: $ref: '#/components/schemas/RuleRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Rule' description: '' patch: operationId: autoprovisioning_rules_partial_update description: Manage autoprovisioning rules. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - autoprovisioning-rules requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRuleRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Rule' description: '' delete: operationId: autoprovisioning_rules_destroy description: Manage autoprovisioning rules. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - autoprovisioning-rules security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/aws-images/: get: operationId: aws_images_list parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: region schema: type: string format: uuid x-waldur-operation-id: aws_regions_retrieve tags: - aws-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AwsImage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: aws_images_count parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: region schema: type: string format: uuid x-waldur-operation-id: aws_regions_retrieve tags: - aws-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/aws-images/{uuid}/: get: operationId: aws_images_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsImage' description: '' /api/aws-instances/: get: operationId: aws_instances_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string - in: query name: field schema: type: array items: $ref: '#/components/schemas/AwsInstanceFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AwsInstance' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: aws_instances_create tags: - aws-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/AwsInstanceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AwsInstance' description: '' head: operationId: aws_instances_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/aws-instances/{uuid}/: get: operationId: aws_instances_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AwsInstanceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsInstance' description: '' put: operationId: aws_instances_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/AwsInstanceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsInstance' description: '' patch: operationId: aws_instances_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAwsInstanceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsInstance' description: '' delete: operationId: aws_instances_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/aws-instances/{uuid}/pull/: post: operationId: aws_instances_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/aws-instances/{uuid}/resize/: post: operationId: aws_instances_resize parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/AwsInstanceResizeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsInstanceResize' description: '' /api/aws-instances/{uuid}/restart/: post: operationId: aws_instances_restart parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/aws-instances/{uuid}/set_erred/: post: operationId: aws_instances_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/aws-instances/{uuid}/set_ok/: post: operationId: aws_instances_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/aws-instances/{uuid}/start/: post: operationId: aws_instances_start parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/aws-instances/{uuid}/stop/: post: operationId: aws_instances_stop parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/aws-instances/{uuid}/unlink/: post: operationId: aws_instances_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/aws-regions/: get: operationId: aws_regions_list parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - aws-regions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AwsRegion' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: aws_regions_count parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - aws-regions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/aws-regions/{uuid}/: get: operationId: aws_regions_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-regions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsRegion' description: '' /api/aws-sizes/: get: operationId: aws_sizes_list parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: region schema: type: string format: uuid x-waldur-operation-id: aws_regions_retrieve tags: - aws-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AwsSize' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: aws_sizes_count parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: region schema: type: string format: uuid x-waldur-operation-id: aws_regions_retrieve tags: - aws-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/aws-sizes/{uuid}/: get: operationId: aws_sizes_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsSize' description: '' /api/aws-volumes/: get: operationId: aws_volumes_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AwsVolumeFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AwsVolume' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: aws_volumes_create tags: - aws-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/AwsVolumeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AwsVolume' description: '' head: operationId: aws_volumes_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/aws-volumes/{uuid}/: get: operationId: aws_volumes_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AwsVolumeFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsVolume' description: '' put: operationId: aws_volumes_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/AwsVolumeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsVolume' description: '' patch: operationId: aws_volumes_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsVolume' description: '' delete: operationId: aws_volumes_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/aws-volumes/{uuid}/attach/: post: operationId: aws_volumes_attach parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/AwsVolumeAttachRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AwsVolumeAttach' description: '' /api/aws-volumes/{uuid}/detach/: post: operationId: aws_volumes_detach parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/aws-volumes/{uuid}/pull/: post: operationId: aws_volumes_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/aws-volumes/{uuid}/set_erred/: post: operationId: aws_volumes_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/aws-volumes/{uuid}/set_ok/: post: operationId: aws_volumes_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/aws-volumes/{uuid}/unlink/: post: operationId: aws_volumes_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - aws-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/azure-images/: get: operationId: azure_images_list parameters: - in: query name: location schema: type: string format: uri x-waldur-operation-id: azure_locations_retrieve - in: query name: location_uuid schema: type: string format: uuid x-waldur-operation-id: azure_locations_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - azure-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AzureImage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: azure_images_count parameters: - in: query name: location schema: type: string format: uri x-waldur-operation-id: azure_locations_retrieve - in: query name: location_uuid schema: type: string format: uuid x-waldur-operation-id: azure_locations_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - azure-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/azure-images/{uuid}/: get: operationId: azure_images_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureImage' description: '' /api/azure-locations/: get: operationId: azure_locations_list parameters: - in: query name: has_sizes schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - azure-locations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AzureLocation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: azure_locations_count parameters: - in: query name: has_sizes schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - azure-locations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/azure-locations/{uuid}/: get: operationId: azure_locations_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-locations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureLocation' description: '' /api/azure-public-ips/: get: operationId: azure_public_ips_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzurePublicIPFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource_group schema: type: string format: uri x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: resource_group_uuid schema: type: string format: uuid x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - azure-public-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AzurePublicIP' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: azure_public_ips_create tags: - azure-public-ips requestBody: content: application/json: schema: $ref: '#/components/schemas/AzurePublicIPRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AzurePublicIP' description: '' head: operationId: azure_public_ips_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource_group schema: type: string format: uri x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: resource_group_uuid schema: type: string format: uuid x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - azure-public-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/azure-public-ips/{uuid}/: get: operationId: azure_public_ips_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzurePublicIPFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-public-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzurePublicIP' description: '' put: operationId: azure_public_ips_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-public-ips requestBody: content: application/json: schema: $ref: '#/components/schemas/AzurePublicIPRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzurePublicIP' description: '' patch: operationId: azure_public_ips_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-public-ips requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAzurePublicIPRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzurePublicIP' description: '' delete: operationId: azure_public_ips_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-public-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/azure-public-ips/{uuid}/pull/: post: operationId: azure_public_ips_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-public-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/azure-public-ips/{uuid}/set_erred/: post: operationId: azure_public_ips_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-public-ips requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/azure-public-ips/{uuid}/set_ok/: post: operationId: azure_public_ips_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-public-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/azure-public-ips/{uuid}/unlink/: post: operationId: azure_public_ips_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-public-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/azure-resource-groups/: get: operationId: azure_resource_groups_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzureResourceGroupFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - azure-resource-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AzureResourceGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: azure_resource_groups_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - azure-resource-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/azure-resource-groups/{uuid}/: get: operationId: azure_resource_groups_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzureResourceGroupFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-resource-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureResourceGroup' description: '' /api/azure-sizes/: get: operationId: azure_sizes_list parameters: - in: query name: location schema: type: string format: uri x-waldur-operation-id: azure_locations_retrieve - in: query name: location_uuid schema: type: string format: uuid x-waldur-operation-id: azure_locations_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: zone schema: type: integer tags: - azure-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AzureSize' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: azure_sizes_count parameters: - in: query name: location schema: type: string format: uri x-waldur-operation-id: azure_locations_retrieve - in: query name: location_uuid schema: type: string format: uuid x-waldur-operation-id: azure_locations_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: zone schema: type: integer tags: - azure-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/azure-sizes/{uuid}/: get: operationId: azure_sizes_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureSize' description: '' /api/azure-sql-databases/: get: operationId: azure_sql_databases_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzureSqlDatabaseFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource_group schema: type: string format: uri x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: resource_group_uuid schema: type: string format: uuid x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: server schema: type: string format: uri - in: query name: server_uuid schema: type: string format: uuid x-waldur-operation-id: azure_sql_servers_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - azure-sql-databases security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AzureSqlDatabase' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: azure_sql_databases_create tags: - azure-sql-databases requestBody: content: application/json: schema: $ref: '#/components/schemas/AzureSqlDatabaseRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AzureSqlDatabase' description: '' head: operationId: azure_sql_databases_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource_group schema: type: string format: uri x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: resource_group_uuid schema: type: string format: uuid x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: server schema: type: string format: uri - in: query name: server_uuid schema: type: string format: uuid x-waldur-operation-id: azure_sql_servers_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - azure-sql-databases security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/azure-sql-databases/{uuid}/: get: operationId: azure_sql_databases_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzureSqlDatabaseFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-databases security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureSqlDatabase' description: '' put: operationId: azure_sql_databases_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-databases requestBody: content: application/json: schema: $ref: '#/components/schemas/AzureSqlDatabaseRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureSqlDatabase' description: '' patch: operationId: azure_sql_databases_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-databases requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAzureSqlDatabaseRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureSqlDatabase' description: '' delete: operationId: azure_sql_databases_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-databases security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/azure-sql-databases/{uuid}/pull/: post: operationId: azure_sql_databases_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-databases security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/azure-sql-databases/{uuid}/set_erred/: post: operationId: azure_sql_databases_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-databases requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/azure-sql-databases/{uuid}/set_ok/: post: operationId: azure_sql_databases_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-databases security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/azure-sql-databases/{uuid}/unlink/: post: operationId: azure_sql_databases_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-databases security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/azure-sql-servers/: get: operationId: azure_sql_servers_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzureSqlServerFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource_group schema: type: string format: uri x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: resource_group_uuid schema: type: string format: uuid x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - azure-sql-servers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AzureSqlServer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: azure_sql_servers_create tags: - azure-sql-servers requestBody: content: application/json: schema: $ref: '#/components/schemas/AzureSqlServerRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AzureSqlServer' description: '' head: operationId: azure_sql_servers_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource_group schema: type: string format: uri x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: resource_group_uuid schema: type: string format: uuid x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - azure-sql-servers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/azure-sql-servers/{uuid}/: get: operationId: azure_sql_servers_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzureSqlServerFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureSqlServer' description: '' put: operationId: azure_sql_servers_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers requestBody: content: application/json: schema: $ref: '#/components/schemas/AzureSqlServerRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureSqlServer' description: '' patch: operationId: azure_sql_servers_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAzureSqlServerRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureSqlServer' description: '' delete: operationId: azure_sql_servers_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/azure-sql-servers/{uuid}/create_database/: post: operationId: azure_sql_servers_create_database parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers requestBody: content: application/json: schema: $ref: '#/components/schemas/AzureSqlDatabaseCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureSqlDatabaseCreate' description: '' /api/azure-sql-servers/{uuid}/pull/: post: operationId: azure_sql_servers_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/azure-sql-servers/{uuid}/set_erred/: post: operationId: azure_sql_servers_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/azure-sql-servers/{uuid}/set_ok/: post: operationId: azure_sql_servers_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/azure-sql-servers/{uuid}/unlink/: post: operationId: azure_sql_servers_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-sql-servers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/azure-virtualmachines/: get: operationId: azure_virtualmachines_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzureVirtualMachineFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource_group schema: type: string format: uri x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: resource_group_uuid schema: type: string format: uuid x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AzureVirtualMachine' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: azure_virtualmachines_create tags: - azure-virtualmachines requestBody: content: application/json: schema: $ref: '#/components/schemas/AzureVirtualMachineRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AzureVirtualMachine' description: '' head: operationId: azure_virtualmachines_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource_group schema: type: string format: uri x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: resource_group_uuid schema: type: string format: uuid x-waldur-operation-id: azure_resource_groups_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/azure-virtualmachines/{uuid}/: get: operationId: azure_virtualmachines_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AzureVirtualMachineFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureVirtualMachine' description: '' put: operationId: azure_virtualmachines_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines requestBody: content: application/json: schema: $ref: '#/components/schemas/AzureVirtualMachineRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureVirtualMachine' description: '' patch: operationId: azure_virtualmachines_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAzureVirtualMachineRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AzureVirtualMachine' description: '' delete: operationId: azure_virtualmachines_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/azure-virtualmachines/{uuid}/pull/: post: operationId: azure_virtualmachines_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/azure-virtualmachines/{uuid}/restart/: post: operationId: azure_virtualmachines_restart parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/azure-virtualmachines/{uuid}/set_erred/: post: operationId: azure_virtualmachines_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/azure-virtualmachines/{uuid}/set_ok/: post: operationId: azure_virtualmachines_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/azure-virtualmachines/{uuid}/start/: post: operationId: azure_virtualmachines_start parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/azure-virtualmachines/{uuid}/stop/: post: operationId: azure_virtualmachines_stop parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/azure-virtualmachines/{uuid}/unlink/: post: operationId: azure_virtualmachines_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - azure-virtualmachines security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/backend-resource-requests/: get: operationId: backend_resource_requests_list description: Returns a paginated list of requests for backend resources. summary: List backend resource requests parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: finished schema: type: string format: date-time description: Modified after - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: started schema: type: string format: date-time description: Created after - in: query name: state schema: type: array items: $ref: '#/components/schemas/BackendResourceReqStateEnum' description: |+ Backend resource request state explode: true style: form tags: - backend-resource-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/BackendResourceReq' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: backend_resource_requests_create description: Creates a new request to fetch a list of importable resources from a backend. This is typically used by staff to trigger a site agent to report available resources. summary: Create a backend resource request tags: - backend-resource-requests requestBody: content: application/json: schema: $ref: '#/components/schemas/BackendResourceReqRequest' examples: RequestResourcesForAnOffering: value: offering: a1b2c3d4-e5f6-7890-1234-567890abcdef summary: Request resources for an offering required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/BackendResourceReq' examples: RequestResourcesForAnOffering: value: offering: a1b2c3d4-e5f6-7890-1234-567890abcdef summary: Request resources for an offering description: '' head: operationId: backend_resource_requests_count description: Get number of items in the collection matching the request parameters. summary: List backend resource requests parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: finished schema: type: string format: date-time description: Modified after - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: started schema: type: string format: date-time description: Created after - in: query name: state schema: type: array items: $ref: '#/components/schemas/BackendResourceReqStateEnum' description: |+ Backend resource request state explode: true style: form tags: - backend-resource-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/backend-resource-requests/{uuid}/: get: operationId: backend_resource_requests_retrieve description: Returns the details of a specific backend resource request. summary: Retrieve a backend resource request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - backend-resource-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BackendResourceReq' description: '' /api/backend-resource-requests/{uuid}/set_done/: post: operationId: backend_resource_requests_set_done description: Transitions the request state from 'Processing' to 'Done'. This is used by a site agent to signal that it has successfully reported all available resources. summary: Mark a request as done parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - backend-resource-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' x-permissions: - permission: OFFERING.MANAGE_BACKEND_RESOURCES scopes: - offering - offering.customer /api/backend-resource-requests/{uuid}/set_erred/: post: operationId: backend_resource_requests_set_erred description: Transitions the request state to 'Erred'. This is used by a site agent to report a failure during the resource fetching process. An error message and traceback should be provided. summary: Mark a request as erred parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - backend-resource-requests requestBody: content: application/json: schema: $ref: '#/components/schemas/BackendResourceRequestSetErredRequest' examples: ReportAnError: value: error_message: Failed to connect to the backend API. error_traceback: Traceback(...) summary: Report an error required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string examples: ReportAnError: value: error_message: Failed to connect to the backend API. error_traceback: Traceback(...) summary: Report an error description: '' x-permissions: - permission: OFFERING.MANAGE_BACKEND_RESOURCES scopes: - offering - offering.customer /api/backend-resource-requests/{uuid}/start_processing/: post: operationId: backend_resource_requests_start_processing description: Transitions the request state from 'Sent' to 'Processing'. This is used by a site agent to acknowledge that it has started fetching the resource list. summary: Start processing a request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - backend-resource-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' x-permissions: - permission: OFFERING.MANAGE_BACKEND_RESOURCES scopes: - offering - offering.customer /api/backend-resources/: get: operationId: backend_resources_list description: Returns a paginated list of backend resources that are available for import. This endpoint is typically used by site agents to see which resources they have reported. summary: List backend resources parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: created schema: type: string format: date-time description: Created after - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve tags: - backend-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/BackendResource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: OFFERING.MANAGE_BACKEND_RESOURCES scopes: - offering - offering.customer post: operationId: backend_resources_create description: Creates a new backend resource record. This is typically done by a site agent to report a resource that is available for import into the marketplace. summary: Create a backend resource tags: - backend-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/BackendResourceRequest' examples: CreateABackendResource: value: name: my-backend-vm-123 project: a1b2c3d4-e5f6-7890-1234-567890abcdef offering: b2c3d4e5-f678-9012-3456-7890abcdef12 backend_id: vm-backend-uuid-5678 backend_metadata: cpu_cores: 4 ram_gb: 8 storage_gb: 100 summary: Example of creating a backend resource for a specific offering and project. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/BackendResource' examples: CreateABackendResource: value: name: my-backend-vm-123 project: a1b2c3d4-e5f6-7890-1234-567890abcdef offering: b2c3d4e5-f678-9012-3456-7890abcdef12 backend_id: vm-backend-uuid-5678 backend_metadata: cpu_cores: 4 ram_gb: 8 storage_gb: 100 summary: Example of creating a backend resource for a specific offering and project. description: '' head: operationId: backend_resources_count description: Get number of items in the collection matching the request parameters. summary: List backend resources parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: created schema: type: string format: date-time description: Created after - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve tags: - backend-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.MANAGE_BACKEND_RESOURCES scopes: - offering - offering.customer /api/backend-resources/{uuid}/: get: operationId: backend_resources_retrieve description: Returns the details of a specific backend resource. summary: Retrieve a backend resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - backend-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BackendResource' description: '' x-permissions: - permission: OFFERING.MANAGE_BACKEND_RESOURCES scopes: - offering - offering.customer delete: operationId: backend_resources_destroy description: Deletes a backend resource record. This is typically done when the resource is no longer available for import. summary: Delete a backend resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - backend-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.MANAGE_BACKEND_RESOURCES scopes: - offering - offering.customer /api/backend-resources/{uuid}/import_resource/: post: operationId: backend_resources_import_resource description: "\n Converts a backend resource into a full marketplace\ \ resource. This action is restricted to staff users.\n Upon successful\ \ import, the original backend resource record is deleted. A fake order in\ \ the 'done'\n state is created to represent the import event.\n \ \ " summary: Import a backend resource (staff only) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - backend-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/BackendResourceImportRequest' examples: ImportWithASpecificPlan: value: plan: a1b2c3d4-e5f6-7890-1234-567890abcdef summary: Importing a resource and assigning it to a specific plan. ImportWithoutAPlan(forPrivateOfferings): value: {} summary: Importing a resource for a private offering where a plan is not required. required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Resource' examples: ImportWithASpecificPlan: value: plan: a1b2c3d4-e5f6-7890-1234-567890abcdef summary: Importing a resource and assigning it to a specific plan. ImportWithoutAPlan(forPrivateOfferings): value: {} summary: Importing a resource for a private offering where a plan is not required. description: '' /api/billing-total-cost/: get: operationId: billing_total_cost_retrieve parameters: - in: query name: accounting_is_running schema: type: boolean - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: month schema: type: integer - in: query name: name schema: type: string - in: query name: year schema: type: integer tags: - billing-total-cost security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/TotalCustomerCost' description: '' /api/booking-offerings/: get: operationId: booking_offerings_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OfferingFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - booking-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Offering' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: booking_offerings_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - booking-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/booking-offerings/{uuid}/: get: operationId: booking_offerings_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OfferingFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - booking-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Offering' description: '' /api/booking-offerings/{uuid}/google_calendar_sync/: post: operationId: booking_offerings_google_calendar_sync parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - booking-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/booking-offerings/{uuid}/share_google_calendar/: post: operationId: booking_offerings_share_google_calendar parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - booking-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/booking-offerings/{uuid}/unshare_google_calendar/: post: operationId: booking_offerings_unshare_google_calendar parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - booking-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/booking-resources/: get: operationId: booking_resources_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: component_count schema: type: number description: Filter by exact number of components - in: query name: connected_customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: downscaled schema: type: boolean description: Downscaled - in: query name: field schema: type: array items: $ref: '#/components/schemas/BookingResourceFieldEnum' - in: query name: has_terminate_date schema: type: boolean description: Has termination date - in: query name: is_attached schema: type: boolean description: Filter by attached state - in: query name: lexis_links_supported schema: type: boolean description: LEXIS links supported - in: query name: limit_based schema: type: boolean description: Filter by limit-based offerings - in: query name: limit_component_count schema: type: number description: Filter by exact number of limit-based components - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/BookingResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_billable schema: type: boolean description: Offering billable - in: query name: offering_shared schema: type: boolean description: Offering shared - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: string description: Offering type - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: only_limit_based schema: type: boolean description: Filter resources with only limit-based components - in: query name: only_usage_based schema: type: boolean description: Filter resources with only usage-based components - in: query name: order_state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: paused schema: type: boolean description: Paused - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor - in: query name: restrict_member_access schema: type: boolean description: Restrict member access - in: query name: runtime_state schema: type: string description: Runtime state - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ResourceState' description: |+ Resource state explode: true style: form - in: query name: usage_based schema: type: boolean description: Filter by usage-based offerings - in: query name: visible_to_providers schema: type: boolean description: Include only resources visible to service providers - in: query name: visible_to_username schema: type: string description: Visible to username tags: - booking-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/BookingResource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: booking_resources_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: component_count schema: type: number description: Filter by exact number of components - in: query name: connected_customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: downscaled schema: type: boolean description: Downscaled - in: query name: has_terminate_date schema: type: boolean description: Has termination date - in: query name: is_attached schema: type: boolean description: Filter by attached state - in: query name: lexis_links_supported schema: type: boolean description: LEXIS links supported - in: query name: limit_based schema: type: boolean description: Filter by limit-based offerings - in: query name: limit_component_count schema: type: number description: Filter by exact number of limit-based components - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/BookingResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_billable schema: type: boolean description: Offering billable - in: query name: offering_shared schema: type: boolean description: Offering shared - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: string description: Offering type - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: only_limit_based schema: type: boolean description: Filter resources with only limit-based components - in: query name: only_usage_based schema: type: boolean description: Filter resources with only usage-based components - in: query name: order_state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: paused schema: type: boolean description: Paused - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor - in: query name: restrict_member_access schema: type: boolean description: Restrict member access - in: query name: runtime_state schema: type: string description: Runtime state - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ResourceState' description: |+ Resource state explode: true style: form - in: query name: usage_based schema: type: boolean description: Filter by usage-based offerings - in: query name: visible_to_providers schema: type: boolean description: Include only resources visible to service providers - in: query name: visible_to_username schema: type: string description: Visible to username tags: - booking-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/booking-resources/{uuid}/: get: operationId: booking_resources_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/BookingResourceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - booking-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BookingResource' description: '' /api/booking-resources/{uuid}/accept/: post: operationId: booking_resources_accept parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - booking-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: RESOURCE.ACCEPT_BOOKING_REQUEST scopes: - project.customer - offering - offering.customer /api/booking-resources/{uuid}/reject/: post: operationId: booking_resources_reject parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - booking-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/broadcast-message-templates/: get: operationId: broadcast_message_templates_list parameters: - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - broadcast-message-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MessageTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: broadcast_message_templates_create tags: - broadcast-message-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/MessageTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MessageTemplate' description: '' head: operationId: broadcast_message_templates_count parameters: - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - broadcast-message-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/broadcast-message-templates/{uuid}/: get: operationId: broadcast_message_templates_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-message-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MessageTemplate' description: '' put: operationId: broadcast_message_templates_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-message-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/MessageTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MessageTemplate' description: '' patch: operationId: broadcast_message_templates_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-message-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMessageTemplateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MessageTemplate' description: '' delete: operationId: broadcast_message_templates_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-message-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/broadcast-messages/: get: operationId: broadcast_messages_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/BroadcastMessageFieldEnum' - in: query name: o schema: type: array items: $ref: '#/components/schemas/BroadcastMessageOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: $ref: '#/components/schemas/BroadcastMessageStateEnum' - in: query name: subject schema: type: string tags: - broadcast-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/BroadcastMessage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: broadcast_messages_create tags: - broadcast-messages requestBody: content: application/json: schema: $ref: '#/components/schemas/BroadcastMessageRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/BroadcastMessage' description: '' head: operationId: broadcast_messages_count parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/BroadcastMessageOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: $ref: '#/components/schemas/BroadcastMessageStateEnum' - in: query name: subject schema: type: string tags: - broadcast-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/broadcast-messages/{uuid}/: get: operationId: broadcast_messages_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/BroadcastMessageFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BroadcastMessage' description: '' put: operationId: broadcast_messages_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-messages requestBody: content: application/json: schema: $ref: '#/components/schemas/BroadcastMessageRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BroadcastMessage' description: '' patch: operationId: broadcast_messages_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-messages requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedBroadcastMessageRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BroadcastMessage' description: '' delete: operationId: broadcast_messages_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/broadcast-messages/{uuid}/schedule/: post: operationId: broadcast_messages_schedule parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/broadcast-messages/{uuid}/send/: post: operationId: broadcast_messages_send parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - broadcast-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/broadcast-messages/recipients/: get: operationId: broadcast_messages_recipients_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/BroadcastMessageFieldEnum' tags: - broadcast-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BroadcastMessage' description: '' head: operationId: broadcast_messages_recipients_count tags: - broadcast-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/call-assignment-configurations/: get: operationId: call_assignment_configurations_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - call-assignment-configurations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CallAssignmentConfiguration' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: call_assignment_configurations_create tags: - call-assignment-configurations requestBody: content: application/json: schema: $ref: '#/components/schemas/CallAssignmentConfigurationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CallAssignmentConfiguration' description: '' head: operationId: call_assignment_configurations_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - call-assignment-configurations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/call-assignment-configurations/{uuid}/: get: operationId: call_assignment_configurations_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-assignment-configurations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallAssignmentConfiguration' description: '' put: operationId: call_assignment_configurations_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-assignment-configurations requestBody: content: application/json: schema: $ref: '#/components/schemas/CallAssignmentConfigurationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallAssignmentConfiguration' description: '' patch: operationId: call_assignment_configurations_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-assignment-configurations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCallAssignmentConfigurationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallAssignmentConfiguration' description: '' delete: operationId: call_assignment_configurations_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-assignment-configurations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/call-managing-organisations/: get: operationId: call_managing_organisations_list parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/CallManagingOrganisationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - call-managing-organisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CallManagingOrganisation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: call_managing_organisations_create tags: - call-managing-organisations requestBody: content: application/json: schema: $ref: '#/components/schemas/CallManagingOrganisationRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CallManagingOrganisationRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/CallManagingOrganisationRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CallManagingOrganisation' description: '' head: operationId: call_managing_organisations_count parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/CallManagingOrganisationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - call-managing-organisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/call-managing-organisations/{uuid}/: get: operationId: call_managing_organisations_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallManagingOrganisation' description: '' put: operationId: call_managing_organisations_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations requestBody: content: application/json: schema: $ref: '#/components/schemas/CallManagingOrganisationRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CallManagingOrganisationRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/CallManagingOrganisationRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallManagingOrganisation' description: '' patch: operationId: call_managing_organisations_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCallManagingOrganisationRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedCallManagingOrganisationRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedCallManagingOrganisationRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallManagingOrganisation' description: '' delete: operationId: call_managing_organisations_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/call-managing-organisations/{uuid}/add_user/: post: operationId: call_managing_organisations_add_user description: Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set. summary: Grant a role to a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' examples: GrantProjectAdminRoleUntilEndOfYear: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2024-12-31' summary: Grant project admin role until end of year required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleGrantResponse: value: expiration_time: '2024-12-31T00:00:00Z' summary: Successful role grant response description: '' '400': description: Validation error, for example when trying to add a user to a terminated project. /api/call-managing-organisations/{uuid}/delete_user/: post: operationId: call_managing_organisations_delete_user description: Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role. summary: Revoke a role from a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleDeleteRequest' examples: RevokeProjectAdminRoleFromUser: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN summary: Revoke project admin role from user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role revoked successfully. /api/call-managing-organisations/{uuid}/list_users/: get: operationId: call_managing_organisations_list_users_list description: 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. summary: List users and their roles in a scope parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsFieldEnum' description: Fields to include in response - in: query name: full_name schema: type: string description: User full name - in: query name: native_name schema: type: string description: User native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsOEnum' description: Ordering fields - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string format: uuid description: Role UUID or name x-waldur-operation-id: roles_retrieve - in: query name: search_string schema: type: string description: Search string for user - in: query name: user schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug - in: query name: user_url schema: type: string description: User URL - in: query name: username schema: type: string description: User username - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRoleDetails' description: '' examples: ExampleUserRoleListResponse: value: - - uuid: a7e6b0a29a434d2889273c5240217a26 created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' role_name: PROJECT.ADMIN role_uuid: d8c2d5852d434937985392d24249b6d3 user_email: alice@example.com user_full_name: Alice Smith user_username: alice user_uuid: 8f20242b638743b18a485f81ac685e13 user_image: null created_by_full_name: Bob Johnson created_by_uuid: b4e4c2f1a6f24a8d8e4c2f1a6f24a8d8 summary: Example user role list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/call-managing-organisations/{uuid}/stats/: get: operationId: call_managing_organisations_stats_retrieve description: Return statistics for call managing organisation. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallManagingOrganisationStat' description: '' /api/call-managing-organisations/{uuid}/update_user/: post: operationId: call_managing_organisations_update_user description: 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. summary: Update a user's role expiration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-managing-organisations requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleUpdateRequest' examples: ExtendRoleUntilMid-2025: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2025-06-30' summary: Extend role until mid-2025 MakeARolePermanent: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: null summary: Make a role permanent required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleUpdateResponse: value: expiration_time: '2025-06-30T00:00:00Z' summary: Successful role update response description: '' /api/call-proposal-project-role-mappings/: get: operationId: call_proposal_project_role_mappings_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - call-proposal-project-role-mappings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProposalProjectRoleMapping' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: call_proposal_project_role_mappings_create tags: - call-proposal-project-role-mappings requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalProjectRoleMappingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProposalProjectRoleMapping' description: '' head: operationId: call_proposal_project_role_mappings_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - call-proposal-project-role-mappings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/call-proposal-project-role-mappings/{uuid}/: get: operationId: call_proposal_project_role_mappings_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-proposal-project-role-mappings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProposalProjectRoleMapping' description: '' put: operationId: call_proposal_project_role_mappings_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-proposal-project-role-mappings requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalProjectRoleMappingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProposalProjectRoleMapping' description: '' patch: operationId: call_proposal_project_role_mappings_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-proposal-project-role-mappings requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProposalProjectRoleMappingRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProposalProjectRoleMapping' description: '' delete: operationId: call_proposal_project_role_mappings_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-proposal-project-role-mappings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/call-reviewer-pools/: get: operationId: call_reviewer_pools_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: invitation_status schema: type: array items: $ref: '#/components/schemas/InvitationStatusEnum' explode: true style: form - in: query name: my_invitations schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/CallReviewerPoolOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve tags: - call-reviewer-pools security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CallReviewerPool' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: call_reviewer_pools_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: invitation_status schema: type: array items: $ref: '#/components/schemas/InvitationStatusEnum' explode: true style: form - in: query name: my_invitations schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/CallReviewerPoolOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve tags: - call-reviewer-pools security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/call-reviewer-pools/{uuid}/: get: operationId: call_reviewer_pools_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-reviewer-pools security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallReviewerPool' description: '' patch: operationId: call_reviewer_pools_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-reviewer-pools requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCallReviewerPoolUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallReviewerPoolUpdate' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/call-reviewer-pools/{uuid}/accept/: post: operationId: call_reviewer_pools_accept description: Accept a pool invitation (authenticated users only). parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-reviewer-pools requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/SelfDeclaredConflictRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvitationAcceptResponse' description: '' '400': content: application/json: schema: $ref: '#/components/schemas/InvitationAcceptError' description: '' /api/call-reviewer-pools/{uuid}/decline/: post: operationId: call_reviewer_pools_decline description: Decline a pool invitation (authenticated users only). parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-reviewer-pools requestBody: content: application/json: schema: $ref: '#/components/schemas/InvitationDeclineRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvitationDeclineResponse' description: '' /api/call-rounds/: get: operationId: call_rounds_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - call-rounds security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CallRound' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: call_rounds_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - call-rounds security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/call-rounds/{uuid}/: get: operationId: call_rounds_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - call-rounds security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallRound' description: '' /api/call-rounds/{uuid}/reviewers/: get: operationId: call_rounds_reviewers_list description: Return list of reviewers for round. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - call-rounds security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RoundReviewer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/celery-stats/: get: operationId: celery_stats_retrieve description: |- Provides a comprehensive snapshot of all Celery workers' status. This endpoint returns detailed information about: - **active**: Tasks currently being executed by workers - **scheduled**: Tasks scheduled for future execution (with ETA) - **reserved**: Tasks received by workers but not yet started - **revoked**: Task IDs that have been cancelled/revoked - **query_task**: Results of task queries (if any) - **stats**: Detailed worker statistics including uptime, pool info, and broker connection Each field is a dictionary where keys are worker names (e.g., 'celery@hostname'). If no workers are available, fields will be `null`. Requires support user permissions. summary: Get Celery worker statistics tags: - celery-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CeleryStatsResponse' examples: CeleryStatsWithActiveWorkers: value: active: celery@worker1: - id: e3a95109-acd5-4f5a-b4c4-65f2f4e5d123 name: waldur_core.tasks.send_email args: - user@example.com kwargs: subject: Welcome type: waldur_core.tasks.send_email hostname: celery@worker1 time_start: 1703952000.123456 acknowledged: true worker_pid: 12345 scheduled: celery@worker1: [] reserved: celery@worker1: [] revoked: celery@worker1: [] query_task: null stats: celery@worker1: broker: hostname: redis port: 6379 transport: redis virtual_host: '0' clock: '12345' uptime: 86400 pid: 1234 pool: max_concurrency: 4 processes: - 12345 - 12346 - 12347 - 12348 prefetch_count: 16 total: waldur_core.tasks.send_email: 150 waldur_core.tasks.cleanup: 42 summary: Response when Celery workers are running description: Example showing active workers with tasks in various states. NoWorkersAvailable: value: active: null scheduled: null reserved: null revoked: null query_task: null stats: null summary: Response when no Celery workers are running description: All fields are null when workers are offline or unreachable. description: '' /api/chat-messages/: get: operationId: chat_messages_list parameters: - in: query name: include_history schema: type: boolean - in: query name: is_flagged schema: type: boolean - in: query name: thread schema: type: string format: uuid x-waldur-operation-id: chat_threads_retrieve tags: - chat-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Message' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/chat-quota/set_quota/: post: operationId: chat_quota_set_quota description: |- Allows staff/support to set token quota limits for a specific user. Configure daily, weekly, and monthly limits: - Omit field or send `null`: Use system default - `-1`: Unlimited (no quota enforcement) - `0` or positive integer: Specific token limit summary: Set token quota for user tags: - chat-quota requestBody: content: application/json: schema: $ref: '#/components/schemas/SetTokenQuotaRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/chat-quota/usage/: get: operationId: chat_quota_usage_retrieve description: "\n Get current token quota and usage for the requesting\ \ user.\n\n Returns token quota for all periods (daily, weekly, monthly):\n\ \ - limit: User's custom limit (null = use system default, -1 = unlimited,\ \ or positive integer)\n - usage: Tokens used in current period\n \ \ - remaining: Tokens remaining (null if unlimited)\n - reset_at:\ \ When the period resets\n - system_default: System-wide default limit\ \ from configuration (for transparency when limit is null)\n " parameters: - in: query name: user_uuid schema: type: string format: uuid description: UUID of user to view quota for (staff/support only). Omit to view your own quota. required: true x-waldur-operation-id: users_retrieve tags: - chat-quota security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/TokenQuotaUsageResponse' description: '' /api/chat-sessions/: get: operationId: chat_sessions_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ChatSessionFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - chat-sessions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ChatSession' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/chat-sessions/{uuid}/: get: operationId: chat_sessions_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ChatSessionFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - chat-sessions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChatSession' description: '' /api/chat-sessions/current/: get: operationId: chat_sessions_current_retrieve description: Returns the current user's chat session, creating it if it doesn't exist. summary: Get or create current user's chat session tags: - chat-sessions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChatSession' description: '' /api/chat-threads/: get: operationId: chat_threads_list parameters: - in: query name: created schema: type: string format: date - in: query name: field schema: type: array items: $ref: '#/components/schemas/ThreadSessionFieldEnum' - in: query name: is_archived schema: type: boolean - in: query name: is_flagged schema: type: boolean - in: query name: max_severity schema: $ref: '#/components/schemas/InjectionSeverityEnum' - in: query name: modified schema: type: string format: date - in: query name: o schema: type: array items: $ref: '#/components/schemas/ThreadSessionOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - chat-threads security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ThreadSession' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/chat-threads/{uuid}/: get: operationId: chat_threads_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ThreadSessionFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - chat-threads security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ThreadSession' description: '' /api/chat-threads/{uuid}/archive/: post: operationId: chat_threads_archive description: Archive a thread (soft delete). summary: Archive thread parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - chat-threads requestBody: content: application/json: schema: $ref: '#/components/schemas/ThreadSessionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/chat-threads/{uuid}/unarchive/: post: operationId: chat_threads_unarchive description: Restore an archived thread. summary: Unarchive thread parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - chat-threads requestBody: content: application/json: schema: $ref: '#/components/schemas/ThreadSessionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/chat-tools/execute/: post: operationId: chat_tools_execute description: Execute a tool and return the result. tags: - chat-tools requestBody: content: application/json: schema: $ref: '#/components/schemas/ToolExecuteRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' /api/chat/stream/: post: operationId: chat_stream tags: - chat requestBody: content: application/json: schema: $ref: '#/components/schemas/ChatRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/x-ndjson: schema: $ref: '#/components/schemas/ChatResponse' description: '' /api/checklists-admin/: get: operationId: checklists_admin_list parameters: - in: query name: checklist_type schema: $ref: '#/components/schemas/ChecklistTypeEnum' description: |+ Type of compliance this checklist addresses - in: query name: checklist_type__in schema: type: array items: $ref: '#/components/schemas/ChecklistTypeEnum' description: |+ Filter by multiple checklist types explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - checklists-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Checklist' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: checklists_admin_create tags: - checklists-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ChecklistRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Checklist' description: '' head: operationId: checklists_admin_count parameters: - in: query name: checklist_type schema: $ref: '#/components/schemas/ChecklistTypeEnum' description: |+ Type of compliance this checklist addresses - in: query name: checklist_type__in schema: type: array items: $ref: '#/components/schemas/ChecklistTypeEnum' description: |+ Filter by multiple checklist types explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - checklists-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/checklists-admin-question-dependencies/: get: operationId: checklists_admin_question_dependencies_list parameters: - in: query name: depends_on_question_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_questions_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: question_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_questions_retrieve tags: - checklists-admin-question-dependencies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/QuestionDependency' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: checklists_admin_question_dependencies_create tags: - checklists-admin-question-dependencies requestBody: content: application/json: schema: $ref: '#/components/schemas/QuestionDependencyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/QuestionDependency' description: '' head: operationId: checklists_admin_question_dependencies_count parameters: - in: query name: depends_on_question_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_questions_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: question_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_questions_retrieve tags: - checklists-admin-question-dependencies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/checklists-admin-question-dependencies/{uuid}/: get: operationId: checklists_admin_question_dependencies_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-question-dependencies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionDependency' description: '' put: operationId: checklists_admin_question_dependencies_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-question-dependencies requestBody: content: application/json: schema: $ref: '#/components/schemas/QuestionDependencyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionDependency' description: '' patch: operationId: checklists_admin_question_dependencies_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-question-dependencies requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedQuestionDependencyRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionDependency' description: '' delete: operationId: checklists_admin_question_dependencies_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-question-dependencies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/checklists-admin-question-options/: get: operationId: checklists_admin_question_options_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: question_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_questions_retrieve tags: - checklists-admin-question-options security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/QuestionOptionsAdmin' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: checklists_admin_question_options_create tags: - checklists-admin-question-options requestBody: content: application/json: schema: $ref: '#/components/schemas/QuestionOptionsAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/QuestionOptionsAdmin' description: '' head: operationId: checklists_admin_question_options_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: question_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_questions_retrieve tags: - checklists-admin-question-options security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/checklists-admin-question-options/{uuid}/: get: operationId: checklists_admin_question_options_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-question-options security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionOptionsAdmin' description: '' put: operationId: checklists_admin_question_options_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-question-options requestBody: content: application/json: schema: $ref: '#/components/schemas/QuestionOptionsAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionOptionsAdmin' description: '' patch: operationId: checklists_admin_question_options_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-question-options requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedQuestionOptionsAdminRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionOptionsAdmin' description: '' delete: operationId: checklists_admin_question_options_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-question-options security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/checklists-admin-questions/: get: operationId: checklists_admin_questions_list parameters: - in: query name: checklist_type schema: $ref: '#/components/schemas/ChecklistTypeEnum' description: |+ Type of compliance this checklist addresses - in: query name: checklist_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_retrieve - in: query name: has_onboarding_mapping schema: type: boolean description: Filter questions that have onboarding metadata mapping - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - checklists-admin-questions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/QuestionAdmin' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: checklists_admin_questions_create tags: - checklists-admin-questions requestBody: content: application/json: schema: $ref: '#/components/schemas/QuestionAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/QuestionAdmin' description: '' head: operationId: checklists_admin_questions_count parameters: - in: query name: checklist_type schema: $ref: '#/components/schemas/ChecklistTypeEnum' description: |+ Type of compliance this checklist addresses - in: query name: checklist_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_retrieve - in: query name: has_onboarding_mapping schema: type: boolean description: Filter questions that have onboarding metadata mapping - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - checklists-admin-questions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/checklists-admin-questions/{uuid}/: get: operationId: checklists_admin_questions_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-questions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionAdmin' description: '' put: operationId: checklists_admin_questions_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-questions requestBody: content: application/json: schema: $ref: '#/components/schemas/QuestionAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionAdmin' description: '' patch: operationId: checklists_admin_questions_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-questions requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedQuestionAdminRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/QuestionAdmin' description: '' delete: operationId: checklists_admin_questions_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin-questions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/checklists-admin/{uuid}/: get: operationId: checklists_admin_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Checklist' description: '' put: operationId: checklists_admin_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/ChecklistRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Checklist' description: '' patch: operationId: checklists_admin_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedChecklistRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Checklist' description: '' delete: operationId: checklists_admin_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/checklists-admin/{uuid}/questions/: get: operationId: checklists_admin_checklist_questions description: Return checklist questions. parameters: - in: query name: checklist_type schema: $ref: '#/components/schemas/ChecklistTypeEnum' description: |+ Type of compliance this checklist addresses - in: query name: checklist_type__in schema: type: array items: $ref: '#/components/schemas/ChecklistTypeEnum' description: |+ Filter by multiple checklist types explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - checklists-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/QuestionAdmin' description: '' description: '' /api/coi-detection-jobs/: get: operationId: coi_detection_jobs_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: job_type schema: $ref: '#/components/schemas/COIDetectionJobJobTypeEnum' - in: query name: o schema: type: array items: $ref: '#/components/schemas/COIDetectionJobOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/COIDetectionJobStateEnum' explode: true style: form tags: - coi-detection-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/COIDetectionJob' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: coi_detection_jobs_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: job_type schema: $ref: '#/components/schemas/COIDetectionJobJobTypeEnum' - in: query name: o schema: type: array items: $ref: '#/components/schemas/COIDetectionJobOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/COIDetectionJobStateEnum' explode: true style: form tags: - coi-detection-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/coi-detection-jobs/{uuid}/: get: operationId: coi_detection_jobs_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - coi-detection-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/COIDetectionJob' description: '' /api/coi-disclosures/: get: operationId: coi_disclosures_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: certified schema: type: boolean - in: query name: is_current schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/COIDisclosureFormOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve tags: - coi-disclosures security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/COIDisclosureForm' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: coi_disclosures_create tags: - coi-disclosures requestBody: content: application/json: schema: $ref: '#/components/schemas/COIDisclosureFormRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/COIDisclosureForm' description: '' head: operationId: coi_disclosures_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: certified schema: type: boolean - in: query name: is_current schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/COIDisclosureFormOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve tags: - coi-disclosures security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/coi-disclosures/{uuid}/: get: operationId: coi_disclosures_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - coi-disclosures security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/COIDisclosureForm' description: '' /api/component-user-usage-limits/: get: operationId: component_user_usage_limits_list description: Returns a paginated list of usage limits set for specific users on resource components. summary: List component usage limits for users parameters: - in: query name: component_type schema: type: string description: Component type - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: username schema: type: string description: Username tags: - component-user-usage-limits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ComponentUserUsageLimit' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: component_user_usage_limits_create description: Sets a usage limit for a specific user on a resource's component. This is only applicable for offerings that support per-user consumption limitation. summary: Create a component usage limit for a user tags: - component-user-usage-limits requestBody: content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsageLimitRequest' examples: SetACPUUsageLimitForAUser: value: resource: http://testserver/api/marketplace-resources/a1b2c3d4-e5f6-7890-1234-567890abcdef/ component: b2c3d4e5-f678-9012-3456-7890abcdef12 user: http://testserver/api/marketplace-offering-users/c3d4e5f6-7890-1234-5678-90abcdef1234/ limit: 100 summary: Set a CPU usage limit for a user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsageLimit' examples: SetACPUUsageLimitForAUser: value: resource: http://testserver/api/marketplace-resources/a1b2c3d4-e5f6-7890-1234-567890abcdef/ component: b2c3d4e5-f678-9012-3456-7890abcdef12 user: http://testserver/api/marketplace-offering-users/c3d4e5f6-7890-1234-5678-90abcdef1234/ limit: 100 summary: Set a CPU usage limit for a user description: '' head: operationId: component_user_usage_limits_count description: Get number of items in the collection matching the request parameters. summary: List component usage limits for users parameters: - in: query name: component_type schema: type: string description: Component type - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: username schema: type: string description: Username tags: - component-user-usage-limits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/component-user-usage-limits/{uuid}/: get: operationId: component_user_usage_limits_retrieve description: Returns the details of a specific user's usage limit for a component. summary: Retrieve a component usage limit parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - component-user-usage-limits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsageLimit' description: '' put: operationId: component_user_usage_limits_update description: Updates an existing usage limit for a user on a component. summary: Update a component usage limit parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - component-user-usage-limits requestBody: content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsageLimitRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsageLimit' description: '' x-permissions: - permission: RESOURCE.CONSUMPTION_LIMITATION scopes: - resource.project.customer - resource.project patch: operationId: component_user_usage_limits_partial_update description: Partially updates an existing usage limit for a user on a component. summary: Partially update a component usage limit parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - component-user-usage-limits requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedComponentUserUsageLimitRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsageLimit' description: '' x-permissions: - permission: RESOURCE.CONSUMPTION_LIMITATION scopes: - resource.project.customer - resource.project delete: operationId: component_user_usage_limits_destroy description: Removes a usage limit for a user on a component. summary: Delete a component usage limit parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - component-user-usage-limits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: RESOURCE.CONSUMPTION_LIMITATION scopes: - resource.project.customer - resource.project /api/configuration/: get: operationId: configuration_retrieve description: Returns a dictionary of public settings for the Waldur deployment. This includes feature flags, authentication methods, and other configuration details that are safe to expose to any user. summary: Get public configuration tags: - configuration security: - tokenAuth: [] - waldurOIDCAuth: [] - {} responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' /api/conflicts-of-interest/: get: operationId: conflicts_of_interest_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: coi_type schema: type: array items: $ref: '#/components/schemas/CoiTypeEnum' explode: true style: form - in: query name: detection_method schema: type: array items: $ref: '#/components/schemas/DetectionMethodEnum' explode: true style: form - in: query name: o schema: type: array items: $ref: '#/components/schemas/ConflictOfInterestOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_name schema: type: string - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: round_uuid schema: type: string format: uuid x-waldur-operation-id: call_rounds_retrieve - in: query name: severity schema: $ref: '#/components/schemas/COISeverityLevel' - in: query name: status schema: type: array items: $ref: '#/components/schemas/ConflictOfInterestStatusEnum' explode: true style: form tags: - conflicts-of-interest security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ConflictOfInterest' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: conflicts_of_interest_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: coi_type schema: type: array items: $ref: '#/components/schemas/CoiTypeEnum' explode: true style: form - in: query name: detection_method schema: type: array items: $ref: '#/components/schemas/DetectionMethodEnum' explode: true style: form - in: query name: o schema: type: array items: $ref: '#/components/schemas/ConflictOfInterestOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_name schema: type: string - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: round_uuid schema: type: string format: uuid x-waldur-operation-id: call_rounds_retrieve - in: query name: severity schema: $ref: '#/components/schemas/COISeverityLevel' - in: query name: status schema: type: array items: $ref: '#/components/schemas/ConflictOfInterestStatusEnum' explode: true style: form tags: - conflicts-of-interest security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/conflicts-of-interest/{uuid}/: get: operationId: conflicts_of_interest_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - conflicts-of-interest security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConflictOfInterest' description: '' put: operationId: conflicts_of_interest_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - conflicts-of-interest requestBody: content: application/json: schema: $ref: '#/components/schemas/ConflictOfInterestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConflictOfInterest' description: '' patch: operationId: conflicts_of_interest_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - conflicts-of-interest requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedConflictOfInterestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConflictOfInterest' description: '' /api/conflicts-of-interest/{uuid}/dismiss/: post: operationId: conflicts_of_interest_dismiss description: Dismiss a conflict of interest (not a real conflict). parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - conflicts-of-interest requestBody: content: application/json: schema: $ref: '#/components/schemas/COIStatusUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConflictOfInterest' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - call - call.manager /api/conflicts-of-interest/{uuid}/recuse/: post: operationId: conflicts_of_interest_recuse description: Recuse reviewer from the proposal. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - conflicts-of-interest requestBody: content: application/json: schema: $ref: '#/components/schemas/COIStatusUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConflictOfInterest' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - call - call.manager /api/conflicts-of-interest/{uuid}/waive/: post: operationId: conflicts_of_interest_waive description: Waive a conflict with a management plan. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - conflicts-of-interest requestBody: content: application/json: schema: $ref: '#/components/schemas/COIStatusUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConflictOfInterest' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - call - call.manager /api/customer-credits/: get: operationId: customer_credits_list parameters: - in: query name: customer_name schema: type: string - in: query name: customer_slug schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/CustomerCreditOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string tags: - customer-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerCredit' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: customer_credits_create tags: - customer-credits requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCustomerCreditRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CreateCustomerCredit' description: '' head: operationId: customer_credits_count parameters: - in: query name: customer_name schema: type: string - in: query name: customer_slug schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/CustomerCreditOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string tags: - customer-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/customer-credits/{uuid}/: get: operationId: customer_credits_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerCredit' description: '' put: operationId: customer_credits_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-credits requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateCustomerCreditRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CreateCustomerCredit' description: '' patch: operationId: customer_credits_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-credits requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCreateCustomerCreditRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CreateCustomerCredit' description: '' delete: operationId: customer_credits_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/customer-credits/{uuid}/apply_compensations/: post: operationId: customer_credits_apply_compensations parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-credits requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerCreditRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerCredit' description: '' /api/customer-credits/{uuid}/clear_compensations/: post: operationId: customer_credits_clear_compensations parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-credits requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerCreditRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerCredit' description: '' /api/customer-credits/{uuid}/consumptions/: get: operationId: customer_credits_consumptions_list description: Get credit consumption history grouped by month. parameters: - in: query name: customer_name schema: type: string - in: query name: customer_slug schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/CustomerCreditOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerCreditConsumption' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/customer-permissions-reviews/: get: operationId: customer_permissions_reviews_list parameters: - in: query name: closed schema: type: string format: date-time - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: is_pending schema: type: boolean description: Is pending - in: query name: o schema: type: array items: $ref: '#/components/schemas/CustomerPermissionReviewOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_uuid schema: type: string format: uuid description: Reviewer UUID x-waldur-operation-id: users_retrieve tags: - customer-permissions-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerPermissionReview' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: customer_permissions_reviews_count parameters: - in: query name: closed schema: type: string format: date-time - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: is_pending schema: type: boolean description: Is pending - in: query name: o schema: type: array items: $ref: '#/components/schemas/CustomerPermissionReviewOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_uuid schema: type: string format: uuid description: Reviewer UUID x-waldur-operation-id: users_retrieve tags: - customer-permissions-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/customer-permissions-reviews/{uuid}/: get: operationId: customer_permissions_reviews_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-permissions-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerPermissionReview' description: '' /api/customer-permissions-reviews/{uuid}/close/: post: operationId: customer_permissions_reviews_close summary: Close customer permission review parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customer-permissions-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/customer-quotas/: get: operationId: customer_quotas_list description: List customer quotas. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - customer-quotas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerQuotas' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: customer_quotas_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - customer-quotas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/customers/: get: operationId: customers_list description: Retrieve a list of customers. The list is filtered based on the user's permissions. summary: List customers parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: field schema: type: array items: $ref: '#/components/schemas/CustomerFieldEnum' - in: query name: has_resources schema: type: string description: Filter by customers with resources. - in: query name: is_call_managing_organization schema: type: boolean description: Filter by customers that are call managing organizations. - in: query name: is_service_provider schema: type: boolean description: Filter by customers that are service providers. - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: query name: service_provider_uuid schema: type: string format: uuid description: Filter by service provider UUID. x-waldur-operation-id: marketplace_service_providers_list - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Customer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: customers_create description: A new customer can only be created by users with staff privilege. summary: Create a new customer tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerRequest' examples: CreateCustomer: value: name: Customer A native_name: Customer A abbreviation: CA contact_details: Luhamaa 28, 10128 Tallinn summary: Create customer application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CustomerRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/CustomerRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Customer' description: '' head: operationId: customers_count description: Get number of items in the collection matching the request parameters. summary: List customers parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: has_resources schema: type: string description: Filter by customers with resources. - in: query name: is_call_managing_organization schema: type: boolean description: Filter by customers that are call managing organizations. - in: query name: is_service_provider schema: type: boolean description: Filter by customers that are service providers. - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: query name: service_provider_uuid schema: type: string format: uuid description: Filter by service provider UUID. x-waldur-operation-id: marketplace_service_providers_list - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/customers/{customer_uuid}/project-metadata-compliance-details/: get: operationId: customers_project_metadata_compliance_details_list description: Provides detailed compliance status for all projects within a customer, including individual answers and completion status. summary: Get detailed project metadata compliance parameters: - in: path name: customer_uuid schema: type: string format: uuid description: UUID of the customer required: true - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectDetailsResponse' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/customers/{customer_uuid}/project-metadata-compliance-overview/: get: operationId: customers_project_metadata_compliance_overview_list description: Provides aggregated statistics about project metadata compliance for all projects within a customer. summary: Get project metadata compliance overview parameters: - in: path name: customer_uuid schema: type: string format: uuid description: UUID of the customer required: true - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ComplianceOverview' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/customers/{customer_uuid}/project-metadata-compliance-projects/: get: operationId: customers_project_metadata_compliance_projects_list description: Provides a paginated list of projects with their checklist completion status and answer details. summary: List projects with compliance data parameters: - in: path name: customer_uuid schema: type: string format: uuid description: UUID of the customer required: true - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectAnswer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/customers/{customer_uuid}/project-metadata-question-answers/: get: operationId: customers_project_metadata_question_answers_list description: Provides a paginated list of all questions from the customer's compliance checklist, including the answers given in each project. summary: List questions with project answers parameters: - in: path name: customer_uuid schema: type: string format: uuid description: UUID of the customer required: true - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/QuestionAnswer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/customers/{customer_uuid}/users/: get: operationId: customers_users_list description: Lists all users who have a role in the specified customer or any of its projects. Requires permissions to list customer users. summary: List users of a customer parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: path name: customer_uuid schema: type: string format: uuid description: UUID of the customer required: true - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: field schema: type: array items: $ref: '#/components/schemas/CustomerUserFieldEnum' - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: $ref: '#/components/schemas/CustomerUserOEnum' description: Ordering. Sort by a combination of first name, last name, and username. - in: query name: organization schema: type: string description: Organization - in: query name: organization_role schema: type: array items: anyOf: - type: string enum: - CUSTOMER.MANAGER - CUSTOMER.OWNER - CUSTOMER.SUPPORT - type: string description: Filter by one or more organization roles. Select a standard role or provide a custom role string. Can be specified multiple times. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_role schema: type: array items: anyOf: - type: string enum: - PROJECT.ADMIN - PROJECT.MANAGER - PROJECT.MEMBER - type: string description: Filter by one or more project roles. Select a standard role or provide a custom role string. Can be specified multiple times. - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerUser' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/customers/{uuid}/: get: operationId: customers_retrieve description: Fetch the details of a specific customer by its UUID. summary: Retrieve customer details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/CustomerFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Customer' description: '' put: operationId: customers_update description: Update the details of an existing customer. Requires customer owner or staff permissions. summary: Update a customer parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CustomerRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/CustomerRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Customer' description: '' patch: operationId: customers_partial_update description: Partially update the details of an existing customer. Requires customer owner or staff permissions. summary: Partially update a customer parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCustomerRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedCustomerRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedCustomerRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Customer' description: '' delete: operationId: customers_destroy description: Delete a customer. This action is only available to staff users. If a customer has any active projects, the deletion request will fail with a 409 Conflict response. summary: Delete a customer parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/customers/{uuid}/add_user/: post: operationId: customers_add_user description: Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set. summary: Grant a role to a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' examples: GrantProjectAdminRoleUntilEndOfYear: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2024-12-31' summary: Grant project admin role until end of year required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleGrantResponse: value: expiration_time: '2024-12-31T00:00:00Z' summary: Successful role grant response description: '' '400': description: Validation error, for example when trying to add a user to a terminated project. /api/customers/{uuid}/contact/: post: operationId: customers_contact description: Update organization contact information. Requires CUSTOMER_CONTACT_UPDATE or CUSTOMER.UPDATE permission. summary: Update customer contact details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerContactUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerContactUpdate' description: '' /api/customers/{uuid}/delete_user/: post: operationId: customers_delete_user description: Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role. summary: Revoke a role from a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleDeleteRequest' examples: RevokeProjectAdminRoleFromUser: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN summary: Revoke project admin role from user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role revoked successfully. /api/customers/{uuid}/history/: get: operationId: customers_history_list description: Returns the version history for this object. Only accessible by staff and support users. summary: Get version history parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: created_after schema: type: string description: Filter versions created after this timestamp (ISO 8601) - in: query name: created_before schema: type: string description: Filter versions created before this timestamp (ISO 8601) - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: has_resources schema: type: string description: Filter by customers with resources. - in: query name: is_call_managing_organization schema: type: boolean description: Filter by customers that are call managing organizations. - in: query name: is_service_provider schema: type: boolean description: Filter by customers that are service providers. - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: query name: service_provider_uuid schema: type: string format: uuid description: Filter by service provider UUID. x-waldur-operation-id: marketplace_service_providers_list - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve - in: path name: uuid schema: type: string format: uuid required: true tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/customers/{uuid}/history/at/: get: operationId: customers_history_at_retrieve description: Returns the state of the object as it was at the specified timestamp. Only accessible by staff and support users. summary: Get object state at a specific timestamp parameters: - in: query name: timestamp schema: type: string description: ISO 8601 timestamp to query the object state at required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VersionHistory' description: '' '400': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: type: object additionalProperties: {} description: '' /api/customers/{uuid}/list_users/: get: operationId: customers_list_users_list description: 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. summary: List users and their roles in a scope parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsFieldEnum' description: Fields to include in response - in: query name: full_name schema: type: string description: User full name - in: query name: native_name schema: type: string description: User native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsOEnum' description: Ordering fields - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string format: uuid description: Role UUID or name x-waldur-operation-id: roles_retrieve - in: query name: search_string schema: type: string description: Search string for user - in: query name: user schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug - in: query name: user_url schema: type: string description: User URL - in: query name: username schema: type: string description: User username - in: path name: uuid schema: type: string format: uuid required: true tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRoleDetails' description: '' examples: ExampleUserRoleListResponse: value: - - uuid: a7e6b0a29a434d2889273c5240217a26 created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' role_name: PROJECT.ADMIN role_uuid: d8c2d5852d434937985392d24249b6d3 user_email: alice@example.com user_full_name: Alice Smith user_username: alice user_uuid: 8f20242b638743b18a485f81ac685e13 user_image: null created_by_full_name: Bob Johnson created_by_uuid: b4e4c2f1a6f24a8d8e4c2f1a6f24a8d8 summary: Example user role list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/customers/{uuid}/project-digest-config/: get: operationId: customers_project_digest_config_retrieve description: Retrieve the project digest email configuration for this organization. summary: Get project digest configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectDigestConfig' description: '' /api/customers/{uuid}/project-digest-config/preview/: post: operationId: customers_project_digest_config_preview description: Returns rendered HTML preview of the digest for a specific project. summary: Preview digest for a project parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectDigestPreviewRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectDigestPreviewResponse' description: '' /api/customers/{uuid}/project-digest-config/send-test/: post: operationId: customers_project_digest_config_send_test description: Send a test digest email to the requesting user. summary: Send a test digest email parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/customers/{uuid}/stats/: get: operationId: customers_stats_retrieve description: Provides statistics about the resource usage (e.g., CPU, RAM, storage) for all projects within a customer. Can be filtered to show usage for the current month only. summary: Get customer resource usage statistics parameters: - in: query name: for_current_month schema: type: boolean description: If true, returns usage data for the current month only. Otherwise, returns total usage. - in: path name: uuid schema: type: string format: uuid required: true tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComponentsUsageStats' description: '' /api/customers/{uuid}/update-project-digest-config/: put: operationId: customers_update_project_digest_config_update description: Update the project digest email configuration for this organization. summary: Update project digest configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectDigestConfigRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectDigestConfig' description: '' patch: operationId: customers_update_project_digest_config_partial_update description: Update the project digest email configuration for this organization. summary: Update project digest configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectDigestConfigRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectDigestConfig' description: '' /api/customers/{uuid}/update_organization_groups/: post: operationId: customers_update_organization_groups description: Assigns a customer to one or more organization groups. This action is restricted to staff users. summary: Update organization groups for a customer parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationGroupsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/customers/{uuid}/update_user/: post: operationId: customers_update_user description: 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. summary: Update a user's role expiration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - customers requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleUpdateRequest' examples: ExtendRoleUntilMid-2025: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2025-06-30' summary: Extend role until mid-2025 MakeARolePermanent: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: null summary: Make a role permanent required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleUpdateResponse: value: expiration_time: '2025-06-30T00:00:00Z' summary: Successful role update response description: '' /api/customers/countries/: get: operationId: customers_countries_list description: Returns a list of countries that can be used when creating or updating a customer. The list can be configured by the service provider. summary: Get list of available countries parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: has_resources schema: type: string description: Filter by customers with resources. - in: query name: is_call_managing_organization schema: type: boolean description: Filter by customers that are call managing organizations. - in: query name: is_service_provider schema: type: boolean description: Filter by customers that are service providers. - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: query name: service_provider_uuid schema: type: string format: uuid description: Filter by service provider UUID. x-waldur-operation-id: marketplace_service_providers_list - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Country' description: '' examples: CountryListResponse: value: - - label: Estonia value: EE - label: Latvia value: LV - label: Finland value: FI summary: Country list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: customers_countries_count description: Get number of items in the collection matching the request parameters. summary: Get list of available countries parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: has_resources schema: type: string description: Filter by customers with resources. - in: query name: is_call_managing_organization schema: type: boolean description: Filter by customers that are call managing organizations. - in: query name: is_service_provider schema: type: boolean description: Filter by customers that are service providers. - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: query name: service_provider_uuid schema: type: string format: uuid description: Filter by service provider UUID. x-waldur-operation-id: marketplace_service_providers_list - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve tags: - customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/daily-quotas/: get: operationId: daily_quotas_retrieve parameters: - in: query name: end schema: type: string format: date description: End date in format YYYY-MM-DD - in: query name: quota_names schema: type: array items: type: string description: List of quota names - in: query name: scope schema: type: string format: uuid description: UUID of the scope object - in: query name: start schema: type: string format: date description: Start date in format YYYY-MM-DD tags: - daily-quotas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: type: array items: type: integer description: '' /api/data-access-logs/: get: operationId: data_access_logs_list parameters: - in: query name: accessor_type schema: $ref: '#/components/schemas/AccessorTypeEnum' description: |+ Type of accessor - in: query name: accessor_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: end_date schema: type: string format: date - in: query name: o schema: type: array items: $ref: '#/components/schemas/GlobalUserDataAccessLogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string - in: query name: start_date schema: type: string format: date - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - data-access-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/GlobalUserDataAccessLog' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: data_access_logs_count parameters: - in: query name: accessor_type schema: $ref: '#/components/schemas/AccessorTypeEnum' description: |+ Type of accessor - in: query name: accessor_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: end_date schema: type: string format: date - in: query name: o schema: type: array items: $ref: '#/components/schemas/GlobalUserDataAccessLogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string - in: query name: start_date schema: type: string format: date - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - data-access-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/data-access-logs/{uuid}/: get: operationId: data_access_logs_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - data-access-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/GlobalUserDataAccessLog' description: '' delete: operationId: data_access_logs_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - data-access-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/database-stats/: get: operationId: database_stats_retrieve description: |- Retrieves comprehensive statistics about the PostgreSQL database including: - **Table statistics**: Top 10 largest tables by size - **Connection statistics**: Active, idle, and waiting connections with utilization - **Database size**: Total size, data size, and index size - **Cache performance**: Buffer cache and index hit ratios (should be >99%) - **Transaction statistics**: Commits, rollbacks, deadlocks - **Lock statistics**: Current locks and waiting queries - **Maintenance statistics**: Dead tuples, vacuum needs, oldest transaction age - **Active queries**: Currently running queries with duration - **Query performance**: Sequential vs index scan ratios - **Replication status**: WAL size and replication lag (if applicable) This information is useful for monitoring, debugging, and performance tuning. Requires support user permissions. summary: Get comprehensive database statistics tags: - database-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DatabaseStatsResponse' description: '' /api/debug/pubsub/circuit_breaker/: get: operationId: debug_pubsub_circuit_breaker_retrieve description: |- Get current STOMP circuit breaker state and statistics. Returns: - state: Current state (closed/open/half_open) - failure_count: Number of consecutive failures - success_count: Successes since last state change - last_failure_time: Timestamp of last failure - last_state_change: When state last changed - config: Circuit breaker configuration - state_history: Recent state transitions Requires staff permissions. summary: Get circuit breaker state tags: - debug security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CircuitBreakerStatus' description: '' /api/debug/pubsub/circuit_breaker_reset/: post: operationId: debug_pubsub_circuit_breaker_reset description: |- Manually reset the STOMP circuit breaker to CLOSED state. Use with caution - only when RabbitMQ is confirmed healthy. Requires staff permissions. summary: Reset circuit breaker tags: - debug security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CircuitBreakerReset' description: '' /api/debug/pubsub/dead_letter_queue/: get: operationId: debug_pubsub_dead_letter_queue_retrieve description: |- Get dead letter queue (DLQ) statistics. The DLQ receives messages that failed to be delivered to their original destination. This endpoint shows the current DLQ status. Note: DLQ is configured per-vhost. This endpoint checks all vhosts for queues with 'dlq' in the name. Requires staff permissions. summary: Get dead letter queue status tags: - debug security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DeadLetterQueue' description: '' '503': content: application/json: schema: $ref: '#/components/schemas/RmqStatsError' description: '' /api/debug/pubsub/message_state_cache/: get: operationId: debug_pubsub_message_state_cache_retrieve description: |- Get message state tracker cache statistics for idempotency. The message state tracker prevents duplicate message sends by caching the hash of message content. This endpoint provides cache statistics. Query params: - resource_uuid: Filter by specific resource - message_type: Filter by message type Requires staff permissions. summary: Get message state cache statistics tags: - debug security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MessageStateCache' description: '' /api/debug/pubsub/metrics/: get: operationId: debug_pubsub_metrics_retrieve description: |- Get message publishing metrics and statistics. Returns: - messages_sent: Total messages successfully sent - messages_failed: Total failed message attempts - messages_retried: Messages that required retry - messages_skipped: Messages skipped due to circuit breaker - circuit_breaker_trips: Number of times circuit opened - rate_limiter_rejections: Messages rejected by rate limiter - avg_publish_time_ms: Average publish latency - last_publish_time: Timestamp of last publish attempt Requires staff permissions. summary: Get publishing metrics tags: - debug security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublishingMetrics' description: '' /api/debug/pubsub/metrics_reset/: post: operationId: debug_pubsub_metrics_reset description: |- Reset all publishing metrics counters to zero. Requires staff permissions. summary: Reset publishing metrics tags: - debug security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MetricsReset' description: '' /api/debug/pubsub/overview/: get: operationId: debug_pubsub_overview_retrieve description: |- Dashboard overview of pubsub system health. Combines circuit breaker state, publishing metrics, and health indicators into a single response suitable for monitoring dashboards. Requires staff permissions. summary: Get pubsub system health overview tags: - debug security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PubsubOverview' description: '' /api/debug/pubsub/queues/: get: operationId: debug_pubsub_queues_retrieve description: |- Get overview of subscription queues from RabbitMQ. Returns summary of subscription queues across all vhosts including message counts and queue statistics. Note: For detailed queue management, use /api/rabbitmq-stats/ endpoint. Requires staff permissions. summary: Get subscription queues overview tags: - debug security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventSubscriptionQueuesOverview' description: '' '503': content: application/json: schema: $ref: '#/components/schemas/RmqStatsError' description: '' /api/digitalocean-droplets/: get: operationId: digitalocean_droplets_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string - in: query name: field schema: type: array items: $ref: '#/components/schemas/DigitalOceanDropletFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/DigitalOceanDroplet' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: digitalocean_droplets_create tags: - digitalocean-droplets requestBody: content: application/json: schema: $ref: '#/components/schemas/DigitalOceanDropletRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/DigitalOceanDroplet' description: '' head: operationId: digitalocean_droplets_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/digitalocean-droplets/{uuid}/: get: operationId: digitalocean_droplets_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/DigitalOceanDropletFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DigitalOceanDroplet' description: '' put: operationId: digitalocean_droplets_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets requestBody: content: application/json: schema: $ref: '#/components/schemas/DigitalOceanDropletRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DigitalOceanDroplet' description: '' patch: operationId: digitalocean_droplets_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedDigitalOceanDropletRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DigitalOceanDroplet' description: '' delete: operationId: digitalocean_droplets_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/digitalocean-droplets/{uuid}/pull/: post: operationId: digitalocean_droplets_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/digitalocean-droplets/{uuid}/resize/: post: operationId: digitalocean_droplets_resize description: |- To resize droplet, submit a POST request to the instance URL, specifying URI of a target size. Pass {'disk': true} along with target size in order to perform permanent resizing, which allows you to resize your disk space as well as CPU and RAM. After increasing the disk size, you will not be able to decrease it. Pass {'disk': false} along with target size in order to perform flexible resizing, which only upgrades your CPU and RAM. This option is reversible. Note that instance must be OFFLINE. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets requestBody: content: application/json: schema: $ref: '#/components/schemas/DigitalOceanDropletResizeRequest' examples: Digitalocean-droplet-resize: value: size: http://example.com/api/digitalocean-sizes/1ee385bc043249498cfeb8c7e3e079f0/ summary: digitalocean-droplet-resize required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DigitalOceanDropletResize' description: '' /api/digitalocean-droplets/{uuid}/restart/: post: operationId: digitalocean_droplets_restart parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/digitalocean-droplets/{uuid}/set_erred/: post: operationId: digitalocean_droplets_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/digitalocean-droplets/{uuid}/set_ok/: post: operationId: digitalocean_droplets_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/digitalocean-droplets/{uuid}/start/: post: operationId: digitalocean_droplets_start parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/digitalocean-droplets/{uuid}/stop/: post: operationId: digitalocean_droplets_stop parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/digitalocean-droplets/{uuid}/unlink/: post: operationId: digitalocean_droplets_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-droplets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/digitalocean-images/: get: operationId: digitalocean_images_list parameters: - in: query name: distribution schema: type: string - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/DigitalOceanImageOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: type schema: type: string tags: - digitalocean-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/DigitalOceanImage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: digitalocean_images_count parameters: - in: query name: distribution schema: type: string - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/DigitalOceanImageOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: type schema: type: string tags: - digitalocean-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/digitalocean-images/{uuid}/: get: operationId: digitalocean_images_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DigitalOceanImage' description: '' /api/digitalocean-regions/: get: operationId: digitalocean_regions_list parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - digitalocean-regions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/DigitalOceanRegion' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: digitalocean_regions_count parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - digitalocean-regions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/digitalocean-regions/{uuid}/: get: operationId: digitalocean_regions_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-regions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DigitalOceanRegion' description: '' /api/digitalocean-sizes/: get: operationId: digitalocean_sizes_list parameters: - in: query name: cores schema: type: integer - in: query name: disk schema: type: integer - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: ram schema: type: integer tags: - digitalocean-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/DigitalOceanSize' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: digitalocean_sizes_count parameters: - in: query name: cores schema: type: integer - in: query name: disk schema: type: integer - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: ram schema: type: integer tags: - digitalocean-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/digitalocean-sizes/{uuid}/: get: operationId: digitalocean_sizes_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - digitalocean-sizes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DigitalOceanSize' description: '' /api/email-logs/: get: operationId: email_logs_list parameters: - in: query name: body schema: type: string - in: query name: emails schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/EmailLogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: sent_at schema: type: string format: date - in: query name: subject schema: type: string tags: - email-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/EmailLog' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: email_logs_count parameters: - in: query name: body schema: type: string - in: query name: emails schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/EmailLogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: sent_at schema: type: string format: date - in: query name: subject schema: type: string tags: - email-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/email-logs/{uuid}/: get: operationId: email_logs_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - email-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EmailLog' description: '' /api/event-subscription-queues/: get: operationId: event_subscription_queues_list parameters: - in: query name: event_subscription_uuid schema: type: string format: uuid x-waldur-operation-id: event_subscriptions_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - in: query name: object_type schema: type: string - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - event-subscription-queues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/EventSubscriptionQueue' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: event_subscription_queues_count parameters: - in: query name: event_subscription_uuid schema: type: string format: uuid x-waldur-operation-id: event_subscriptions_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - in: query name: object_type schema: type: string - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - event-subscription-queues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/event-subscription-queues/{uuid}/: get: operationId: event_subscription_queues_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - event-subscription-queues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventSubscriptionQueue' description: '' delete: operationId: event_subscription_queues_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - event-subscription-queues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/event-subscriptions/: get: operationId: event_subscriptions_list parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_username schema: type: string - in: query name: user_uuid schema: type: string tags: - event-subscriptions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/EventSubscription' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: event_subscriptions_create tags: - event-subscriptions requestBody: content: application/json: schema: $ref: '#/components/schemas/EventSubscriptionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/EventSubscription' description: '' head: operationId: event_subscriptions_count parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_username schema: type: string - in: query name: user_uuid schema: type: string tags: - event-subscriptions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/event-subscriptions/{uuid}/: get: operationId: event_subscriptions_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - event-subscriptions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventSubscription' description: '' delete: operationId: event_subscriptions_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - event-subscriptions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/event-subscriptions/{uuid}/create_queue/: post: operationId: event_subscriptions_create_queue description: Create a RabbitMQ queue for receiving events for a specific offering and object type. The receiver must call this endpoint before subscribing via STOMP to ensure the queue is created with correct arguments (DLX, max-length, etc.). parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - event-subscriptions requestBody: content: application/json: schema: $ref: '#/components/schemas/EventSubscriptionQueueCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventSubscriptionQueue' description: '' '201': content: application/json: schema: $ref: '#/components/schemas/EventSubscriptionQueue' description: '' /api/events/: get: operationId: events_list parameters: - in: query name: created_from schema: type: number - in: query name: created_to schema: type: number - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: event_type schema: type: array items: type: string description: Filter by event type. Can be specified multiple times. - in: query name: feature schema: type: array items: type: string description: Filter by feature (event group). Can be specified multiple times. - in: query name: field schema: type: array items: $ref: '#/components/schemas/EventFieldEnum' - in: query name: message schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope schema: type: string format: uri description: Filter by scope URL. - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Event' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: events_count parameters: - in: query name: created_from schema: type: number - in: query name: created_to schema: type: number - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: event_type schema: type: array items: type: string description: Filter by event type. Can be specified multiple times. - in: query name: feature schema: type: array items: type: string description: Filter by feature (event group). Can be specified multiple times. - in: query name: message schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope schema: type: string format: uri description: Filter by scope URL. - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/events-stats/: get: operationId: events_stats_list parameters: - in: query name: event_type schema: type: array items: type: string description: Filter by event type. Can be specified multiple times. - in: query name: feature schema: type: array items: type: string description: Filter by feature (event group). Can be specified multiple times. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri description: Filter by scope URL. tags: - events-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/EventStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: events_stats_count parameters: - in: query name: event_type schema: type: array items: type: string description: Filter by event type. Can be specified multiple times. - in: query name: feature schema: type: array items: type: string description: Filter by feature (event group). Can be specified multiple times. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri description: Filter by scope URL. tags: - events-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/events/{id}/: get: operationId: events_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/EventFieldEnum' - in: path name: id schema: type: integer description: A unique integer value identifying this event. required: true tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Event' description: '' /api/events/count/: get: operationId: events_count_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/EventFieldEnum' tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Event' examples: ValidExample: value: count: 12321 summary: Valid example description: '' head: operationId: events_count_count tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/events/event_groups/: get: operationId: events_event_groups_retrieve description: |- Returns a list of groups with event types. Group is used in exclude_features query param. parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/EventFieldEnum' tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Event' description: '' head: operationId: events_event_groups_count description: Get number of items in the collection matching the request parameters. tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/events/scope_types/: get: operationId: events_scope_types_retrieve description: Returns a list of scope types acceptable by events filter. parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/EventFieldEnum' tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Event' description: '' head: operationId: events_scope_types_count description: Get number of items in the collection matching the request parameters. tags: - events security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/expertise-categories/: get: operationId: expertise_categories_list parameters: - in: query name: code schema: type: string - in: query name: level schema: type: integer - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ExpertiseCategoryOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid x-waldur-operation-id: expertise_categories_retrieve tags: - expertise-categories security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ExpertiseCategory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: expertise_categories_count parameters: - in: query name: code schema: type: string - in: query name: level schema: type: integer - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ExpertiseCategoryOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid x-waldur-operation-id: expertise_categories_retrieve tags: - expertise-categories security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/expertise-categories/{uuid}/: get: operationId: expertise_categories_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - expertise-categories security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExpertiseCategory' description: '' /api/external-links/: get: operationId: external_links_list description: Retrieve a list of external links available in the system. summary: List external links parameters: - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, link or description tags: - external-links security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ExternalLink' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: external_links_create description: Create a new external link. This action is restricted to staff users. summary: Create an external link tags: - external-links requestBody: content: application/json: schema: $ref: '#/components/schemas/ExternalLinkRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ExternalLinkRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ExternalLinkRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ExternalLink' description: '' head: operationId: external_links_count description: Get number of items in the collection matching the request parameters. summary: List external links parameters: - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, link or description tags: - external-links security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/external-links/{uuid}/: get: operationId: external_links_retrieve description: Fetch the details of a specific external link by its UUID. summary: Retrieve external link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - external-links security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExternalLink' description: '' put: operationId: external_links_update description: Update an existing external link. This action is restricted to staff users. summary: Update an external link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - external-links requestBody: content: application/json: schema: $ref: '#/components/schemas/ExternalLinkRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ExternalLinkRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ExternalLinkRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExternalLink' description: '' patch: operationId: external_links_partial_update description: Partially update an existing external link. This action is restricted to staff users. summary: Partially update an external link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - external-links requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedExternalLinkRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedExternalLinkRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedExternalLinkRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExternalLink' description: '' delete: operationId: external_links_destroy description: Delete an existing external link. This action is restricted to staff users. summary: Delete an external link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - external-links security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/feature-values/: post: operationId: feature_values description: Allows administrators to enable or disable specific feature flags in the system. The request should be a dictionary where keys are feature sections and values are dictionaries of feature keys and their boolean state. summary: Update feature flags tags: - feature-values requestBody: content: application/json: schema: type: object additionalProperties: {} examples: UpdateUserAndMarketplaceFeatures: value: user: ssh_keys: true marketplace: conceal_prices: true summary: Example of enabling SSH keys for users and concealing prices in the marketplace. required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: string examples: SuccessfulResponse: value: 2 features are updated. summary: Example response after updating two features. description: '' /api/financial-reports/: get: operationId: financial_reports_list parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: customer_uuid schema: type: string format: uuid description: Filter by customer UUID. x-waldur-operation-id: customers_list - in: query name: month schema: type: integer description: Filter by month. - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: query name: year schema: type: integer description: Filter by year. tags: - financial-reports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/FinancialReport' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: financial_reports_count parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: customer_uuid schema: type: string format: uuid description: Filter by customer UUID. x-waldur-operation-id: customers_list - in: query name: month schema: type: integer description: Filter by month. - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: query name: year schema: type: integer description: Filter by year. tags: - financial-reports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/financial-reports/{uuid}/: get: operationId: financial_reports_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - financial-reports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FinancialReport' description: '' /api/freeipa-profiles/: get: operationId: freeipa_profiles_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by username, user UUID, first name or last name - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - freeipa-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/FreeipaProfile' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: freeipa_profiles_create tags: - freeipa-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/FreeipaProfileRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/FreeipaProfile' description: '' head: operationId: freeipa_profiles_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by username, user UUID, first name or last name - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - freeipa-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/freeipa-profiles/{uuid}/: get: operationId: freeipa_profiles_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - freeipa-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FreeipaProfile' description: '' put: operationId: freeipa_profiles_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - freeipa-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/FreeipaProfileRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FreeipaProfile' description: '' patch: operationId: freeipa_profiles_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - freeipa-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FreeipaProfile' description: '' /api/freeipa-profiles/{uuid}/update_ssh_keys/: post: operationId: freeipa_profiles_update_ssh_keys description: Update SSH keys for profile. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - freeipa-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/google-auth/: get: operationId: google_auth_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/GoogleCredentialsFieldEnum' - in: query name: has_credentials schema: type: boolean description: has_credentials - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - google-auth security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/GoogleCredentials' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: google_auth_count parameters: - in: query name: has_credentials schema: type: boolean description: has_credentials - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - google-auth security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/google-auth/{uuid}/: get: operationId: google_auth_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/GoogleCredentialsFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - google-auth security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/GoogleCredentials' description: '' /api/google-auth/{uuid}/authorize/: get: operationId: google_auth_authorize_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/GoogleCredentialsFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - google-auth security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/GoogleCredentials' description: '' /api/google-auth/callback/: get: operationId: google_auth_callback_retrieve description: Callback endpoint for Google authorization. parameters: - in: query name: code schema: type: string description: Authorization code required: true - in: query name: state schema: type: string description: Service provider UUID required: true tags: - google-auth security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body head: operationId: google_auth_callback_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: code schema: type: string description: Authorization code required: true - in: query name: state schema: type: string description: Service provider UUID required: true tags: - google-auth security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/hooks/: get: operationId: hooks_list parameters: - in: query name: author_uuid schema: type: string format: uuid description: Filter by author UUID. x-waldur-operation-id: users_retrieve - in: query name: is_active schema: type: boolean description: Filter by active status. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - hooks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body head: operationId: hooks_count parameters: - in: query name: author_uuid schema: type: string format: uuid description: Filter by author UUID. x-waldur-operation-id: users_retrieve - in: query name: is_active schema: type: boolean description: Filter by active status. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - hooks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/hooks-email/: get: operationId: hooks_email_list parameters: - in: query name: author_email schema: type: string - in: query name: author_fullname schema: type: string description: User full name contains - in: query name: author_username schema: type: string - in: query name: author_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: email schema: type: string - in: query name: is_active schema: type: boolean - in: query name: last_published schema: type: string format: date-time - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by author name, username and email tags: - hooks-email security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/EmailHook' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: hooks_email_create tags: - hooks-email requestBody: content: application/json: schema: $ref: '#/components/schemas/EmailHookRequest' examples: Email-hook-create: value: event_types: - openstack_instance_start_succeeded event_groups: - users email: test@example.com summary: email-hook-create description: You should specify list of event_types or event_groups. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/EmailHook' description: '' head: operationId: hooks_email_count parameters: - in: query name: author_email schema: type: string - in: query name: author_fullname schema: type: string description: User full name contains - in: query name: author_username schema: type: string - in: query name: author_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: email schema: type: string - in: query name: is_active schema: type: boolean - in: query name: last_published schema: type: string format: date-time - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by author name, username and email tags: - hooks-email security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/hooks-email/{uuid}/: get: operationId: hooks_email_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - hooks-email security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EmailHook' description: '' put: operationId: hooks_email_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - hooks-email requestBody: content: application/json: schema: $ref: '#/components/schemas/EmailHookRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EmailHook' description: '' patch: operationId: hooks_email_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - hooks-email requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedEmailHookRequest' examples: Email-hook-update: value: is_active: 'false' summary: email-hook-update description: temporarily disable hook without deleting it. required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EmailHook' description: '' delete: operationId: hooks_email_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - hooks-email security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/hooks-web/: get: operationId: hooks_web_list parameters: - in: query name: author_email schema: type: string - in: query name: author_fullname schema: type: string description: User full name contains - in: query name: author_username schema: type: string - in: query name: author_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: content_type schema: $ref: '#/components/schemas/WebHookContentTypeEnum1' - in: query name: destination_url schema: type: string - in: query name: is_active schema: type: boolean - in: query name: last_published schema: type: string format: date-time - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by author name, username and email tags: - hooks-web security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/WebHook' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: hooks_web_create description: |- When hook is activated, POST request is issued against destination URL with the following data: .. code-block:: javascript { "timestamp": "2015-07-14T12:12:56.000000", "message": "Customer ABC LLC has been updated.", "type": "customer_update_succeeded", "context": { "user_native_name": "Walter Lebrowski", "customer_contact_details": "", "user_username": "Walter", "user_uuid": "1c3323fc4ae44120b57ec40dea1be6e6", "customer_uuid": "4633bbbb0b3a4b91bffc0e18f853de85", "ip_address": "8.8.8.8", "user_full_name": "Walter Lebrowski", "customer_abbreviation": "ABC LLC", "customer_name": "ABC LLC" }, "levelname": "INFO" } Note that context depends on event type. tags: - hooks-web requestBody: content: application/json: schema: $ref: '#/components/schemas/WebHookRequest' examples: Webhook-create: value: event_types: - customer_update_succeeded event_groups: - users destination_url: http://example.com/ summary: webhook-create description: You should specify list of event_types or event_groups. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/WebHook' description: '' head: operationId: hooks_web_count parameters: - in: query name: author_email schema: type: string - in: query name: author_fullname schema: type: string description: User full name contains - in: query name: author_username schema: type: string - in: query name: author_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: content_type schema: $ref: '#/components/schemas/WebHookContentTypeEnum1' - in: query name: destination_url schema: type: string - in: query name: is_active schema: type: boolean - in: query name: last_published schema: type: string format: date-time - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by author name, username and email tags: - hooks-web security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/hooks-web/{uuid}/: get: operationId: hooks_web_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - hooks-web security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebHook' description: '' put: operationId: hooks_web_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - hooks-web requestBody: content: application/json: schema: $ref: '#/components/schemas/WebHookRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebHook' description: '' patch: operationId: hooks_web_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - hooks-web requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedWebHookRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebHook' description: '' delete: operationId: hooks_web_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - hooks-web security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/identity-bridge/: post: operationId: identity_bridge description: Allows Identity Service Domains (ISDs) to push user attributes to Waldur. Creates or updates a user based on username (CUID). Requires FEDERATED_IDENTITY_SYNC_ENABLED to be True. Caller must be staff or an identity manager with the declared source in managed_isds. summary: Push user attributes from an ISD tags: - identity-bridge requestBody: content: application/json: schema: $ref: '#/components/schemas/IdentityBridgeRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IdentityBridgeResult' description: '' /api/identity-bridge/remove/: post: operationId: identity_bridge_remove description: Signals that a user has been removed from an ISD. Removes the source from active_isds, clears attributes owned by that source, and deactivates the user if no ISDs remain (configurable via FEDERATED_IDENTITY_DEACTIVATION_POLICY). Requires FEDERATED_IDENTITY_SYNC_ENABLED to be True. Caller must be staff or an identity manager with the declared source in managed_isds. summary: Remove a user from an ISD tags: - identity-bridge requestBody: content: application/json: schema: $ref: '#/components/schemas/IdentityBridgeRemoveRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IdentityBridgeRemoveResult' description: '' /api/identity-bridge/stats/: get: operationId: identity_bridge_stats_retrieve description: 'Returns system-wide statistics about the Identity Bridge: feature configuration, per-ISD user counts, stale attribute detection, and total federated user counts. Staff only.' summary: Get Identity Bridge statistics tags: - identity-bridge security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IdentityBridgeStats' description: '' /api/identity-providers/: get: operationId: identity_providers_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - identity-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/IdentityProvider' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: identity_providers_create tags: - identity-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/IdentityProviderRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/IdentityProvider' description: '' head: operationId: identity_providers_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - identity-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/identity-providers/{provider}/: get: operationId: identity_providers_retrieve parameters: - in: path name: provider schema: type: string required: true tags: - identity-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IdentityProvider' description: '' put: operationId: identity_providers_update parameters: - in: path name: provider schema: type: string required: true tags: - identity-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/IdentityProviderRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IdentityProvider' description: '' patch: operationId: identity_providers_partial_update parameters: - in: path name: provider schema: type: string required: true tags: - identity-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedIdentityProviderRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IdentityProvider' description: '' delete: operationId: identity_providers_destroy parameters: - in: path name: provider schema: type: string required: true tags: - identity-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/identity-providers/discover_metadata/: post: operationId: identity_providers_discover_metadata description: Fetches OIDC discovery metadata from the provider and returns supported claims, scopes, and suggested mappings to Waldur User fields. Use this to configure attribute_mapping when setting up a new identity provider. summary: Discover OIDC provider metadata tags: - identity-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverMetadataRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DiscoverMetadataResponse' description: '' /api/identity-providers/generate-mapping/: post: operationId: identity_providers_generate_mapping description: Generates a suggested attribute_mapping configuration based on the claims supported by an OIDC provider. This can be used as a starting point when creating a new identity provider. summary: Generate default attribute mapping tags: - identity-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverMetadataRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: attribute_mapping: type: object additionalProperties: type: string description: Suggested mapping of Waldur fields to OIDC claims extra_scope: type: string description: Suggested scopes to request (space-separated) description: '' /api/invoice-items/: get: operationId: invoice_items_list parameters: - in: query name: credit_uuid schema: type: string format: uuid x-waldur-operation-id: customer_credits_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: month schema: type: integer - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: start_month schema: type: number description: Start month - in: query name: start_year schema: type: number description: Start year - in: query name: year schema: type: integer tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/InvoiceItemDetail' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: invoice_items_count parameters: - in: query name: credit_uuid schema: type: string format: uuid x-waldur-operation-id: customer_credits_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: month schema: type: integer - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: start_month schema: type: number description: Start month - in: query name: start_year schema: type: number description: Start year - in: query name: year schema: type: integer tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/invoice-items/{uuid}/: get: operationId: invoice_items_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItemDetail' description: '' put: operationId: invoice_items_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoice-items requestBody: content: application/json: schema: $ref: '#/components/schemas/InvoiceItemUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItemUpdate' description: '' patch: operationId: invoice_items_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoice-items requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedInvoiceItemUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItemUpdate' description: '' delete: operationId: invoice_items_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/invoice-items/{uuid}/consumptions/: get: operationId: invoice_items_consumptions_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItemDetail' description: '' /api/invoice-items/{uuid}/create_compensation/: post: operationId: invoice_items_create_compensation description: Create compensation invoice item for selected invoice item. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoice-items requestBody: content: application/json: schema: $ref: '#/components/schemas/InvoiceItemCompensationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItemCompensation' description: '' /api/invoice-items/{uuid}/migrate_to/: post: operationId: invoice_items_migrate_to description: Move invoice item from one invoice to another one. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoice-items requestBody: content: application/json: schema: $ref: '#/components/schemas/InvoiceItemMigrateToRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItemMigrateTo' description: '' /api/invoice-items/costs/: get: operationId: invoice_items_costs_list description: Get costs breakdown for a project by year and month. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: UUID of the project for which statistics should be calculated. x-waldur-operation-id: projects_retrieve tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/InvoiceCost' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: invoice_items_costs_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: UUID of the project for which statistics should be calculated. x-waldur-operation-id: projects_retrieve tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoice-items/customer_costs_for_period/: get: operationId: invoice_items_customer_costs_for_period_retrieve parameters: - in: query name: customer_uuid schema: type: string format: uuid description: UUID of the project for which statistics should be calculated. x-waldur-operation-id: customers_retrieve - in: query name: period schema: type: integer description: Period for which statistics should be calculated. tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CostsForPeriod' description: '' head: operationId: invoice_items_customer_costs_for_period_count parameters: - in: query name: customer_uuid schema: type: string format: uuid description: UUID of the project for which statistics should be calculated. x-waldur-operation-id: customers_retrieve - in: query name: period schema: type: integer description: Period for which statistics should be calculated. tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/invoice-items/project_costs_for_period/: get: operationId: invoice_items_project_costs_for_period_retrieve description: Get resource cost breakdown for a project over a specified period. parameters: - in: query name: period schema: type: integer description: Period for which statistics should be calculated (1, 3 or 12 months). - in: query name: project_uuid schema: type: string format: uuid description: UUID of the project for which statistics should be calculated. x-waldur-operation-id: projects_retrieve tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CostsForPeriod' description: '' head: operationId: invoice_items_project_costs_for_period_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: period schema: type: integer description: Period for which statistics should be calculated (1, 3 or 12 months). - in: query name: project_uuid schema: type: string format: uuid description: UUID of the project for which statistics should be calculated. x-waldur-operation-id: projects_retrieve tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoice-items/total_price/: get: operationId: invoice_items_total_price_retrieve description: Calculate total price for filtered invoice items. parameters: - in: query name: credit_uuid schema: type: string format: uuid x-waldur-operation-id: customer_credits_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: month schema: type: integer - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: start_month schema: type: number description: Start month - in: query name: start_year schema: type: number description: Start year - in: query name: year schema: type: integer tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItemTotalPrice' description: '' head: operationId: invoice_items_total_price_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: credit_uuid schema: type: string format: uuid x-waldur-operation-id: customer_credits_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: month schema: type: integer - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: start_month schema: type: number description: Start month - in: query name: start_year schema: type: number description: Start year - in: query name: year schema: type: integer tags: - invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoice/send-financial-report-by-mail/: post: operationId: invoice_send_financial_report_by_mail tags: - invoice requestBody: content: application/json: schema: $ref: '#/components/schemas/FinancialReportEmailRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoices/: get: operationId: invoices_list parameters: - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: created schema: type: string format: date - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: end_date schema: type: string format: date - in: query name: field schema: type: array items: $ref: '#/components/schemas/InvoiceFieldEnum' - in: query name: month schema: type: integer - in: query name: o schema: type: array items: $ref: '#/components/schemas/InvoiceOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: start_date schema: type: string format: date - in: query name: state schema: type: array items: $ref: '#/components/schemas/InvoiceStateEnum' explode: true style: form - in: query name: year schema: type: integer tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Invoice' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: invoices_count parameters: - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: created schema: type: string format: date - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: end_date schema: type: string format: date - in: query name: month schema: type: integer - in: query name: o schema: type: array items: $ref: '#/components/schemas/InvoiceOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: start_date schema: type: string format: date - in: query name: state schema: type: array items: $ref: '#/components/schemas/InvoiceStateEnum' explode: true style: form - in: query name: year schema: type: integer tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/invoices/{uuid}/: get: operationId: invoices_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/InvoiceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Invoice' description: '' /api/invoices/{uuid}/history/: get: operationId: invoices_history_list description: Returns the version history for this object. Only accessible by staff and support users. summary: Get version history parameters: - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: created schema: type: string format: date - in: query name: created_after schema: type: string description: Filter versions created after this timestamp (ISO 8601) - in: query name: created_before schema: type: string description: Filter versions created before this timestamp (ISO 8601) - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: end_date schema: type: string format: date - in: query name: month schema: type: integer - in: query name: o schema: type: array items: $ref: '#/components/schemas/InvoiceOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: start_date schema: type: string format: date - in: query name: state schema: type: array items: $ref: '#/components/schemas/InvoiceStateEnum' explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true - in: query name: year schema: type: integer tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/invoices/{uuid}/history/at/: get: operationId: invoices_history_at_retrieve description: Returns the state of the object as it was at the specified timestamp. Only accessible by staff and support users. summary: Get object state at a specific timestamp parameters: - in: query name: timestamp schema: type: string description: ISO 8601 timestamp to query the object state at required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VersionHistory' description: '' '400': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: type: object additionalProperties: {} description: '' /api/invoices/{uuid}/items/: get: operationId: invoices_items_retrieve description: Retrieve a list of invoice items for the specified invoice. summary: Get invoice items parameters: - in: query name: conceal_compensation_items schema: type: boolean description: Conceal compensation items - in: query name: o schema: $ref: '#/components/schemas/InvoiceItemOEnum' description: Order results by field - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_public_offerings_list - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: query schema: type: string - in: path name: uuid schema: type: string format: uuid required: true tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItem' description: '' /api/invoices/{uuid}/paid/: post: operationId: invoices_paid description: Mark invoice as paid and optionally create payment record with proof of payment. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoices requestBody: content: application/json: schema: $ref: '#/components/schemas/PaidRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PaidRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PaidRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Invoice' description: '' /api/invoices/{uuid}/send_notification/: post: operationId: invoices_send_notification description: Schedule sending of a notification for the specified invoice. summary: Send invoice notification parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoices/{uuid}/set_backend_id/: post: operationId: invoices_set_backend_id description: Set backend ID for invoice. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoices requestBody: content: application/json: schema: $ref: '#/components/schemas/BackendIdRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoices/{uuid}/set_payment_url/: post: operationId: invoices_set_payment_url description: Set payment URL for invoice. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoices requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentURLRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoices/{uuid}/set_reference_number/: post: operationId: invoices_set_reference_number description: Set reference number for invoice. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - invoices requestBody: content: application/json: schema: $ref: '#/components/schemas/ReferenceNumberRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoices/{uuid}/stats/: get: operationId: invoices_stats_list description: Spendings grouped by offerings and filtered by provider. parameters: - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: created schema: type: string format: date - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: end_date schema: type: string format: date - in: query name: month schema: type: integer - in: query name: o schema: type: array items: $ref: '#/components/schemas/InvoiceOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: start_date schema: type: string format: date - in: query name: state schema: type: array items: $ref: '#/components/schemas/InvoiceStateEnum' explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true - in: query name: year schema: type: integer tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/InvoiceStatsOffering' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/invoices/growth/: get: operationId: invoices_growth_retrieve description: Analyze invoice trends over time by comparing monthly totals for major customers versus others over the past year. parameters: - in: query name: accounting_is_running schema: type: boolean - in: query name: accounting_mode schema: type: string - in: query name: customers_count schema: type: integer tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceGrowth' description: '' head: operationId: invoices_growth_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: accounting_is_running schema: type: boolean - in: query name: accounting_mode schema: type: string - in: query name: customers_count schema: type: integer tags: - invoices security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/invoices/import_usage/: post: operationId: invoices_import_usage description: Import component usage items as JSON data for multiple customers. Creates invoice items for the specified billing period. Items are deduplicated by name, customer, and billing period to prevent duplicates. summary: Import usage data tags: - invoices requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportUsageRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ImportUsageResponse' description: '' /api/keycloak-groups/: get: operationId: keycloak_groups_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string - in: query name: scope_type schema: type: string - in: query name: scope_uuid schema: type: string format: uuid tags: - keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/KeycloakGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: keycloak_groups_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string - in: query name: scope_type schema: type: string - in: query name: scope_uuid schema: type: string format: uuid tags: - keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/keycloak-groups/{uuid}/: get: operationId: keycloak_groups_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/KeycloakGroup' description: '' /api/keycloak-user-group-memberships/: get: operationId: keycloak_user_group_memberships_list parameters: - in: query name: email schema: type: string - in: query name: first_name schema: type: string - in: query name: group_uuid schema: type: string format: uuid x-waldur-operation-id: keycloak_groups_retrieve - in: query name: last_name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_role_templates_retrieve - in: query name: scope_type schema: type: string - in: query name: scope_uuid schema: type: string format: uuid - in: query name: state schema: type: array items: $ref: '#/components/schemas/KeycloakUserGroupMembershipState' explode: true style: form - in: query name: username schema: type: string tags: - keycloak-user-group-memberships security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/KeycloakUserGroupMembership' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: keycloak_user_group_memberships_create tags: - keycloak-user-group-memberships requestBody: content: application/json: schema: $ref: '#/components/schemas/KeycloakUserGroupMembershipRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/KeycloakUserGroupMembership' description: '' head: operationId: keycloak_user_group_memberships_count parameters: - in: query name: email schema: type: string - in: query name: first_name schema: type: string - in: query name: group_uuid schema: type: string format: uuid x-waldur-operation-id: keycloak_groups_retrieve - in: query name: last_name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_role_templates_retrieve - in: query name: scope_type schema: type: string - in: query name: scope_uuid schema: type: string format: uuid - in: query name: state schema: type: array items: $ref: '#/components/schemas/KeycloakUserGroupMembershipState' explode: true style: form - in: query name: username schema: type: string tags: - keycloak-user-group-memberships security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/keycloak-user-group-memberships/{uuid}/: get: operationId: keycloak_user_group_memberships_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - keycloak-user-group-memberships security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/KeycloakUserGroupMembership' description: '' put: operationId: keycloak_user_group_memberships_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - keycloak-user-group-memberships requestBody: content: application/json: schema: $ref: '#/components/schemas/KeycloakUserGroupMembershipRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/KeycloakUserGroupMembership' description: '' patch: operationId: keycloak_user_group_memberships_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - keycloak-user-group-memberships requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedKeycloakUserGroupMembershipRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/KeycloakUserGroupMembership' description: '' delete: operationId: keycloak_user_group_memberships_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - keycloak-user-group-memberships security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/keys/: get: operationId: keys_list parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: field schema: type: array items: $ref: '#/components/schemas/SshKeyFieldEnum' - in: query name: fingerprint_md5 schema: type: string - in: query name: fingerprint_sha256 schema: type: string - in: query name: fingerprint_sha512 schema: type: string - in: query name: is_shared schema: type: boolean - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/SshKeyOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - keys security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SshKey' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: keys_create tags: - keys requestBody: content: application/json: schema: $ref: '#/components/schemas/SshKeyRequest' examples: Ssh-key-create: value: name: ssh_public_key1 public_key: ssh-rsa ... jhon@example.com summary: ssh-key-create required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SshKey' description: '' head: operationId: keys_count parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: fingerprint_md5 schema: type: string - in: query name: fingerprint_sha256 schema: type: string - in: query name: fingerprint_sha512 schema: type: string - in: query name: is_shared schema: type: boolean - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/SshKeyOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - keys security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/keys/{uuid}/: get: operationId: keys_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/SshKeyFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - keys security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SshKey' description: '' delete: operationId: keys_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - keys security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/keys/{uuid}/history/: get: operationId: keys_history_list description: Returns the version history for this object. Only accessible by staff and support users. summary: Get version history parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: created_after schema: type: string description: Filter versions created after this timestamp (ISO 8601) - in: query name: created_before schema: type: string description: Filter versions created before this timestamp (ISO 8601) - in: query name: fingerprint_md5 schema: type: string - in: query name: fingerprint_sha256 schema: type: string - in: query name: fingerprint_sha512 schema: type: string - in: query name: is_shared schema: type: boolean - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/SshKeyOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid schema: type: string format: uuid description: UUID tags: - keys security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/keys/{uuid}/history/at/: get: operationId: keys_history_at_retrieve description: Returns the state of the object as it was at the specified timestamp. Only accessible by staff and support users. summary: Get object state at a specific timestamp parameters: - in: query name: timestamp schema: type: string description: ISO 8601 timestamp to query the object state at required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - keys security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VersionHistory' description: '' '400': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: type: object additionalProperties: {} description: '' /api/lexis-links/: get: operationId: lexis_links_list parameters: - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by robot account username or type - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: uuid schema: type: string format: uuid tags: - lexis-links security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/LexisLink' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: lexis_links_create tags: - lexis-links requestBody: content: application/json: schema: $ref: '#/components/schemas/LexisLinkCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body head: operationId: lexis_links_count parameters: - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by robot account username or type - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: uuid schema: type: string format: uuid tags: - lexis-links security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/lexis-links/{uuid}/: get: operationId: lexis_links_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - lexis-links security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/LexisLink' description: '' put: operationId: lexis_links_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - lexis-links requestBody: content: application/json: schema: $ref: '#/components/schemas/LexisLinkRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/LexisLink' description: '' patch: operationId: lexis_links_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - lexis-links requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedLexisLinkRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/LexisLink' description: '' delete: operationId: lexis_links_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - lexis-links security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: LEXIS_LINK.DELETE scopes: - '*' - robot_account.resource.offering.customer /api/maintenance-announcement-offerings/: get: operationId: maintenance_announcement_offerings_list description: Returns a paginated list of offerings affected by maintenance announcements. summary: List affected offerings for maintenance parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - maintenance-announcement-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOffering' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: maintenance_announcement_offerings_create description: Creates a new association between an offering and a maintenance announcement, specifying the expected impact. summary: Link an offering to a maintenance announcement tags: - maintenance-announcement-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOffering' description: '' head: operationId: maintenance_announcement_offerings_count description: Get number of items in the collection matching the request parameters. summary: List affected offerings for maintenance parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - maintenance-announcement-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/maintenance-announcement-offerings/{uuid}/: get: operationId: maintenance_announcement_offerings_retrieve description: Returns the details of a specific link between a maintenance announcement and an offering, including the impact level and description. summary: Retrieve an affected offering link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcement-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOffering' description: '' put: operationId: maintenance_announcement_offerings_update description: Updates the impact level or description for an offering linked to a maintenance announcement. summary: Update an affected offering link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcement-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOffering' description: '' patch: operationId: maintenance_announcement_offerings_partial_update description: Partially updates the impact level or description for an offering linked to a maintenance announcement. summary: Partially update an affected offering link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcement-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMaintenanceAnnouncementOfferingRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOffering' description: '' delete: operationId: maintenance_announcement_offerings_destroy description: Removes the association between an offering and a maintenance announcement. summary: Unlink an offering from a maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcement-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/maintenance-announcement-template-offerings/: get: operationId: maintenance_announcement_template_offerings_list description: Returns a paginated list of associations between maintenance announcement templates and offerings. summary: List affected offering templates parameters: - in: query name: impact_level schema: type: integer description: Impact level - in: query name: maintenance_template_uuid schema: type: string format: uuid description: Maintenance template UUID x-waldur-operation-id: maintenance_announcements_template_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: service_provider_uuid schema: type: string format: uuid description: Service provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve tags: - maintenance-announcement-template-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: maintenance_announcement_template_offerings_create description: Creates a reusable association between an offering and a maintenance announcement template, specifying a default impact level and description. summary: Link an offering to a maintenance template tags: - maintenance-announcement-template-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingTemplate' description: '' head: operationId: maintenance_announcement_template_offerings_count description: Get number of items in the collection matching the request parameters. summary: List affected offering templates parameters: - in: query name: impact_level schema: type: integer description: Impact level - in: query name: maintenance_template_uuid schema: type: string format: uuid description: Maintenance template UUID x-waldur-operation-id: maintenance_announcements_template_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: service_provider_uuid schema: type: string format: uuid description: Service provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve tags: - maintenance-announcement-template-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/maintenance-announcement-template-offerings/{uuid}/: get: operationId: maintenance_announcement_template_offerings_retrieve description: Returns the details of a specific link between a maintenance announcement template and an offering. summary: Retrieve an affected offering template link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcement-template-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingTemplate' description: '' put: operationId: maintenance_announcement_template_offerings_update description: Updates the default impact level or description for an offering linked to a maintenance template. summary: Update an affected offering template link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcement-template-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingTemplate' description: '' patch: operationId: maintenance_announcement_template_offerings_partial_update description: Partially updates the default impact level or description for an offering linked to a maintenance template. summary: Partially update an affected offering template link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcement-template-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMaintenanceAnnouncementOfferingTemplateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementOfferingTemplate' description: '' delete: operationId: maintenance_announcement_template_offerings_destroy description: Removes the association between an offering and a maintenance announcement template. summary: Unlink an offering from a maintenance template parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcement-template-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/maintenance-announcements/: get: operationId: maintenance_announcements_list description: Returns a paginated list of maintenance announcements. summary: List maintenance announcements parameters: - in: query name: maintenance_type schema: type: integer description: Maintenance type - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scheduled_end_after schema: type: string format: date-time description: Scheduled end after - in: query name: scheduled_end_before schema: type: string format: date-time description: Scheduled end before - in: query name: scheduled_start_after schema: type: string format: date-time description: Scheduled start after - in: query name: scheduled_start_before schema: type: string format: date-time description: Scheduled start before - in: query name: service_provider_uuid schema: type: string format: uuid description: Service provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementStateEnum' description: |+ Maintenance state explode: true style: form tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncement' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: maintenance_announcements_create description: Creates a new maintenance announcement in the 'Draft' state. summary: Create a maintenance announcement tags: - maintenance-announcements requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncement' description: '' head: operationId: maintenance_announcements_count description: Get number of items in the collection matching the request parameters. summary: List maintenance announcements parameters: - in: query name: maintenance_type schema: type: integer description: Maintenance type - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scheduled_end_after schema: type: string format: date-time description: Scheduled end after - in: query name: scheduled_end_before schema: type: string format: date-time description: Scheduled end before - in: query name: scheduled_start_after schema: type: string format: date-time description: Scheduled start after - in: query name: scheduled_start_before schema: type: string format: date-time description: Scheduled start before - in: query name: service_provider_uuid schema: type: string format: uuid description: Service provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementStateEnum' description: |+ Maintenance state explode: true style: form tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/maintenance-announcements-template/: get: operationId: maintenance_announcements_template_list description: Returns a paginated list of reusable templates for maintenance announcements. summary: List maintenance announcement templates parameters: - in: query name: maintenance_type schema: type: integer description: Maintenance type - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementTemplateOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: service_provider_uuid schema: type: string format: uuid description: Service provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve tags: - maintenance-announcements-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: maintenance_announcements_template_create description: Creates a new reusable template for maintenance announcements, including a default message and type. summary: Create a maintenance announcement template tags: - maintenance-announcements-template requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementTemplate' description: '' head: operationId: maintenance_announcements_template_count description: Get number of items in the collection matching the request parameters. summary: List maintenance announcement templates parameters: - in: query name: maintenance_type schema: type: integer description: Maintenance type - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementTemplateOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: service_provider_uuid schema: type: string format: uuid description: Service provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve tags: - maintenance-announcements-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/maintenance-announcements-template/{uuid}/: get: operationId: maintenance_announcements_template_retrieve description: Returns the details of a specific maintenance announcement template. summary: Retrieve a maintenance announcement template parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementTemplate' description: '' put: operationId: maintenance_announcements_template_update description: Updates an existing maintenance announcement template. summary: Update a maintenance announcement template parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements-template requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementTemplate' description: '' patch: operationId: maintenance_announcements_template_partial_update description: Partially updates an existing maintenance announcement template. summary: Partially update a maintenance announcement template parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements-template requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMaintenanceAnnouncementTemplateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementTemplate' description: '' delete: operationId: maintenance_announcements_template_destroy description: Deletes a maintenance announcement template. summary: Delete a maintenance announcement template parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/maintenance-announcements/{uuid}/: get: operationId: maintenance_announcements_retrieve description: Returns the details of a specific maintenance announcement. summary: Retrieve a maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncement' description: '' put: operationId: maintenance_announcements_update description: Updates an existing maintenance announcement. summary: Update a maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncementRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncement' description: '' patch: operationId: maintenance_announcements_partial_update description: Partially updates an existing maintenance announcement. summary: Partially update a maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMaintenanceAnnouncementRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceAnnouncement' description: '' delete: operationId: maintenance_announcements_destroy description: Deletes a maintenance announcement. summary: Delete a maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/maintenance-announcements/{uuid}/cancel_maintenance/: post: operationId: maintenance_announcements_cancel_maintenance description: Transitions a 'Draft' or 'Scheduled' maintenance announcement to 'Cancelled'. summary: Cancel the maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceActionResponse' description: '' /api/maintenance-announcements/{uuid}/complete_maintenance/: post: operationId: maintenance_announcements_complete_maintenance description: Transitions an 'In progress' maintenance announcement to 'Completed', indicating that the maintenance work has finished. summary: Complete the maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceActionResponse' description: '' /api/maintenance-announcements/{uuid}/schedule/: post: operationId: maintenance_announcements_schedule description: Transitions a 'Draft' maintenance announcement to the 'Scheduled' state, making it publicly visible. summary: Schedule/publish the maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceActionResponse' description: '' /api/maintenance-announcements/{uuid}/start_maintenance/: post: operationId: maintenance_announcements_start_maintenance description: Transitions a 'Scheduled' maintenance announcement to 'In progress', indicating that the maintenance work has begun. summary: Start the maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceActionResponse' description: '' /api/maintenance-announcements/{uuid}/unschedule/: post: operationId: maintenance_announcements_unschedule description: Transitions a 'Scheduled' maintenance announcement back to the 'Draft' state, hiding it from public view. summary: Unschedule/unpublish the maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceActionResponse' description: '' /api/maintenance-announcements/maintenance_stats/: get: operationId: maintenance_announcements_maintenance_stats_retrieve description: Returns comprehensive statistics for maintenance announcements including counts by state, type, impact level, and daily breakdown. summary: Get maintenance announcement statistics parameters: - in: query name: end schema: type: string description: End date in YYYY-MM-DD format. Defaults to 30 days in the future. - in: query name: provider_uuid schema: type: string description: Filter by service provider UUID. - in: query name: start schema: type: string description: Start date in YYYY-MM-DD format. Defaults to 90 days ago. tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceStatsResponse' description: '' head: operationId: maintenance_announcements_maintenance_stats_count description: Get number of items in the collection matching the request parameters. summary: Get maintenance announcement statistics parameters: - in: query name: end schema: type: string description: End date in YYYY-MM-DD format. Defaults to 30 days in the future. - in: query name: provider_uuid schema: type: string description: Filter by service provider UUID. - in: query name: start schema: type: string description: Start date in YYYY-MM-DD format. Defaults to 90 days ago. tags: - maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/managed-rancher-cluster-resources/: get: operationId: managed_rancher_cluster_resources_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ResourceFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - managed-rancher-cluster-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Resource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: managed_rancher_cluster_resources_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - managed-rancher-cluster-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/managed-rancher-cluster-resources/{uuid}/: get: operationId: managed_rancher_cluster_resources_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ResourceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - managed-rancher-cluster-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Resource' description: '' /api/managed-rancher-cluster-resources/{uuid}/add_node/: post: operationId: managed_rancher_cluster_resources_add_node parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - managed-rancher-cluster-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ManagedRancherCreateNodeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherNode' description: '' x-permissions: - permission: ORDER.APPROVE scopes: - project.customer /api/marketplace-bookings/{uuid}/: get: operationId: marketplace_bookings_list parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - marketplace-bookings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Booking' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-categories/: get: operationId: marketplace_categories_list description: Returns a paginated list of marketplace categories. summary: List categories parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customers_offerings_state schema: type: array items: $ref: '#/components/schemas/MaintenanceTypeEnum' description: |+ Customers offerings state explode: true style: form - in: query name: field schema: type: array items: $ref: '#/components/schemas/MarketplaceCategoryFieldEnum' - in: query name: group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: organization_groups_retrieve - in: query name: has_shared schema: type: boolean description: Has shared - in: query name: offering_name schema: type: string description: Offering name contains - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: title schema: type: string description: Title contains tags: - marketplace-categories security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MarketplaceCategory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_categories_create description: Creates a new marketplace category. Requires staff permissions. summary: Create a category tags: - marketplace-categories requestBody: content: application/json: schema: $ref: '#/components/schemas/MarketplaceCategoryRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MarketplaceCategoryRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/MarketplaceCategoryRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MarketplaceCategory' description: '' head: operationId: marketplace_categories_count description: Get number of items in the collection matching the request parameters. summary: List categories parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customers_offerings_state schema: type: array items: $ref: '#/components/schemas/MaintenanceTypeEnum' description: |+ Customers offerings state explode: true style: form - in: query name: group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: organization_groups_retrieve - in: query name: has_shared schema: type: boolean description: Has shared - in: query name: offering_name schema: type: string description: Offering name contains - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: title schema: type: string description: Title contains tags: - marketplace-categories security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-categories/{uuid}/: get: operationId: marketplace_categories_retrieve description: Returns details of a specific marketplace category. summary: Retrieve a category parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/MarketplaceCategoryFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-categories security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MarketplaceCategory' description: '' put: operationId: marketplace_categories_update description: Updates an existing marketplace category. Requires staff permissions. summary: Update a category parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-categories requestBody: content: application/json: schema: $ref: '#/components/schemas/MarketplaceCategoryRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/MarketplaceCategoryRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/MarketplaceCategoryRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MarketplaceCategory' description: '' patch: operationId: marketplace_categories_partial_update description: Partially updates an existing marketplace category. Requires staff permissions. summary: Partially update a category parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-categories requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMarketplaceCategoryRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedMarketplaceCategoryRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedMarketplaceCategoryRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MarketplaceCategory' description: '' delete: operationId: marketplace_categories_destroy description: Deletes a marketplace category. Requires staff permissions. summary: Delete a category parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-categories security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-category-columns/: get: operationId: marketplace_category_columns_list description: Returns a paginated list of category columns used for resource table rendering. summary: List category columns parameters: - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: title schema: type: string description: Title contains tags: - marketplace-category-columns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CategoryColumn' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_category_columns_create description: Creates a new category column. Requires staff permissions. summary: Create a category column tags: - marketplace-category-columns requestBody: content: application/json: schema: $ref: '#/components/schemas/CategoryColumnRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CategoryColumn' description: '' head: operationId: marketplace_category_columns_count description: Get number of items in the collection matching the request parameters. summary: List category columns parameters: - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: title schema: type: string description: Title contains tags: - marketplace-category-columns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-category-columns/{uuid}/: get: operationId: marketplace_category_columns_retrieve description: Returns details of a specific category column. summary: Retrieve a category column parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-category-columns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryColumn' description: '' put: operationId: marketplace_category_columns_update description: Updates an existing category column. Requires staff permissions. summary: Update a category column parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-category-columns requestBody: content: application/json: schema: $ref: '#/components/schemas/CategoryColumnRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryColumn' description: '' patch: operationId: marketplace_category_columns_partial_update description: Partially updates an existing category column. Requires staff permissions. summary: Partially update a category column parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-category-columns requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCategoryColumnRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryColumn' description: '' delete: operationId: marketplace_category_columns_destroy description: Deletes a category column. Requires staff permissions. summary: Delete a category column parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-category-columns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-category-component-usages/: get: operationId: marketplace_category_component_usages_list description: "\n Returns a paginated list of aggregated component usages\ \ for marketplace categories.\n This data is scoped to either a customer\ \ or a project and represents the total usage\n of a component type\ \ (e.g., total 'CPU hours' used across all resources of a certain category\n\ \ within a project).\n\n The list **must** be filtered by a\ \ `scope` parameter (either a customer or project URL).\n " summary: List aggregated category component usages parameters: - in: query name: date_after schema: type: string format: date description: Date after or equal to - in: query name: date_before schema: type: string format: date description: Date before or equal to - in: query name: field schema: type: array items: $ref: '#/components/schemas/CategoryComponentUsageFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. tags: - marketplace-category-component-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CategoryComponentUsage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_category_component_usages_count description: Get number of items in the collection matching the request parameters. summary: List aggregated category component usages parameters: - in: query name: date_after schema: type: string format: date description: Date after or equal to - in: query name: date_before schema: type: string format: date description: Date before or equal to - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. tags: - marketplace-category-component-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-category-component-usages/{id}/: get: operationId: marketplace_category_component_usages_retrieve description: Returns the details of a single aggregated usage record for a category component, identified by its database ID. summary: Retrieve an aggregated category component usage record parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/CategoryComponentUsageFieldEnum' - in: path name: id schema: type: integer description: A unique integer value identifying this category component usage. required: true tags: - marketplace-category-component-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryComponentUsage' description: '' /api/marketplace-category-components/: get: operationId: marketplace_category_components_list description: Returns a paginated list of all components defined at the category level. These act as templates for components in offerings. summary: List category components parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-category-components security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CategoryComponents' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_category_components_create description: Creates a new component for a category. Requires staff permissions. summary: Create a category component tags: - marketplace-category-components requestBody: content: application/json: schema: $ref: '#/components/schemas/CategoryComponentsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CategoryComponents' description: '' head: operationId: marketplace_category_components_count description: Get number of items in the collection matching the request parameters. summary: List category components parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-category-components security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-category-components/{id}/: get: operationId: marketplace_category_components_retrieve description: Returns the details of a specific category component, identified by its ID. summary: Retrieve a category component parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this category component. required: true tags: - marketplace-category-components security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryComponents' description: '' put: operationId: marketplace_category_components_update description: Updates an existing category component. Requires staff permissions. summary: Update a category component parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this category component. required: true tags: - marketplace-category-components requestBody: content: application/json: schema: $ref: '#/components/schemas/CategoryComponentsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryComponents' description: '' patch: operationId: marketplace_category_components_partial_update description: Partially updates an existing category component. Requires staff permissions. summary: Partially update a category component parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this category component. required: true tags: - marketplace-category-components requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCategoryComponentsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryComponents' description: '' delete: operationId: marketplace_category_components_destroy description: Deletes a category component. Requires staff permissions. summary: Delete a category component parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this category component. required: true tags: - marketplace-category-components security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-category-groups/: get: operationId: marketplace_category_groups_list description: Returns a paginated list of category groups. summary: List category groups parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/CategoryGroupFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: title schema: type: string tags: - marketplace-category-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CategoryGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_category_groups_create description: Creates a new category group. Requires staff permissions. summary: Create a category group tags: - marketplace-category-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/CategoryGroupRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CategoryGroupRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/CategoryGroupRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CategoryGroup' description: '' head: operationId: marketplace_category_groups_count description: Get number of items in the collection matching the request parameters. summary: List category groups parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: title schema: type: string tags: - marketplace-category-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-category-groups/{uuid}/: get: operationId: marketplace_category_groups_retrieve description: Returns details of a specific category group. summary: Retrieve a category group parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/CategoryGroupFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-category-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryGroup' description: '' put: operationId: marketplace_category_groups_update description: Updates an existing category group. Requires staff permissions. summary: Update a category group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-category-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/CategoryGroupRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/CategoryGroupRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/CategoryGroupRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryGroup' description: '' patch: operationId: marketplace_category_groups_partial_update description: Partially updates an existing category group. Requires staff permissions. summary: Partially update a category group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-category-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCategoryGroupRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedCategoryGroupRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedCategoryGroupRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryGroup' description: '' delete: operationId: marketplace_category_groups_destroy description: Deletes a category group. Requires staff permissions. summary: Delete a category group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-category-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-category-help-articles/: get: operationId: marketplace_category_help_articles_list description: Returns a paginated list of all help articles associated with marketplace categories. summary: List category help articles parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-category-help-articles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CategoryHelpArticles' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_category_help_articles_create description: Creates a new help article and associates it with one or more categories. Requires staff permissions. summary: Create a category help article tags: - marketplace-category-help-articles requestBody: content: application/json: schema: $ref: '#/components/schemas/CategoryHelpArticlesRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CategoryHelpArticles' description: '' head: operationId: marketplace_category_help_articles_count description: Get number of items in the collection matching the request parameters. summary: List category help articles parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-category-help-articles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-category-help-articles/{id}/: get: operationId: marketplace_category_help_articles_retrieve description: Returns the details of a specific help article, identified by its ID. summary: Retrieve a category help article parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this category help article. required: true tags: - marketplace-category-help-articles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryHelpArticles' description: '' put: operationId: marketplace_category_help_articles_update description: Updates an existing help article. Requires staff permissions. summary: Update a category help article parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this category help article. required: true tags: - marketplace-category-help-articles requestBody: content: application/json: schema: $ref: '#/components/schemas/CategoryHelpArticlesRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryHelpArticles' description: '' patch: operationId: marketplace_category_help_articles_partial_update description: Partially updates an existing help article. Requires staff permissions. summary: Partially update a category help article parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this category help article. required: true tags: - marketplace-category-help-articles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCategoryHelpArticlesRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CategoryHelpArticles' description: '' delete: operationId: marketplace_category_help_articles_destroy description: Deletes a help article. Requires staff permissions. summary: Delete a category help article parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this category help article. required: true tags: - marketplace-category-help-articles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-component-usages/: get: operationId: marketplace_component_usages_list description: Returns a paginated list of component usage records for resources. This data is used for billing and usage tracking. summary: List component usage records parameters: - in: query name: billing_period schema: type: string format: date - in: query name: billing_period_month schema: type: number description: Billing period month - in: query name: billing_period_year schema: type: number description: Billing period year - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_after schema: type: string format: date description: Date after or equal to - in: query name: date_before schema: type: string format: date description: Date before or equal to - in: query name: field schema: type: array items: $ref: '#/components/schemas/ComponentUsageFieldEnum' - in: query name: o schema: type: array items: $ref: '#/components/schemas/ComponentUsageOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: type schema: type: string description: Component type tags: - marketplace-component-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ComponentUsage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_component_usages_count description: Get number of items in the collection matching the request parameters. summary: List component usage records parameters: - in: query name: billing_period schema: type: string format: date - in: query name: billing_period_month schema: type: number description: Billing period month - in: query name: billing_period_year schema: type: number description: Billing period year - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_after schema: type: string format: date description: Date after or equal to - in: query name: date_before schema: type: string format: date description: Date before or equal to - in: query name: o schema: type: array items: $ref: '#/components/schemas/ComponentUsageOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: type schema: type: string description: Component type tags: - marketplace-component-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-component-usages/{uuid}/: get: operationId: marketplace_component_usages_retrieve description: Returns the details of a specific component usage record. summary: Retrieve a component usage record parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ComponentUsageFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-component-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComponentUsage' description: '' /api/marketplace-component-usages/{uuid}/set_user_usage/: post: operationId: marketplace_component_usages_set_user_usage description: "\n Allows a service provider to report usage for a specific\ \ user associated with a resource's component.\n This is used for detailed,\ \ per-user usage tracking within a single resource.\n\n - If a user-specific\ \ usage record already exists for the given component usage, it will be updated.\n\ \ - Otherwise, a new record is created.\n " summary: Set user-specific component usage parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-component-usages requestBody: content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsageCreateRequest' examples: ReportUsageForASpecificUser: value: user: http://testserver/api/marketplace-offering-users/a1b2c3d4e5f678901234567890abcdef/ username: johndoe usage: 50.75 summary: Example of reporting usage for a user identified by their OfferingUser link. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body x-permissions: - permission: RESOURCE.SET_USAGE scopes: - resource.offering - resource.offering.customer /api/marketplace-component-usages/{uuid}/set_user_usages/: post: operationId: marketplace_component_usages_set_user_usages description: "\n Allows a service provider to report usage for multiple\ \ users associated with a resource's component\n in a single request.\ \ This avoids the need for one API call per user.\n\n - All usages\ \ are processed atomically: if any item fails validation, none are persisted.\n\ \ - If a user-specific usage record already exists for the given component\ \ usage, it will be updated.\n - Otherwise, a new record is created.\n\ \ " summary: Bulk set user-specific component usages parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-component-usages requestBody: content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsageBulkCreateRequest' examples: ReportUsageForMultipleUsers: value: usages: - username: user1 usage: 50.0 - username: user2 usage: 75.5 summary: Example of reporting usage for multiple users in a single request. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body x-permissions: - permission: RESOURCE.SET_USAGE scopes: - resource.offering - resource.offering.customer /api/marketplace-component-usages/set_usage/: post: operationId: marketplace_component_usages_set_usage description: "\n Allows a service provider to report usage for one or\ \ more components of a specific resource.\n This endpoint is typically\ \ used by backend systems or agents to submit periodic usage data.\n\n \ \ - If a `plan_period` is provided, the usage is associated with that\ \ period.\n - If only a `resource` is provided, the system will determine\ \ the correct plan period based on the current date.\n - If a usage\ \ record for the same resource, component, and billing period already exists,\ \ it will be updated. Otherwise, a new record is created.\n " summary: Set component usage for a resource tags: - marketplace-component-usages requestBody: content: application/json: schema: $ref: '#/components/schemas/ComponentUsageCreateRequest' examples: ReportUsageForMultipleComponents: value: plan_period: a1b2c3d4-e5f6-7890-1234-567890abcdef usages: - type: cpu amount: 120.5 description: CPU usage for the last period - type: ram amount: 240.0 description: RAM usage for the last period recurring: true summary: Example of reporting usage for 'cpu' and 'ram' components. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body /api/marketplace-component-user-usages/: get: operationId: marketplace_component_user_usages_list description: "\n Returns a paginated list of component usage records\ \ attributed to specific users.\n This provides a granular view of\ \ resource consumption, breaking down the total usage of a component\n \ \ by individual users.\n " summary: List user-specific component usages parameters: - in: query name: billing_period_month schema: type: number description: Billing period month - in: query name: billing_period_year schema: type: number description: Billing period year - in: query name: component_usage__billing_period schema: type: string format: date - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_after schema: type: string format: date description: Date after or equal to - in: query name: date_before schema: type: string format: date description: Date before or equal .google/docsto - in: query name: field schema: type: array items: $ref: '#/components/schemas/ComponentUserUsageFieldEnum' - in: query name: o schema: type: array items: $ref: '#/components/schemas/ComponentUserUsageOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: type schema: type: string description: Component type - in: query name: username schema: type: string description: Username contains tags: - marketplace-component-user-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ComponentUserUsage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_component_user_usages_count description: Get number of items in the collection matching the request parameters. summary: List user-specific component usages parameters: - in: query name: billing_period_month schema: type: number description: Billing period month - in: query name: billing_period_year schema: type: number description: Billing period year - in: query name: component_usage__billing_period schema: type: string format: date - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_after schema: type: string format: date description: Date after or equal to - in: query name: date_before schema: type: string format: date description: Date before or equal .google/docsto - in: query name: o schema: type: array items: $ref: '#/components/schemas/ComponentUserUsageOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: type schema: type: string description: Component type - in: query name: username schema: type: string description: Username contains tags: - marketplace-component-user-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-component-user-usages/{uuid}/: get: operationId: marketplace_component_user_usages_retrieve description: Returns the details of a single user-specific component usage record. summary: Retrieve a user-specific component usage record parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ComponentUserUsageFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-component-user-usages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComponentUserUsage' description: '' /api/marketplace-course-accounts/: get: operationId: marketplace_course_accounts_list description: Returns a paginated list of course accounts accessible to the current user. summary: List course accounts parameters: - in: query name: email schema: type: string description: Email contains - in: query name: o schema: type: array items: $ref: '#/components/schemas/CourseAccountOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_end_date_after schema: type: string format: date description: Project end date range - in: query name: project_end_date_before schema: type: string format: date description: Project end date range - in: query name: project_start_date_after schema: type: string format: date description: Project start date range - in: query name: project_start_date_before schema: type: string format: date description: Project start date range - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Course account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-course-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CourseAccount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_course_accounts_create description: Creates a new temporary course account within a specified course project. summary: Create a course account tags: - marketplace-course-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/CourseAccountRequest' examples: CreateACourseAccount: value: project: a1b2c3d4-e5f6-7890-1234-567890abcdef email: student@example.com description: Account for summer course summary: Create a course account required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CourseAccount' examples: CreateACourseAccount: value: project: a1b2c3d4-e5f6-7890-1234-567890abcdef email: student@example.com description: Account for summer course summary: Create a course account description: '' head: operationId: marketplace_course_accounts_count description: Get number of items in the collection matching the request parameters. summary: List course accounts parameters: - in: query name: email schema: type: string description: Email contains - in: query name: o schema: type: array items: $ref: '#/components/schemas/CourseAccountOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_end_date_after schema: type: string format: date description: Project end date range - in: query name: project_end_date_before schema: type: string format: date description: Project end date range - in: query name: project_start_date_after schema: type: string format: date description: Project start date range - in: query name: project_start_date_before schema: type: string format: date description: Project start date range - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Course account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-course-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-course-accounts/{uuid}/: get: operationId: marketplace_course_accounts_retrieve description: Returns the details of a specific course account. summary: Retrieve a course account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-course-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CourseAccount' description: '' delete: operationId: marketplace_course_accounts_destroy description: Deletes a course account, which triggers a 'close' operation in the backend. summary: Delete (close) a course account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-course-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: PROJECT.COURSE_ACCOUNT_MANAGE scopes: - project - project.customer /api/marketplace-course-accounts/create_bulk/: post: operationId: marketplace_course_accounts_create_bulk description: Creates multiple course accounts within a specified course project in a single request. summary: Bulk create course accounts parameters: - in: query name: email schema: type: string description: Email contains - in: query name: o schema: type: array items: $ref: '#/components/schemas/CourseAccountOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_end_date_after schema: type: string format: date description: Project end date range - in: query name: project_end_date_before schema: type: string format: date description: Project end date range - in: query name: project_start_date_after schema: type: string format: date description: Project start date range - in: query name: project_start_date_before schema: type: string format: date description: Project start date range - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Course account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-course-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/CourseAccountsBulkCreateRequest' examples: BulkCreateThreeCourseAccounts: value: project: a1b2c3d4-e5f6-7890-1234-567890abcdef course_accounts: - email: student1@example.com description: Student One - email: student2@example.com description: Student Two - email: student3@example.com summary: Bulk create three course accounts required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CourseAccount' description: '' examples: BulkCreateThreeCourseAccounts: value: - project: a1b2c3d4-e5f6-7890-1234-567890abcdef course_accounts: - email: student1@example.com description: Student One - email: student2@example.com description: Student Two - email: student3@example.com summary: Bulk create three course accounts description: '' /api/marketplace-customer-component-usage-policies/: get: operationId: marketplace_customer_component_usage_policies_list parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-customer-component-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerComponentUsagePolicy' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_customer_component_usage_policies_create tags: - marketplace-customer-component-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerComponentUsagePolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CustomerComponentUsagePolicy' description: '' head: operationId: marketplace_customer_component_usage_policies_count parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-customer-component-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-customer-component-usage-policies/{uuid}/: get: operationId: marketplace_customer_component_usage_policies_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-component-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerComponentUsagePolicy' description: '' put: operationId: marketplace_customer_component_usage_policies_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-component-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerComponentUsagePolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerComponentUsagePolicy' description: '' patch: operationId: marketplace_customer_component_usage_policies_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-component-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCustomerComponentUsagePolicyRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerComponentUsagePolicy' description: '' delete: operationId: marketplace_customer_component_usage_policies_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-component-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-customer-component-usage-policies/actions/: get: operationId: marketplace_customer_component_usage_policies_actions_retrieve tags: - marketplace-customer-component-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerComponentUsagePolicy' description: '' head: operationId: marketplace_customer_component_usage_policies_actions_count tags: - marketplace-customer-component-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-customer-estimated-cost-policies/: get: operationId: marketplace_customer_estimated_cost_policies_list parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-customer-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerEstimatedCostPolicy' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_customer_estimated_cost_policies_create tags: - marketplace-customer-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerEstimatedCostPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CustomerEstimatedCostPolicy' description: '' head: operationId: marketplace_customer_estimated_cost_policies_count parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-customer-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-customer-estimated-cost-policies/{uuid}/: get: operationId: marketplace_customer_estimated_cost_policies_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerEstimatedCostPolicy' description: '' put: operationId: marketplace_customer_estimated_cost_policies_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerEstimatedCostPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerEstimatedCostPolicy' description: '' patch: operationId: marketplace_customer_estimated_cost_policies_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCustomerEstimatedCostPolicyRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerEstimatedCostPolicy' description: '' delete: operationId: marketplace_customer_estimated_cost_policies_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-customer-estimated-cost-policies/actions/: get: operationId: marketplace_customer_estimated_cost_policies_actions_retrieve tags: - marketplace-customer-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerEstimatedCostPolicy' description: '' head: operationId: marketplace_customer_estimated_cost_policies_actions_count tags: - marketplace-customer-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-customer-service-accounts/: get: operationId: marketplace_customer_service_accounts_list summary: List service accounts parameters: - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: email schema: type: string description: Email contains - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Service account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-customer-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerServiceAccount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_customer_service_accounts_create description: Creates a new service account scoped to a specific customer (organization). This generates an API key that can be used for automated access to resources across all projects within that customer. summary: Create a customer service account tags: - marketplace-customer-service-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerServiceAccountRequest' examples: CreateACustomerServiceAccount: value: customer: a1b2c3d4-e5f6-7890-1234-567890abcdef email: billing-bot@example.com description: Service account for billing and reporting preferred_identifier: billing-bot-customer-alpha summary: Create a customer service account required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CustomerServiceAccount' examples: CreateACustomerServiceAccount: value: customer: a1b2c3d4-e5f6-7890-1234-567890abcdef email: billing-bot@example.com description: Service account for billing and reporting preferred_identifier: billing-bot-customer-alpha summary: Create a customer service account description: '' head: operationId: marketplace_customer_service_accounts_count summary: List service accounts parameters: - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: email schema: type: string description: Email contains - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Service account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-customer-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-customer-service-accounts/{uuid}/: get: operationId: marketplace_customer_service_accounts_retrieve summary: Retrieve a service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerServiceAccount' description: '' put: operationId: marketplace_customer_service_accounts_update summary: Update a service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-service-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomerServiceAccountRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerServiceAccount' description: '' x-permissions: - permission: SERVICE_ACCOUNT.MANAGE scopes: - customer patch: operationId: marketplace_customer_service_accounts_partial_update summary: Partially update a service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-service-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCustomerServiceAccountRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerServiceAccount' description: '' x-permissions: - permission: SERVICE_ACCOUNT.MANAGE scopes: - customer delete: operationId: marketplace_customer_service_accounts_destroy description: Deactivates a customer service account and revokes its API key. summary: Close a customer service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: SERVICE_ACCOUNT.MANAGE scopes: - customer /api/marketplace-customer-service-accounts/{uuid}/rotate_api_key/: post: operationId: marketplace_customer_service_accounts_rotate_api_key description: Generates a new API key for the service account, immediately invalidating the old one. The new key is returned in the response. summary: Rotate API key for a customer service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-customer-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerServiceAccount' description: '' x-permissions: - permission: SERVICE_ACCOUNT.MANAGE scopes: - customer /api/marketplace-demo-presets/info/{name}/: get: operationId: marketplace_demo_presets_info_retrieve description: Returns detailed information about a specific demo preset. Staff access only. summary: Get demo preset details parameters: - in: path name: name schema: type: string description: Name of the preset required: true tags: - marketplace-demo-presets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DemoPreset' description: '' '404': description: No response body head: operationId: marketplace_demo_presets_info_count description: Get number of items in the collection matching the request parameters. summary: Get demo preset details parameters: - in: path name: name schema: type: string description: Name of the preset required: true tags: - marketplace-demo-presets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-demo-presets/list/: get: operationId: marketplace_demo_presets_list_list description: Returns a list of available demo data presets. Staff access only. summary: List demo presets parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-demo-presets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/DemoPreset' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_demo_presets_list_count description: Get number of items in the collection matching the request parameters. summary: List demo presets parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-demo-presets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-demo-presets/load/{name}/: post: operationId: marketplace_demo_presets_load description: Load a demo preset into the database. This operation will optionally clean up existing data before loading. Staff access only. summary: Load demo preset parameters: - in: path name: name schema: type: string description: Name of the preset to load required: true tags: - marketplace-demo-presets requestBody: content: application/json: schema: $ref: '#/components/schemas/DemoPresetLoadRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DemoPresetLoadResponse' description: '' '400': description: No response body '404': description: No response body /api/marketplace-global-categories/: get: operationId: marketplace_global_categories_retrieve description: "\n Returns a dictionary mapping marketplace category UUIDs\ \ to the count of active (non-terminated)\n resources the current user\ \ has access to within that category. This is primarily used for UI\n \ \ dashboards or sidebars to display the number of resources in each category\ \ filter.\n\n The counts can be further filtered by providing a `project_uuid`\ \ or `customer_uuid`.\n " summary: Get resource counts by category parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Filter counts by resources within a specific customer. x-waldur-operation-id: customers_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Filter counts by resources within a specific project. x-waldur-operation-id: projects_retrieve tags: - marketplace-global-categories security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: {} examples: ExampleOfCategoryResourceCounts: value: a1b2c3d4e5f678901234567890abcdef: 5 b2c3d4e5f678901234567890abcdef12: 2 c3d4e5f678901234567890abcdef1234: 10 summary: A dictionary of category UUIDs and their corresponding resource counts. description: The keys are the UUIDs of the categories (in hex format), and the values are the number of non-terminated resources the user can see in that category. description: '' /api/marketplace-integration-statuses/: get: operationId: marketplace_integration_statuses_list description: Returns a paginated list of integration statuses for offerings. This is used to monitor the connectivity and health of backend agents (e.g., site agents) associated with offerings. summary: List integration statuses parameters: - in: query name: agent_type schema: type: string description: Agent type - in: query name: customer_uuid schema: type: string description: Customer UUID - in: query name: o schema: type: array items: $ref: '#/components/schemas/IntegrationStatusDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: status schema: type: array items: $ref: '#/components/schemas/IntegrationStatusDetailsStatusEnum' description: |+ Integration status explode: true style: form tags: - marketplace-integration-statuses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/IntegrationStatusDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_integration_statuses_count description: Get number of items in the collection matching the request parameters. summary: List integration statuses parameters: - in: query name: agent_type schema: type: string description: Agent type - in: query name: customer_uuid schema: type: string description: Customer UUID - in: query name: o schema: type: array items: $ref: '#/components/schemas/IntegrationStatusDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: status schema: type: array items: $ref: '#/components/schemas/IntegrationStatusDetailsStatusEnum' description: |+ Integration status explode: true style: form tags: - marketplace-integration-statuses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-integration-statuses/{uuid}/: get: operationId: marketplace_integration_statuses_retrieve description: Returns the details of a specific integration status, including the agent type, status, and last request timestamp. summary: Retrieve an integration status parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-integration-statuses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IntegrationStatusDetails' description: '' /api/marketplace-offering-estimated-cost-policies/: get: operationId: marketplace_offering_estimated_cost_policies_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-offering-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingEstimatedCostPolicy' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_offering_estimated_cost_policies_create tags: - marketplace-offering-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingEstimatedCostPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingEstimatedCostPolicy' description: '' head: operationId: marketplace_offering_estimated_cost_policies_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-offering-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-offering-estimated-cost-policies/{uuid}/: get: operationId: marketplace_offering_estimated_cost_policies_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingEstimatedCostPolicy' description: '' put: operationId: marketplace_offering_estimated_cost_policies_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingEstimatedCostPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingEstimatedCostPolicy' description: '' patch: operationId: marketplace_offering_estimated_cost_policies_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingEstimatedCostPolicyRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingEstimatedCostPolicy' description: '' delete: operationId: marketplace_offering_estimated_cost_policies_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-offering-estimated-cost-policies/actions/: get: operationId: marketplace_offering_estimated_cost_policies_actions_retrieve description: List available actions for OfferingEstimatedCostPolicy tags: - marketplace-offering-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingEstimatedCostPolicy' description: '' head: operationId: marketplace_offering_estimated_cost_policies_actions_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-offering-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-files/: get: operationId: marketplace_offering_files_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OfferingFileFieldEnum' - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementTemplateOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-offering-files security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingFile' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_offering_files_create tags: - marketplace-offering-files requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingFileRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OfferingFileRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/OfferingFileRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingFile' description: '' head: operationId: marketplace_offering_files_count parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementTemplateOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-offering-files security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-offering-files/{uuid}/: get: operationId: marketplace_offering_files_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OfferingFileFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-files security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingFile' description: '' delete: operationId: marketplace_offering_files_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-files security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-offering-permissions/: get: operationId: marketplace_offering_permissions_list parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: full_name schema: type: string description: User full name contains - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: native_name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingPermissionOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string description: Role name contains - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: roles_retrieve - in: query name: scope_name schema: type: string description: Scope name - in: query name: scope_type schema: type: string description: Scope type - in: query name: scope_uuid schema: type: string description: Scope UUID - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug contains - in: query name: user_url schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: username schema: type: string tags: - marketplace-offering-permissions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingPermission' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_offering_permissions_count parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: full_name schema: type: string description: User full name contains - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: native_name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingPermissionOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string description: Role name contains - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: roles_retrieve - in: query name: scope_name schema: type: string description: Scope name - in: query name: scope_type schema: type: string description: Scope type - in: query name: scope_uuid schema: type: string description: Scope UUID - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug contains - in: query name: user_url schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: username schema: type: string tags: - marketplace-offering-permissions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-offering-permissions-log/: get: operationId: marketplace_offering_permissions_log_list parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: full_name schema: type: string description: User full name contains - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: native_name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingPermissionOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string description: Role name contains - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: roles_retrieve - in: query name: scope_name schema: type: string description: Scope name - in: query name: scope_type schema: type: string description: Scope type - in: query name: scope_uuid schema: type: string description: Scope UUID - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug contains - in: query name: user_url schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: username schema: type: string tags: - marketplace-offering-permissions-log security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingPermission' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_offering_permissions_log_count parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: full_name schema: type: string description: User full name contains - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: native_name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingPermissionOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string description: Role name contains - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: roles_retrieve - in: query name: scope_name schema: type: string description: Scope name - in: query name: scope_type schema: type: string description: Scope type - in: query name: scope_uuid schema: type: string description: Scope UUID - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug contains - in: query name: user_url schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: username schema: type: string tags: - marketplace-offering-permissions-log security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-offering-permissions-log/{id}/: get: operationId: marketplace_offering_permissions_log_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user role. required: true tags: - marketplace-offering-permissions-log security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingPermission' description: '' /api/marketplace-offering-permissions/{id}/: get: operationId: marketplace_offering_permissions_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user role. required: true tags: - marketplace-offering-permissions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingPermission' description: '' /api/marketplace-offering-referrals/: get: operationId: marketplace_offering_referrals_list description: Returns a paginated list of Datacite referrals associated with marketplace offerings. Referrals represent relationships between an offering (identified by a DOI) and other research outputs, such as publications or datasets. The list must be filtered by the offering's scope. summary: List Datacite referrals for offerings parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingReferralOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. tags: - marketplace-offering-referrals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingReferral' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_offering_referrals_count description: Get number of items in the collection matching the request parameters. summary: List Datacite referrals for offerings parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingReferralOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. tags: - marketplace-offering-referrals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-referrals/{uuid}/: get: operationId: marketplace_offering_referrals_retrieve description: Returns the details of a single Datacite referral record, identified by its UUID. Details include the related identifier (PID), the type of relationship, and metadata about the related work. summary: Retrieve a specific Datacite referral parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-referrals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingReferral' description: '' /api/marketplace-offering-terms-of-service/: get: operationId: marketplace_offering_terms_of_service_list description: 'Returns a paginated list of Terms of Service configurations for offerings. Visibility depends on user permissions: staff/support see all; service providers see their own; regular users see ToS for offerings they have consented to or shared offerings.' summary: List Terms of Service configurations parameters: - in: query name: is_active schema: type: boolean description: Is active - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingTermsOfServiceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering URL x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: requires_reconsent schema: type: boolean description: Requires reconsent - in: query name: version schema: type: string description: Version tags: - marketplace-offering-terms-of-service security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingTermsOfService' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_offering_terms_of_service_create description: Creates a new Terms of Service configuration for an offering. Only one active ToS configuration is allowed per offering. summary: Create a Terms of Service configuration tags: - marketplace-offering-terms-of-service requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingTermsOfServiceCreateRequest' examples: CreateANewActiveToSForAnOffering: value: offering: http://testserver/api/marketplace-provider-offerings/a1b2c3d4-e5f6-7890-1234-567890abcdef/ terms_of_service:

New Terms

Users must agree to these terms...

version: '2.0' is_active: true requires_reconsent: true summary: Create a new active ToS for an offering required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingTermsOfServiceCreate' examples: CreateANewActiveToSForAnOffering: value: offering: http://testserver/api/marketplace-provider-offerings/a1b2c3d4-e5f6-7890-1234-567890abcdef/ terms_of_service:

New Terms

Users must agree to these terms...

version: '2.0' is_active: true requires_reconsent: true summary: Create a new active ToS for an offering description: '' head: operationId: marketplace_offering_terms_of_service_count description: Get number of items in the collection matching the request parameters. summary: List Terms of Service configurations parameters: - in: query name: is_active schema: type: boolean description: Is active - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingTermsOfServiceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering URL x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: requires_reconsent schema: type: boolean description: Requires reconsent - in: query name: version schema: type: string description: Version tags: - marketplace-offering-terms-of-service security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-terms-of-service/{uuid}/: get: operationId: marketplace_offering_terms_of_service_retrieve description: Returns the details of a specific Terms of Service configuration. summary: Retrieve a Terms of Service configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-terms-of-service security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingTermsOfService' description: '' put: operationId: marketplace_offering_terms_of_service_update description: Updates an existing Terms of Service configuration. Note that some fields like `version` and `requires_reconsent` are protected and cannot be changed after creation. summary: Update a Terms of Service configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-terms-of-service requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingTermsOfServiceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingTermsOfService' description: '' x-permissions: - permission: OFFERING.UPDATE scopes: - offering.customer patch: operationId: marketplace_offering_terms_of_service_partial_update description: Partially updates an existing Terms of Service configuration. summary: Partially update a Terms of Service configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-terms-of-service requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingTermsOfServiceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingTermsOfService' description: '' x-permissions: - permission: OFFERING.UPDATE scopes: - offering.customer delete: operationId: marketplace_offering_terms_of_service_destroy description: Deletes a Terms of Service configuration. This is a hard delete and should be used with caution. summary: Delete a Terms of Service configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-terms-of-service security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.UPDATE scopes: - offering.customer /api/marketplace-offering-usage-policies/: get: operationId: marketplace_offering_usage_policies_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-offering-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingUsagePolicy' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_offering_usage_policies_create tags: - marketplace-offering-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUsagePolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingUsagePolicy' description: '' head: operationId: marketplace_offering_usage_policies_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-offering-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-offering-usage-policies/{uuid}/: get: operationId: marketplace_offering_usage_policies_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUsagePolicy' description: '' put: operationId: marketplace_offering_usage_policies_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUsagePolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUsagePolicy' description: '' patch: operationId: marketplace_offering_usage_policies_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingUsagePolicyRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUsagePolicy' description: '' delete: operationId: marketplace_offering_usage_policies_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-offering-usage-policies/actions/: get: operationId: marketplace_offering_usage_policies_actions_retrieve tags: - marketplace-offering-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUsagePolicy' description: '' head: operationId: marketplace_offering_usage_policies_actions_count tags: - marketplace-offering-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-offering-user-checklist-completions/: get: operationId: marketplace_offering_user_checklist_completions_list description: "\n Returns a paginated list of all checklist completions\ \ for offering users that the current user is allowed to see.\n This\ \ endpoint is used by service providers to monitor compliance status and by\ \ users to see their own required checklists.\n Visibility follows\ \ the same rules as the `OfferingUsers` endpoint.\n " summary: List checklist completions for offering users parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: is_completed schema: type: boolean - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserChecklistCompletionOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Filter by offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID x-waldur-operation-id: users_retrieve tags: - marketplace-offering-user-checklist-completions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserChecklistCompletion' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_offering_user_checklist_completions_count description: Get number of items in the collection matching the request parameters. summary: List checklist completions for offering users parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: is_completed schema: type: boolean - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserChecklistCompletionOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Filter by offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID x-waldur-operation-id: users_retrieve tags: - marketplace-offering-user-checklist-completions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-user-checklist-completions/{id}/: get: operationId: marketplace_offering_user_checklist_completions_retrieve description: Returns the details of a specific checklist completion for an offering user. summary: Retrieve a checklist completion parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this Checklist completion. required: true tags: - marketplace-offering-user-checklist-completions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserChecklistCompletion' description: '' /api/marketplace-offering-user-roles/: get: operationId: marketplace_offering_user_roles_list parameters: - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-offering-user-roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingUserRole' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_offering_user_roles_create tags: - marketplace-offering-user-roles requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserRoleRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingUserRole' description: '' head: operationId: marketplace_offering_user_roles_count parameters: - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-offering-user-roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-offering-user-roles/{uuid}/: get: operationId: marketplace_offering_user_roles_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-user-roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUserRole' description: '' put: operationId: marketplace_offering_user_roles_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-user-roles requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserRoleRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUserRole' description: '' x-permissions: - permission: OFFERING.MANAGE_USER_ROLE scopes: - offering.customer patch: operationId: marketplace_offering_user_roles_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-user-roles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingUserRoleRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUserRole' description: '' x-permissions: - permission: OFFERING.MANAGE_USER_ROLE scopes: - offering.customer delete: operationId: marketplace_offering_user_roles_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-user-roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.MANAGE_USER_ROLE scopes: - offering.customer /api/marketplace-offering-users/: get: operationId: marketplace_offering_users_list description: Returns a paginated list of users associated with offerings. The visibility of users depends on the role of the authenticated user. Staff and support can see all users. Service providers can see users of their offerings if the user has consented. Regular users can only see their own offering-user records. summary: List offering users parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: field schema: type: array items: $ref: '#/components/schemas/OfferingUserFieldEnum' - in: query name: has_complete_profile schema: type: boolean description: User has complete profile for the offering - in: query name: has_consent schema: type: boolean description: User Has Consent - in: query name: is_restricted schema: type: boolean description: Is restricted - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingUserOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by offering name, username or user name - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingUserState' description: |+ Offering user state explode: true style: form - in: query name: user_username schema: type: string description: User username - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingUser' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_offering_users_create description: Associates a user with a specific offering, creating an offering-specific user account. This is typically done by a service provider. summary: Create an offering user tags: - marketplace-offering-users requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserRequest' examples: CreateAnOfferingUserLink: value: offering: http://testserver/api/marketplace-provider-offerings/a1b2c3d4e5f678901234567890abcdef/ user: http://testserver/api/users/b2c3d4e5f678901234567890abcdef12/ username: johndoe_hpc summary: Create an offering user link required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingUser' examples: CreateAnOfferingUserLink: value: offering: http://testserver/api/marketplace-provider-offerings/a1b2c3d4e5f678901234567890abcdef/ user: http://testserver/api/users/b2c3d4e5f678901234567890abcdef12/ username: johndoe_hpc summary: Create an offering user link description: '' head: operationId: marketplace_offering_users_count description: Get number of items in the collection matching the request parameters. summary: List offering users parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: has_complete_profile schema: type: boolean description: User has complete profile for the offering - in: query name: has_consent schema: type: boolean description: User Has Consent - in: query name: is_restricted schema: type: boolean description: Is restricted - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingUserOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by offering name, username or user name - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingUserState' description: |+ Offering user state explode: true style: form - in: query name: user_username schema: type: string description: User username - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-users/{uuid}/: get: operationId: marketplace_offering_users_retrieve description: Returns the details of a specific offering-user link. Visibility follows the same rules as the list view. summary: Retrieve an offering user parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OfferingUserFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUser' description: '' put: operationId: marketplace_offering_users_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUser' description: '' patch: operationId: marketplace_offering_users_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingUserRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUser' description: '' delete: operationId: marketplace_offering_users_destroy description: Removes the association between a user and an offering. This action may trigger backend cleanup processes depending on the offering type. summary: Delete an offering user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-offering-users/{uuid}/begin_creating/: post: operationId: marketplace_offering_users_begin_creating description: Transitions the offering user state from 'Requested' or 'Error Creating' to 'Creating'. This is typically used by an agent to signal that the creation process has started. summary: Begin creation process parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/checklist/: get: operationId: marketplace_offering_users_checklist_retrieve description: Get checklist with questions and existing answers. parameters: - in: query name: include_all schema: type: boolean description: 'If true, returns all questions including hidden ones (for dynamic form visibility). Default: false.' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistResponse' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/marketplace-offering-users/{uuid}/checklist_review/: get: operationId: marketplace_offering_users_checklist_review_retrieve description: Get checklist with questions and existing answers including review logic (reviewers only). parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistReviewerResponse' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/completion_review_status/: get: operationId: marketplace_offering_users_completion_review_status_retrieve description: Get checklist completion status with review triggers (reviewers only). parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistCompletionReviewer' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/completion_status/: get: operationId: marketplace_offering_users_completion_status_retrieve description: Get checklist completion status. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistCompletion' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/marketplace-offering-users/{uuid}/request_deletion/: post: operationId: marketplace_offering_users_request_deletion description: Initiates the deletion process for an offering user account by transitioning it to the 'Deletion Requested' state. summary: Request deletion of an offering user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/set_deleted/: post: operationId: marketplace_offering_users_set_deleted description: Transitions the offering user to the 'Deleted' state, marking the successful completion of the deletion process. summary: Set state to Deleted parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/set_deleting/: post: operationId: marketplace_offering_users_set_deleting description: Transitions the offering user to the 'Deleting' state. This is typically used by an agent to signal that the deletion process has started. summary: Begin deletion process parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/set_error_creating/: post: operationId: marketplace_offering_users_set_error_creating description: Manually moves the offering user into the 'Error Creating' state. This is typically used by an agent to report a failure during the creation process. summary: Set state to Error Creating parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-users/{uuid}/set_error_deleting/: post: operationId: marketplace_offering_users_set_error_deleting description: Manually moves the offering user into the 'Error Deleting' state. This is typically used by an agent to report a failure during the deletion process. summary: Set state to Error Deleting parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-users/{uuid}/set_ok/: post: operationId: marketplace_offering_users_set_ok description: Manually sets the offering user state to 'OK'. This can be used to recover from an error state or to complete a manual creation process. summary: Set state to OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-users/{uuid}/set_pending_account_linking/: post: operationId: marketplace_offering_users_set_pending_account_linking description: Transitions the state to 'Pending Account Linking' and allows a service provider to add a comment and a URL to guide the user. summary: Set state to Pending Account Linking parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserStateTransitionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/set_pending_additional_validation/: post: operationId: marketplace_offering_users_set_pending_additional_validation description: Transitions the state to 'Pending Additional Validation' and allows a service provider to add a comment and a URL for the user to follow. summary: Set state to Pending Additional Validation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserStateTransitionRequest' examples: RequestAdditionalValidation: value: comment: Please upload a valid ID to complete the verification. comment_url: https://example.com/upload-id summary: Request additional validation required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/set_validation_complete/: post: operationId: marketplace_offering_users_set_validation_complete description: Transitions the state from a pending validation state to 'OK', indicating that the user has completed the required steps. This clears any service provider comments. summary: Set state to Validation Complete parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_USER scopes: - offering.customer /api/marketplace-offering-users/{uuid}/submit_answers/: post: operationId: marketplace_offering_users_submit_answers description: Submit checklist answers. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/AnswerSubmitRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AnswerSubmitResponse' description: '' '400': content: application/json: schema: description: Validation error or no checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/marketplace-offering-users/{uuid}/update_comments/: patch: operationId: marketplace_offering_users_update_comments_partial_update description: Allows a service provider to update the `service_provider_comment` and `service_provider_comment_url` fields for an offering user. This is often used to provide feedback or instructions during a pending state. summary: Update service provider comments parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingUserServiceProviderCommentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUserServiceProviderComment' description: '' /api/marketplace-offering-users/{uuid}/update_restricted/: post: operationId: marketplace_offering_users_update_restricted description: Allows a service provider to mark an offering user as restricted or unrestricted. A restricted user may have limited access to the resource. summary: Update restriction status parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-offering-users requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserUpdateRestrictionRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-users/checklist-template/: get: operationId: marketplace_offering_users_checklist_template_retrieve description: Get checklist template for creating new objects. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistTemplate' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Parent object not found description: '' head: operationId: marketplace_offering_users_checklist_template_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-offering-users/profile_field_warnings/: get: operationId: marketplace_offering_users_profile_field_warnings_retrieve description: Returns a mapping of user profile field names to offerings that expose those fields. When ENFORCE_OFFERING_USER_PROFILE_COMPLETENESS is enabled, clearing a field listed here would make the user invisible to the service provider for the associated offerings. summary: Get profile field warnings tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body head: operationId: marketplace_offering_users_profile_field_warnings_count description: Get number of items in the collection matching the request parameters. summary: Get profile field warnings tags: - marketplace-offering-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-orders/: get: operationId: marketplace_orders_list description: Returns a paginated list of orders accessible to the current user. Orders are visible to service consumers (project/customer members with appropriate permissions) and service providers. summary: List orders parameters: - in: query name: can_approve_as_consumer schema: type: boolean description: Can approve as consumer - in: query name: can_approve_as_provider schema: type: boolean description: Can approve as provider - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: field schema: type: array items: $ref: '#/components/schemas/OrderDetailsFieldEnum' - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: o schema: type: array items: $ref: '#/components/schemas/OrderDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by order UUID, slug, project name or resource name - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_name schema: type: string description: Resource name - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - in: query name: type schema: type: array items: $ref: '#/components/schemas/RequestTypes' description: |+ Order type explode: true style: form tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OrderDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_orders_create description: Creates a new order to provision a resource. The order will be placed in a pending state and may require approval depending on the offering and user permissions. summary: Create an order tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderCreateRequest' examples: CreateAResourceFromAPublicOffering: value: offering: http://testserver/api/marketplace-public-offerings/a1b2c3d4e5f678901234567890abcdef/ project: http://testserver/api/projects/b2c3d4e5f678901234567890abcdef12/ plan: http://testserver/api/marketplace-public-offerings/a1b2c3d4e5f678901234567890abcdef/plans/c3d4e5f678901234567890abcdef1234/ attributes: name: My New Virtual Machine cores: 2 ram_gb: 4 storage_gb: 50 summary: Example of creating a new resource. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OrderDetails' examples: CreateAResourceFromAPublicOffering: value: offering: http://testserver/api/marketplace-public-offerings/a1b2c3d4e5f678901234567890abcdef/ project: http://testserver/api/projects/b2c3d4e5f678901234567890abcdef12/ plan: http://testserver/api/marketplace-public-offerings/a1b2c3d4e5f678901234567890abcdef/plans/c3d4e5f678901234567890abcdef1234/ attributes: name: My New Virtual Machine cores: 2 ram_gb: 4 storage_gb: 50 summary: Example of creating a new resource. description: '' head: operationId: marketplace_orders_count description: Get number of items in the collection matching the request parameters. summary: List orders parameters: - in: query name: can_approve_as_consumer schema: type: boolean description: Can approve as consumer - in: query name: can_approve_as_provider schema: type: boolean description: Can approve as provider - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: o schema: type: array items: $ref: '#/components/schemas/OrderDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by order UUID, slug, project name or resource name - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_name schema: type: string description: Resource name - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - in: query name: type schema: type: array items: $ref: '#/components/schemas/RequestTypes' description: |+ Order type explode: true style: form tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-orders/{uuid}/: get: operationId: marketplace_orders_retrieve description: Returns the details of a specific order. summary: Retrieve an order parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OrderDetailsFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderDetails' description: '' put: operationId: marketplace_orders_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderUpdate' description: '' x-permissions: - permission: ORDER.APPROVE scopes: - project - project.customer patch: operationId: marketplace_orders_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOrderUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderUpdate' description: '' x-permissions: - permission: ORDER.APPROVE scopes: - project - project.customer delete: operationId: marketplace_orders_destroy description: Deletes an order that is still in a pending state (e.g., `pending-consumer` or `pending-provider`). Executing or completed orders cannot be deleted. summary: Delete a pending order parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: ORDER.DESTROY scopes: - project - project.customer /api/marketplace-orders/{uuid}/approve_by_consumer/: post: operationId: marketplace_orders_approve_by_consumer description: Approves a pending order from the consumer's side (e.g., project manager, customer owner). This transitions the order to the next state, which could be pending provider approval or executing. summary: Approve an order (consumer) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderInfoResponse' description: '' x-permissions: - permission: ORDER.APPROVE scopes: - project - project.customer /api/marketplace-orders/{uuid}/approve_by_provider/: post: operationId: marketplace_orders_approve_by_provider description: Approves a pending order from the provider's side. This typically transitions the order to the executing state. summary: Approve an order (provider) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderApproveByProviderRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderInfoResponse' description: '' x-permissions: - permission: ORDER.APPROVE scopes: - offering.customer /api/marketplace-orders/{uuid}/cancel/: post: operationId: marketplace_orders_cancel description: Cancels an order. This is typically only possible for certain offering types (e.g., basic support) and in specific states (pending or executing). summary: Cancel an order parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body x-permissions: - permission: ORDER.CANCEL scopes: - project - project.customer /api/marketplace-orders/{uuid}/delete_attachment/: post: operationId: marketplace_orders_delete_attachment description: Allows deleting an attachment from a pending order. summary: Delete order attachment parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-orders/{uuid}/offering/: get: operationId: marketplace_orders_offering_retrieve description: Returns details of the offering connected to the requested object. summary: Get offering details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicOfferingDetails' description: '' /api/marketplace-orders/{uuid}/reject_by_consumer/: post: operationId: marketplace_orders_reject_by_consumer description: Rejects a pending order from the consumer's side. This moves the order to the 'rejected' state. summary: Reject an order (consumer) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderErrorDetailsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-orders/{uuid}/reject_by_provider/: post: operationId: marketplace_orders_reject_by_provider description: Rejects a pending order from the provider's side. This moves the order to the 'rejected' state. summary: Reject an order (provider) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderProviderRejectionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: ORDER.REJECT scopes: - offering.customer /api/marketplace-orders/{uuid}/set_backend_id/: post: operationId: marketplace_orders_set_backend_id description: Allows a service provider or staff to set or update the backend ID associated with an order. This is useful for linking the order to an external system's identifier. summary: Set order backend ID parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderBackendIDRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string example: status: Order backend_id has been changed. description: '' x-permissions: - permission: RESOURCE.SET_BACKEND_ID scopes: - offering - offering.customer /api/marketplace-orders/{uuid}/set_consumer_info/: post: operationId: marketplace_orders_set_consumer_info description: Allows a consumer to respond to a provider's message with an optional message and file attachment on a pending order. summary: Set consumer info on order parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderConsumerInfoRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrderConsumerInfoRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/OrderConsumerInfoRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderInfoResponse' description: '' x-permissions: - permission: ORDER.APPROVE scopes: - project - project.customer /api/marketplace-orders/{uuid}/set_provider_info/: post: operationId: marketplace_orders_set_provider_info description: Allows a service provider to send a message with an optional URL and file attachment to the consumer on a pending order. summary: Set provider info on order parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderProviderInfoRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrderProviderInfoRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/OrderProviderInfoRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderInfoResponse' description: '' x-permissions: - permission: ORDER.APPROVE scopes: - offering.customer /api/marketplace-orders/{uuid}/set_state_done/: post: operationId: marketplace_orders_set_state_done description: Used by external agents (e.g., site agent) to manually transition the order state to 'done'. This is only applicable for specific offering types. summary: Set order state to done (agent) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: ORDER.APPROVE scopes: - offering.customer /api/marketplace-orders/{uuid}/set_state_erred/: post: operationId: marketplace_orders_set_state_erred description: Used by external agents to report a failure during order processing. An error message and traceback can be provided. summary: Set order state to erred (agent) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderErrorDetailsRequest' examples: ReportAnError: value: error_message: Failed to connect to the backend. error_traceback: Traceback(...) summary: Report an error required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: ORDER.APPROVE scopes: - offering.customer - offering.customer.serviceprovider /api/marketplace-orders/{uuid}/set_state_executing/: post: operationId: marketplace_orders_set_state_executing description: Used by external agents (e.g., site agent) to manually transition the order state to 'executing'. This is only applicable for specific offering types. summary: Set order state to executing (agent) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: ORDER.APPROVE scopes: - offering.customer /api/marketplace-orders/{uuid}/unlink/: post: operationId: marketplace_orders_unlink description: Forcefully deletes an order from the database without affecting the backend resource. This is a staff-only administrative action used to clean up stuck or invalid orders. summary: Unlink an order (staff only) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body '403': description: No response body /api/marketplace-orders/{uuid}/update_attachment/: post: operationId: marketplace_orders_update_attachment description: Allows uploading or replacing a file attachment (e.g., a purchase order) for a pending order. summary: Update order attachment parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-orders requestBody: content: application/json: schema: $ref: '#/components/schemas/OrderAttachmentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OrderAttachmentRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/OrderAttachmentRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderAttachment' description: '' /api/marketplace-plan-components/: get: operationId: marketplace_plan_components_list description: Returns a paginated list of all plan components. A plan component defines the pricing and quotas for an offering component within a billing plan. The list is filtered based on the current user's access permissions and organization group memberships. summary: List plan components parameters: - in: query name: archived schema: type: boolean description: Archived - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: shared schema: type: boolean description: Shared tags: - marketplace-plan-components security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PlanComponent' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_plan_components_count description: Get number of items in the collection matching the request parameters. summary: List plan components parameters: - in: query name: archived schema: type: boolean description: Archived - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: shared schema: type: boolean description: Shared tags: - marketplace-plan-components security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-plan-components/{id}/: get: operationId: marketplace_plan_components_retrieve description: Returns the details of a specific plan component, including its pricing, quotas, and associated offering and plan information. summary: Retrieve a plan component parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this plan component. required: true tags: - marketplace-plan-components security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PlanComponent' description: '' /api/marketplace-plans/: get: operationId: marketplace_plans_list description: Returns a paginated list of plans managed by the provider. The list is filtered based on the current user's access to the offering's customer. summary: List provider plans parameters: - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProviderPlanDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_plans_create description: Creates a new billing plan for an offering. summary: Create a provider plan tags: - marketplace-plans requestBody: content: application/json: schema: $ref: '#/components/schemas/ProviderPlanDetailsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProviderPlanDetails' description: '' head: operationId: marketplace_plans_count description: Get number of items in the collection matching the request parameters. summary: List provider plans parameters: - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-plans/{uuid}/: get: operationId: marketplace_plans_retrieve description: Returns details of a specific plan. summary: Retrieve a provider plan parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderPlanDetails' description: '' put: operationId: marketplace_plans_update description: 'Updates an existing plan. Note: A plan cannot be updated if it is already used by resources.' summary: Update a provider plan parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans requestBody: content: application/json: schema: $ref: '#/components/schemas/ProviderPlanDetailsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderPlanDetails' description: '' x-permissions: - permission: OFFERING.UPDATE_PLAN scopes: - offering.customer patch: operationId: marketplace_plans_partial_update description: 'Partially updates an existing plan. Note: A plan cannot be updated if it is already used by resources.' summary: Partially update a provider plan parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProviderPlanDetailsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderPlanDetails' description: '' x-permissions: - permission: OFFERING.UPDATE_PLAN scopes: - offering.customer delete: operationId: marketplace_plans_destroy description: Deletes a plan. This is a hard delete and should be used with caution. summary: Delete a provider plan parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-plans/{uuid}/archive/: post: operationId: marketplace_plans_archive description: Marks a plan as archived. Archived plans cannot be used for provisioning new resources, but existing resources will continue to be billed according to this plan. summary: Archive a plan parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.ARCHIVE_PLAN scopes: - offering.customer /api/marketplace-plans/{uuid}/delete_organization_groups/: post: operationId: marketplace_plans_delete_organization_groups description: Removes all organization group associations from this plan, making it accessible to all users (subject to offering-level restrictions). summary: Remove all organization groups from a plan parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.UPDATE_PLAN scopes: - offering.customer /api/marketplace-plans/{uuid}/history/: get: operationId: marketplace_plans_history_list description: Returns the version history for this object. Only accessible by staff and support users. summary: Get version history parameters: - in: query name: created_after schema: type: string description: Filter versions created after this timestamp (ISO 8601) - in: query name: created_before schema: type: string description: Filter versions created before this timestamp (ISO 8601) - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-plans/{uuid}/history/at/: get: operationId: marketplace_plans_history_at_retrieve description: Returns the state of the object as it was at the specified timestamp. Only accessible by staff and support users. summary: Get object state at a specific timestamp parameters: - in: query name: timestamp schema: type: string description: ISO 8601 timestamp to query the object state at required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VersionHistory' description: '' '400': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: type: object additionalProperties: {} description: '' /api/marketplace-plans/{uuid}/update_discounts/: post: operationId: marketplace_plans_update_discounts description: "\n Update volume discount configuration for plan components.\n\ \n This endpoint allows updating discount thresholds and rates for\ \ multiple\n plan components in a single request. Discounts are applied\ \ automatically\n when limit quantities meet or exceed the threshold.\n\ \n The discount configuration affects future billing:\n - Creates\ \ separate invoice items showing the discount.\n - Can be enabled or\ \ disabled per component.\n " summary: Update plan component discounts parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscountsUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_PLAN scopes: - offering.customer /api/marketplace-plans/{uuid}/update_organization_groups/: post: operationId: marketplace_plans_update_organization_groups description: Sets the list of organization groups that are allowed to access this plan. If the list is empty, the plan is accessible to all. summary: Update organization groups for a plan parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationGroupsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_PLAN scopes: - offering.customer /api/marketplace-plans/{uuid}/update_prices/: post: operationId: marketplace_plans_update_prices description: Updates the prices for one or more components of a specific plan. If the plan is already in use by resources, this action updates the `future_price`, which will be applied from the next billing period. Otherwise, the current `price` is updated directly. summary: Update plan component prices parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans requestBody: content: application/json: schema: $ref: '#/components/schemas/PricesUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_PLAN scopes: - offering.customer /api/marketplace-plans/{uuid}/update_quotas/: post: operationId: marketplace_plans_update_quotas description: Updates the quotas (fixed amounts) for one or more components of a specific plan. This is only applicable for components with a 'fixed-price' billing type. summary: Update plan component quotas parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-plans requestBody: content: application/json: schema: $ref: '#/components/schemas/QuotasUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_PLAN scopes: - offering.customer /api/marketplace-plans/usage_stats/: get: operationId: marketplace_plans_usage_stats_list description: Returns aggregated statistics on how many resources are currently using each plan. Can be filtered by offering or service provider. summary: Get plan usage statistics parameters: - in: query name: customer_provider_uuid schema: type: string format: uuid description: Filter by offering customer provider UUID. x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: string description: 'Ordering field. Available options: `usage`, `limit`, `remaining`, and their descending counterparts (e.g., `-usage`).' - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Filter by offering UUID. x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PlanUsageResponse' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_plans_usage_stats_count description: Get number of items in the collection matching the request parameters. summary: Get plan usage statistics parameters: - in: query name: customer_provider_uuid schema: type: string format: uuid description: Filter by offering customer provider UUID. x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: string description: 'Ordering field. Available options: `usage`, `limit`, `remaining`, and their descending counterparts (e.g., `-usage`).' - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Filter by offering UUID. x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-plans security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-plugins/: get: operationId: marketplace_plugins_list description: "\n Returns a list of all registered marketplace plugins\ \ (offering types) and the components\n associated with each. This\ \ endpoint is public and does not require authentication.\n\n Each\ \ plugin entry includes:\n - `offering_type`: A unique identifier for\ \ the plugin.\n - `components`: A list of components provided by the\ \ plugin, each with its `type`, `name`, `measured_unit`, and `billing_type`.\n\ \ - `available_limits`: A list of component types that support user-defined\ \ limits for this plugin.\n " summary: List available marketplace plugins and their components tags: - marketplace-plugins responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PluginOfferingType' examples: ExampleResponseForMarketplacePlugins: value: - - offering_type: Marketplace.Slurm components: - type: cpu name: CPU measured_unit: hours billing_type: usage - type: gpu name: GPU measured_unit: hours billing_type: usage - type: ram name: RAM measured_unit: GB-hours billing_type: usage available_limits: [] summary: Example Response for Marketplace Plugins description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-project-estimated-cost-policies/: get: operationId: marketplace_project_estimated_cost_policies_list parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-project-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectEstimatedCostPolicy' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_project_estimated_cost_policies_create tags: - marketplace-project-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectEstimatedCostPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProjectEstimatedCostPolicy' description: '' head: operationId: marketplace_project_estimated_cost_policies_count parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-project-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-project-estimated-cost-policies/{uuid}/: get: operationId: marketplace_project_estimated_cost_policies_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectEstimatedCostPolicy' description: '' put: operationId: marketplace_project_estimated_cost_policies_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectEstimatedCostPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectEstimatedCostPolicy' description: '' patch: operationId: marketplace_project_estimated_cost_policies_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-estimated-cost-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectEstimatedCostPolicyRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectEstimatedCostPolicy' description: '' delete: operationId: marketplace_project_estimated_cost_policies_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-project-estimated-cost-policies/actions/: get: operationId: marketplace_project_estimated_cost_policies_actions_retrieve tags: - marketplace-project-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectEstimatedCostPolicy' description: '' head: operationId: marketplace_project_estimated_cost_policies_actions_count tags: - marketplace-project-estimated-cost-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-project-service-accounts/: get: operationId: marketplace_project_service_accounts_list summary: List service accounts parameters: - in: query name: email schema: type: string description: Email contains - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri description: Project URL x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Service account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-project-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectServiceAccount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_project_service_accounts_create description: Creates a new service account scoped to a specific project. This generates an API key that can be used for automated access to resources within that project. summary: Create a project service account tags: - marketplace-project-service-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectServiceAccountRequest' examples: CreateAProjectServiceAccount: value: project: http://testserver/api/projects/a1b2c3d4e5f678901234567890abcdef/ email: automation-bot@example.com description: Service account for CI/CD pipelines preferred_identifier: cicd-bot-project-alpha summary: Create a project service account required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProjectServiceAccount' examples: CreateAProjectServiceAccount: value: project: http://testserver/api/projects/a1b2c3d4e5f678901234567890abcdef/ email: automation-bot@example.com description: Service account for CI/CD pipelines preferred_identifier: cicd-bot-project-alpha summary: Create a project service account description: '' head: operationId: marketplace_project_service_accounts_count summary: List service accounts parameters: - in: query name: email schema: type: string description: Email contains - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri description: Project URL x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Service account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-project-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-project-service-accounts/{uuid}/: get: operationId: marketplace_project_service_accounts_retrieve summary: Retrieve a service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectServiceAccount' description: '' put: operationId: marketplace_project_service_accounts_update summary: Update a service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-service-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectServiceAccountRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectServiceAccount' description: '' x-permissions: - permission: SERVICE_ACCOUNT.MANAGE scopes: - project - project.customer patch: operationId: marketplace_project_service_accounts_partial_update summary: Partially update a service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-service-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectServiceAccountRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectServiceAccount' description: '' x-permissions: - permission: SERVICE_ACCOUNT.MANAGE scopes: - project - project.customer delete: operationId: marketplace_project_service_accounts_destroy description: Deactivates a project service account and revokes its API key. summary: Close a project service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: SERVICE_ACCOUNT.MANAGE scopes: - project - project.customer /api/marketplace-project-service-accounts/{uuid}/rotate_api_key/: post: operationId: marketplace_project_service_accounts_rotate_api_key description: Generates a new API key for the service account, immediately invalidating the old one. The new key is returned in the response. summary: Rotate API key for a project service account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-service-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectServiceAccount' description: '' x-permissions: - permission: SERVICE_ACCOUNT.MANAGE scopes: - project - project.customer /api/marketplace-project-update-requests/: get: operationId: marketplace_project_update_requests_list parameters: - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/RemoteProjectUpdateRequestStateEnum' explode: true style: form tags: - marketplace-project-update-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteProjectUpdateRequest' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_project_update_requests_count parameters: - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/RemoteProjectUpdateRequestStateEnum' explode: true style: form tags: - marketplace-project-update-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-project-update-requests/{uuid}/: get: operationId: marketplace_project_update_requests_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-update-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteProjectUpdateRequest' description: '' /api/marketplace-project-update-requests/{uuid}/approve/: post: operationId: marketplace_project_update_requests_approve description: Approve project update request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-update-requests requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewCommentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-project-update-requests/{uuid}/reject/: post: operationId: marketplace_project_update_requests_reject description: Reject project update request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-project-update-requests requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewCommentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-offerings/: get: operationId: marketplace_provider_offerings_list description: Returns a paginated list of offerings for the provider. summary: List provider offerings parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsFieldEnum' - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_provider_offerings_create description: Creates a new provider offering. summary: Create a provider offering tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingCreateRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OfferingCreateRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/OfferingCreateRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProviderOfferingDetails' description: '' head: operationId: marketplace_provider_offerings_count description: Get number of items in the collection matching the request parameters. summary: List provider offerings parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-offerings/{uuid}/: get: operationId: marketplace_provider_offerings_retrieve description: Returns details of a specific provider offering. summary: Retrieve a provider offering parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderOfferingDetails' description: '' delete: operationId: marketplace_provider_offerings_destroy description: Deletes a provider offering. Only possible for offerings in a Draft state with no associated resources. summary: Delete a provider offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.DELETE scopes: - customer /api/marketplace-provider-offerings/{uuid}/activate/: post: operationId: marketplace_provider_offerings_activate description: Activates a draft or paused offering, making it available for ordering. summary: Activate an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DetailState' description: '' x-permissions: - permission: OFFERING.CREATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/add_endpoint/: post: operationId: marketplace_provider_offerings_add_endpoint description: Adds a new access endpoint (URL) to an offering. summary: Add an access endpoint to an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/NestedEndpointRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/EndpointUUID' description: '' x-permissions: - permission: OFFERING.ADD_ENDPOINT scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/add_partition/: post: operationId: marketplace_provider_offerings_add_partition description: Adds a new partition configuration to an offering. summary: Add a partition to an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingPartitionRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingPartition' description: '' x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/add_software_catalog/: post: operationId: marketplace_provider_offerings_add_software_catalog description: Associates a software catalog with an offering and configures enabled CPU architectures. summary: Add a software catalog to an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingSoftwareCatalogRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalogUUID' description: '' x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/add_user/: post: operationId: marketplace_provider_offerings_add_user description: Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set. summary: Grant a role to a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' examples: GrantProjectAdminRoleUntilEndOfYear: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2024-12-31' summary: Grant project admin role until end of year required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleGrantResponse: value: expiration_time: '2024-12-31T00:00:00Z' summary: Successful role grant response description: '' '400': description: Validation error, for example when trying to add a user to a terminated project. /api/marketplace-provider-offerings/{uuid}/archive/: post: operationId: marketplace_provider_offerings_archive description: Archives an offering, making it permanently unavailable for new orders. summary: Archive an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DetailState' description: '' x-permissions: - permission: OFFERING.ARCHIVE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/check_unique_backend_id/: post: operationId: marketplace_provider_offerings_check_unique_backend_id description: 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. summary: Check if backend_id is unique parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/CheckUniqueBackendIDRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CheckUniqueBackendIDResponse' description: '' x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/component_stats/: get: operationId: marketplace_provider_offerings_component_stats_list description: Returns monthly usage statistics for the components of an offering within a specified date range. summary: Get statistics for offering components parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: end schema: type: string description: End date in format YYYY-MM. - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: start schema: type: string description: Start date in format YYYY-MM. - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingComponentStat' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/costs/: get: operationId: marketplace_provider_offerings_costs_list description: Returns monthly cost data for an offering within a specified date range. summary: Get costs for an offering parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: accounting_is_running schema: type: boolean - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: end schema: type: string description: End date in format YYYY-MM. - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: start schema: type: string description: Start date in format YYYY-MM. - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProviderOfferingCosts' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/create_offering_component/: post: operationId: marketplace_provider_offerings_create_offering_component description: Adds a new custom component to an offering. summary: Create an offering component parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingComponentRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body x-permissions: - permission: OFFERING.UPDATE_COMPONENTS scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/customers/: get: operationId: marketplace_provider_offerings_customers_list description: Returns a paginated list of customers who have resources for this offering. summary: Get customers for an offering parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProviderOfferingCustomerFieldEnum' - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProviderOfferingCustomer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/delete-user-attribute-config/: delete: operationId: marketplace_provider_offerings_delete_user_attribute_config_destroy description: Deletes the user attribute configuration for this offering. The offering will fall back to system defaults. summary: Delete user attribute config parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-provider-offerings/{uuid}/delete_endpoint/: post: operationId: marketplace_provider_offerings_delete_endpoint description: Deletes an existing access endpoint from an offering by its UUID. summary: Delete an access endpoint from an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/EndpointUUIDRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.DELETE_ENDPOINT scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/delete_image/: post: operationId: marketplace_provider_offerings_delete_image description: Deletes the main image of an offering. summary: Delete offering image parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-provider-offerings/{uuid}/delete_organization_groups/: post: operationId: marketplace_provider_offerings_delete_organization_groups description: Removes all organization group associations from this offering, making it accessible to all. summary: Delete organization groups for offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-provider-offerings/{uuid}/delete_tags/: post: operationId: marketplace_provider_offerings_delete_tags description: Removes all tag associations from this offering. summary: Delete tags for offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-provider-offerings/{uuid}/delete_thumbnail/: post: operationId: marketplace_provider_offerings_delete_thumbnail description: Deletes the thumbnail image of an offering. summary: Delete offering thumbnail parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-provider-offerings/{uuid}/delete_user/: post: operationId: marketplace_provider_offerings_delete_user description: Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role. summary: Revoke a role from a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleDeleteRequest' examples: RevokeProjectAdminRoleFromUser: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN summary: Revoke project admin role from user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role revoked successfully. /api/marketplace-provider-offerings/{uuid}/draft/: post: operationId: marketplace_provider_offerings_draft description: Moves an active or paused offering back to the draft state for editing. summary: Move an offering to draft parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DetailState' description: '' x-permissions: - permission: OFFERING.CREATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/export_offering/: post: operationId: marketplace_provider_offerings_export_offering description: Exports an offering and all its connected parts to YAML format. Allows configuration of which components to include in the export. summary: Export offering data parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingExportParametersRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingExportResponse' description: '' x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/glauth_users_config/: get: operationId: marketplace_provider_offerings_glauth_users_config_retrieve description: "\n This endpoint provides a configuration file for GLauth.\n\ \ It is intended to be used by an external agent to synchronize user\ \ data from Waldur to GLauth.\n\n Example output format:\n ```\n\ \ [[users]]\n name = \"johndoe\"\n givenname=\"John\"\ \n sn=\"Doe\"\n mail = \"john.doe@example.com\"\n \ \ ...\n [[groups]]\n name = \"group1\"\n gidnumber\ \ = 1001\n ```\n " summary: Get GLauth user configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: text/plain: schema: type: string description: '' /api/marketplace-provider-offerings/{uuid}/history/: get: operationId: marketplace_provider_offerings_history_list description: Returns the version history for this object. Only accessible by staff and support users. summary: Get version history parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: created_after schema: type: string description: Filter versions created after this timestamp (ISO 8601) - in: query name: created_before schema: type: string description: Filter versions created before this timestamp (ISO 8601) - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/history/at/: get: operationId: marketplace_provider_offerings_history_at_retrieve description: Returns the state of the object as it was at the specified timestamp. Only accessible by staff and support users. summary: Get object state at a specific timestamp parameters: - in: query name: timestamp schema: type: string description: ISO 8601 timestamp to query the object state at required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VersionHistory' description: '' '400': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: type: object additionalProperties: {} description: '' /api/marketplace-provider-offerings/{uuid}/import_resource/: post: operationId: marketplace_provider_offerings_import_resource description: Imports a backend resource into the marketplace. summary: Import a resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportResourceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Resource' description: '' /api/marketplace-provider-offerings/{uuid}/importable_resources/: get: operationId: marketplace_provider_offerings_importable_resources_list description: Returns a paginated list of resources that can be imported for this offering. summary: List importable resources parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ImportableResource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/list_course_accounts/: get: operationId: marketplace_provider_offerings_list_course_accounts_list description: Returns a paginated list of course accounts for projects that have resources of this offering. summary: List course accounts for an offering parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CourseAccount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/list_customer_projects/: get: operationId: marketplace_provider_offerings_list_customer_projects_list description: Returns a paginated list of projects that have consumed resources of this offering. summary: List customer projects for an offering parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProjectFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Project' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/list_customer_service_accounts/: get: operationId: marketplace_provider_offerings_list_customer_service_accounts_list description: Returns a paginated list of customer-level service accounts for customers who have resources of this offering. summary: List customer service accounts for an offering parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerServiceAccount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/list_customer_users/: get: operationId: marketplace_provider_offerings_list_customer_users_list description: Returns a paginated list of users who have access to resources of this offering. summary: List customer users for an offering parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/User' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/list_project_service_accounts/: get: operationId: marketplace_provider_offerings_list_project_service_accounts_list description: Returns a paginated list of project-level service accounts for projects that have resources of this offering. summary: List project service accounts for an offering parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: importable schema: type: string description: Filter by importable offerings. - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectServiceAccount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/list_users/: get: operationId: marketplace_provider_offerings_list_users_list description: 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. summary: List users and their roles in a scope parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsFieldEnum' description: Fields to include in response - in: query name: full_name schema: type: string description: User full name - in: query name: native_name schema: type: string description: User native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsOEnum' description: Ordering fields - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string format: uuid description: Role UUID or name x-waldur-operation-id: roles_retrieve - in: query name: search_string schema: type: string description: Search string for user - in: query name: user schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug - in: query name: user_url schema: type: string description: User URL - in: query name: username schema: type: string description: User username - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRoleDetails' description: '' examples: ExampleUserRoleListResponse: value: - - uuid: a7e6b0a29a434d2889273c5240217a26 created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' role_name: PROJECT.ADMIN role_uuid: d8c2d5852d434937985392d24249b6d3 user_email: alice@example.com user_full_name: Alice Smith user_username: alice user_uuid: 8f20242b638743b18a485f81ac685e13 user_image: null created_by_full_name: Bob Johnson created_by_uuid: b4e4c2f1a6f24a8d8e4c2f1a6f24a8d8 summary: Example user role list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/make_available/: post: operationId: marketplace_provider_offerings_make_available description: Marks an unavailable offering as available. summary: Mark an offering as available parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DetailState' description: '' x-permissions: - permission: OFFERING.PAUSE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/make_unavailable/: post: operationId: marketplace_provider_offerings_make_unavailable description: Marks an active offering as unavailable, blocking all operations on its resources. summary: Mark an offering as unavailable parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DetailState' description: '' x-permissions: - permission: OFFERING.PAUSE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/move_offering/: post: operationId: marketplace_provider_offerings_move_offering description: Moves an offering to a different service provider. Requires staff permissions. summary: Move an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/MoveOfferingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicOfferingDetails' description: '' /api/marketplace-provider-offerings/{uuid}/orders/: get: operationId: marketplace_provider_offerings_orders_list description: Returns a paginated list of orders associated with a specific offering. summary: List orders for an offering parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OrderDetailsFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OrderDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-offerings/{uuid}/orders/{order_uuid}/: get: operationId: marketplace_provider_offerings_orders_retrieve description: Returns details of a specific order associated with an offering. summary: Retrieve a specific order for an offering parameters: - in: path name: order_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderDetails' description: '' /api/marketplace-provider-offerings/{uuid}/pause/: post: operationId: marketplace_provider_offerings_pause description: Pauses an active offering, preventing new orders from being created. summary: Pause an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingPauseRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DetailState' description: '' x-permissions: - permission: OFFERING.PAUSE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/refresh_offering_usernames/: post: operationId: marketplace_provider_offerings_refresh_offering_usernames description: Triggers a refresh of usernames for all non-restricted users associated with this offering, based on the current username generation policy. summary: Refresh offering user usernames parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' x-permissions: - permission: OFFERING.UPDATE_INTEGRATION scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/remove_offering_component/: post: operationId: marketplace_provider_offerings_remove_offering_component description: Removes a custom component from an offering. Built-in components cannot be removed. summary: Remove an offering component parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoveOfferingComponentRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_COMPONENTS scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/remove_partition/: post: operationId: marketplace_provider_offerings_remove_partition description: Removes a partition configuration from an offering. summary: Remove a partition from an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/RemovePartitionRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/remove_software_catalog/: post: operationId: marketplace_provider_offerings_remove_software_catalog description: Disassociates a software catalog from an offering. summary: Remove a software catalog from an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoveSoftwareCatalogRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/set_backend_metadata/: post: operationId: marketplace_provider_offerings_set_backend_metadata description: Updates the backend-specific metadata for an offering. summary: Set offering backend metadata parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingBackendMetadataRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/stats/: get: operationId: marketplace_provider_offerings_stats_retrieve description: Returns basic statistics for an offering, such as the number of active resources and customers. summary: Get offering statistics parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: resources_count: type: integer customers_count: type: integer description: '' /api/marketplace-provider-offerings/{uuid}/sync/: post: operationId: marketplace_provider_offerings_sync description: Schedules a synchronization task to pull the latest data for the offering's service settings from the backend. summary: Synchronize offering service settings parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body x-permissions: - permission: OFFERING.UPDATE_COMPONENTS scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/tos_stats/: get: operationId: marketplace_provider_offerings_tos_stats_retrieve description: Returns comprehensive Terms of Service consent statistics for this offering, including user counts, consent rates, and historical data. summary: Get Terms of Service consent statistics parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ToSConsentDashboard' description: '' /api/marketplace-provider-offerings/{uuid}/unpause/: post: operationId: marketplace_provider_offerings_unpause description: Resumes a paused offering, making it available for ordering again. summary: Unpause an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DetailState' description: '' x-permissions: - permission: OFFERING.UNPAUSE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update-user-attribute-config/: post: operationId: marketplace_provider_offerings_update_user_attribute_config description: Creates or updates the user attribute configuration for this offering. This determines which user attributes are shared with the service provider. summary: Update user attribute config parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserAttributeConfigRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUserAttributeConfig' description: '' put: operationId: marketplace_provider_offerings_update_user_attribute_config_update description: Creates or updates the user attribute configuration for this offering. This determines which user attributes are shared with the service provider. summary: Update user attribute config parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUserAttributeConfigRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUserAttributeConfig' description: '' patch: operationId: marketplace_provider_offerings_update_user_attribute_config_partial_update description: Creates or updates the user attribute configuration for this offering. This determines which user attributes are shared with the service provider. summary: Update user attribute config parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingUserAttributeConfigRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUserAttributeConfig' description: '' /api/marketplace-provider-offerings/{uuid}/update_attributes/: post: operationId: marketplace_provider_offerings_update_attributes description: Updates the attributes of an offering. summary: Update offering attributes parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: type: object additionalProperties: {} required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_ATTRIBUTES scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_backend_id_rules/: post: operationId: marketplace_provider_offerings_update_backend_id_rules description: 'Configure validation rules for resource backend_id: format regex and uniqueness scope.' summary: Update offering backend_id rules parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingBackendIdRulesUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_OPTIONS scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_compliance_checklist/: post: operationId: marketplace_provider_offerings_update_compliance_checklist description: Associates a compliance checklist with an offering. summary: Update offering compliance checklist parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingComplianceChecklistUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_OPTIONS scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_description/: post: operationId: marketplace_provider_offerings_update_description description: Updates the category of an offering. summary: Update offering category parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingDescriptionUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_DESCRIPTION scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_image/: post: operationId: marketplace_provider_offerings_update_image description: Uploads or replaces the main image for an offering. summary: Update offering image parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingImageRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OfferingImageRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/OfferingImageRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-offerings/{uuid}/update_integration/: post: operationId: marketplace_provider_offerings_update_integration description: Updates the backend integration settings for an offering, including plugin options, secret options, and service attributes. summary: Update offering integration settings parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingIntegrationUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_INTEGRATION scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_location/: post: operationId: marketplace_provider_offerings_update_location description: Updates the geographical location (latitude and longitude) of an offering. summary: Update offering location parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingLocationUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_LOCATION scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_offering_component/: post: operationId: marketplace_provider_offerings_update_offering_component description: Updates the properties of a specific component within an offering. summary: Update an offering component parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateOfferingComponentRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_COMPONENTS scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_options/: post: operationId: marketplace_provider_offerings_update_options description: Updates the order form options for an offering. summary: Update offering options parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingOptionsUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_OPTIONS scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_organization_groups/: post: operationId: marketplace_provider_offerings_update_organization_groups description: Sets the list of organization groups that can access this offering. summary: Update organization groups for offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationGroupsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-offerings/{uuid}/update_overview/: post: operationId: marketplace_provider_offerings_update_overview description: Updates the overview fields of an offering, such as name, description, and getting started guide. summary: Update offering overview parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingOverviewUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-offerings/{uuid}/update_partition/: patch: operationId: marketplace_provider_offerings_update_partition_partial_update description: Updates the configuration of an existing partition associated with an offering. summary: Update a partition of an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingPartitionUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingPartition' description: '' x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_resource_options/: post: operationId: marketplace_provider_offerings_update_resource_options description: Updates the resource report form options for an offering. summary: Update offering resource options parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingResourceOptionsUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.UPDATE_OPTIONS scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_software_catalog/: patch: operationId: marketplace_provider_offerings_update_software_catalog_partial_update description: Updates the configuration of a software catalog associated with an offering, such as enabled architectures or partition. summary: Update software catalog configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOfferingSoftwareCatalogUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingSoftwareCatalog' description: '' x-permissions: - permission: OFFERING.UPDATE scopes: - '*' - customer - customer.serviceprovider /api/marketplace-provider-offerings/{uuid}/update_tags/: post: operationId: marketplace_provider_offerings_update_tags description: Sets the list of tags for this offering. summary: Update tags for offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/TagsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-offerings/{uuid}/update_thumbnail/: post: operationId: marketplace_provider_offerings_update_thumbnail description: Uploads or replaces the thumbnail image for an offering. summary: Update offering thumbnail parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingThumbnailRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OfferingThumbnailRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/OfferingThumbnailRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-offerings/{uuid}/update_user/: post: operationId: marketplace_provider_offerings_update_user description: 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. summary: Update a user's role expiration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleUpdateRequest' examples: ExtendRoleUntilMid-2025: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2025-06-30' summary: Extend role until mid-2025 MakeARolePermanent: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: null summary: Make a role permanent required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleUpdateResponse: value: expiration_time: '2025-06-30T00:00:00Z' summary: Successful role update response description: '' /api/marketplace-provider-offerings/{uuid}/user-attribute-config/: get: operationId: marketplace_provider_offerings_user_attribute_config_retrieve description: Returns the user attribute configuration for this offering, which determines which user attributes are exposed to the service provider. summary: Get user attribute config parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingUserAttributeConfig' description: '' /api/marketplace-provider-offerings/{uuid}/user_has_resource_access/: get: operationId: marketplace_provider_offerings_user_has_resource_access_retrieve description: Checks if a specified user has access to any non-terminated resource of this offering. summary: Check user access to offering resources parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsFieldEnum' - in: query name: username schema: type: string description: Username of the user to check. required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderOfferingDetails' description: '' /api/marketplace-provider-offerings/groups/: get: operationId: marketplace_provider_offerings_groups_list description: Returns a paginated list of active, shared offerings grouped by their service provider. summary: List offerings grouped by provider parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingGroups' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_provider_offerings_groups_count description: Get number of items in the collection matching the request parameters. summary: List offerings grouped by provider parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-provider-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-offerings/import_offering/: post: operationId: marketplace_provider_offerings_import_offering description: 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. summary: Import offering data tags: - marketplace-provider-offerings requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingImportParametersRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingImportResponse' description: '' /api/marketplace-provider-resources/: get: operationId: marketplace_provider_resources_list description: Returns a paginated list of resources for offerings managed by the current user as a service provider. summary: List provider resources parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: component_count schema: type: number description: Filter by exact number of components - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: downscaled schema: type: boolean description: Downscaled - in: query name: field schema: type: array items: $ref: '#/components/schemas/ResourceFieldEnum' - in: query name: has_terminate_date schema: type: boolean description: Has termination date - in: query name: is_attached schema: type: boolean description: Filter by attached state - in: query name: lexis_links_supported schema: type: boolean description: LEXIS links supported - in: query name: limit_based schema: type: boolean description: Filter by limit-based offerings - in: query name: limit_component_count schema: type: number description: Filter by exact number of limit-based components - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_billable schema: type: boolean description: Offering billable - in: query name: offering_shared schema: type: boolean description: Offering shared - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: string description: Offering type - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: only_limit_based schema: type: boolean description: Filter resources with only limit-based components - in: query name: only_usage_based schema: type: boolean description: Filter resources with only usage-based components - in: query name: order_state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: paused schema: type: boolean description: Paused - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor - in: query name: restrict_member_access schema: type: boolean description: Restrict member access - in: query name: runtime_state schema: type: string description: Runtime state - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ResourceState' description: |+ Resource state explode: true style: form - in: query name: usage_based schema: type: boolean description: Filter by usage-based offerings - in: query name: visible_to_providers schema: type: boolean description: Include only resources visible to service providers - in: query name: visible_to_username schema: type: string description: Visible to username tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Resource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_provider_resources_count description: Get number of items in the collection matching the request parameters. summary: List provider resources parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: component_count schema: type: number description: Filter by exact number of components - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: downscaled schema: type: boolean description: Downscaled - in: query name: has_terminate_date schema: type: boolean description: Has termination date - in: query name: is_attached schema: type: boolean description: Filter by attached state - in: query name: lexis_links_supported schema: type: boolean description: LEXIS links supported - in: query name: limit_based schema: type: boolean description: Filter by limit-based offerings - in: query name: limit_component_count schema: type: number description: Filter by exact number of limit-based components - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_billable schema: type: boolean description: Offering billable - in: query name: offering_shared schema: type: boolean description: Offering shared - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: string description: Offering type - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: only_limit_based schema: type: boolean description: Filter resources with only limit-based components - in: query name: only_usage_based schema: type: boolean description: Filter resources with only usage-based components - in: query name: order_state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: paused schema: type: boolean description: Paused - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor - in: query name: restrict_member_access schema: type: boolean description: Restrict member access - in: query name: runtime_state schema: type: string description: Runtime state - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ResourceState' description: |+ Resource state explode: true style: form - in: query name: usage_based schema: type: boolean description: Filter by usage-based offerings - in: query name: visible_to_providers schema: type: boolean description: Include only resources visible to service providers - in: query name: visible_to_username schema: type: string description: Visible to username tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-resources/{uuid}/: get: operationId: marketplace_provider_resources_retrieve description: Returns details of a specific resource from a provider's perspective. summary: Retrieve a provider resource parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ResourceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Resource' description: '' put: operationId: marketplace_provider_resources_update description: Updates the name or description of a resource. Requires provider permissions. summary: Update a provider resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceUpdate' description: '' x-permissions: - permission: RESOURCE.UPDATE scopes: - project - project.customer - offering - offering.customer patch: operationId: marketplace_provider_resources_partial_update description: Partially updates the name or description of a resource. Requires provider permissions. summary: Partially update a provider resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedResourceUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceUpdate' description: '' x-permissions: - permission: RESOURCE.UPDATE scopes: - project - project.customer - offering - offering.customer /api/marketplace-provider-resources/{uuid}/details/: get: operationId: marketplace_provider_resources_details_retrieve description: Returns the detailed representation of the backend resource associated with the marketplace resource. The format of the response depends on the resource type. summary: Get resource details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: null description: '' '204': content: application/json: schema: null description: '' /api/marketplace-provider-resources/{uuid}/glauth_users_config/: get: operationId: marketplace_provider_resources_glauth_users_config_retrieve description: "\n This endpoint provides a GLauth configuration file for\ \ the users associated with the project of this resource.\n It is intended\ \ for use by an external agent to synchronize user data from Waldur to GLauth.\n\ \ " summary: Get GLauth user configuration for a resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: text/plain: schema: type: string description: '' /api/marketplace-provider-resources/{uuid}/history/: get: operationId: marketplace_provider_resources_history_list description: Returns the version history for this object. Only accessible by staff and support users. summary: Get version history parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: component_count schema: type: number description: Filter by exact number of components - in: query name: created schema: type: string format: date-time description: Created after - in: query name: created_after schema: type: string description: Filter versions created after this timestamp (ISO 8601) - in: query name: created_before schema: type: string description: Filter versions created before this timestamp (ISO 8601) - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: downscaled schema: type: boolean description: Downscaled - in: query name: has_terminate_date schema: type: boolean description: Has termination date - in: query name: is_attached schema: type: boolean description: Filter by attached state - in: query name: lexis_links_supported schema: type: boolean description: LEXIS links supported - in: query name: limit_based schema: type: boolean description: Filter by limit-based offerings - in: query name: limit_component_count schema: type: number description: Filter by exact number of limit-based components - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_billable schema: type: boolean description: Offering billable - in: query name: offering_shared schema: type: boolean description: Offering shared - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: string description: Offering type - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: only_limit_based schema: type: boolean description: Filter resources with only limit-based components - in: query name: only_usage_based schema: type: boolean description: Filter resources with only usage-based components - in: query name: order_state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: paused schema: type: boolean description: Paused - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor - in: query name: restrict_member_access schema: type: boolean description: Restrict member access - in: query name: runtime_state schema: type: string description: Runtime state - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ResourceState' description: |+ Resource state explode: true style: form - in: query name: usage_based schema: type: boolean description: Filter by usage-based offerings - in: path name: uuid schema: type: string format: uuid required: true - in: query name: visible_to_providers schema: type: boolean description: Include only resources visible to service providers - in: query name: visible_to_username schema: type: string description: Visible to username tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-resources/{uuid}/history/at/: get: operationId: marketplace_provider_resources_history_at_retrieve description: Returns the state of the object as it was at the specified timestamp. Only accessible by staff and support users. summary: Get object state at a specific timestamp parameters: - in: query name: timestamp schema: type: string description: ISO 8601 timestamp to query the object state at required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VersionHistory' description: '' '400': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: type: object additionalProperties: {} description: '' /api/marketplace-provider-resources/{uuid}/move_resource/: post: operationId: marketplace_provider_resources_move_resource description: Moves a resource and its associated data to a different project. Requires staff permissions. summary: Move a resource to another project parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/MoveResourceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Resource' description: '' /api/marketplace-provider-resources/{uuid}/offering/: get: operationId: marketplace_provider_resources_offering_retrieve description: Returns details of the offering connected to the requested object. summary: Get offering details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicOfferingDetails' description: '' /api/marketplace-provider-resources/{uuid}/offering_for_subresources/: get: operationId: marketplace_provider_resources_offering_for_subresources_list description: Returns a list of offerings that can be provisioned as sub-resources of the current resource. summary: List offerings for sub-resources parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SubresourceOffering' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-resources/{uuid}/plan_periods/: get: operationId: marketplace_provider_resources_plan_periods_list description: Returns a list of active and future plan periods for the resource. Each period includes the plan details and current component usage. summary: List resource plan periods parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourcePlanPeriod' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-resources/{uuid}/pull/: post: operationId: marketplace_provider_resources_pull description: Schedules a task to pull the latest data for the resource from its backend. summary: Pull resource data parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: type: object properties: detail: type: string description: '' /api/marketplace-provider-resources/{uuid}/refresh_last_sync/: post: operationId: marketplace_provider_resources_refresh_last_sync description: Updates the 'last_sync' timestamp for a resource to the current time. This is useful for backend agents to signal that a resource is being actively monitored. summary: Refresh last sync time parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: RESOURCE.SET_STATE scopes: - offering.customer /api/marketplace-provider-resources/{uuid}/restore/: post: operationId: marketplace_provider_resources_restore parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Resource' description: '' /api/marketplace-provider-resources/{uuid}/set_as_erred/: post: operationId: marketplace_provider_resources_set_as_erred description: Allows a service provider to manually set the state of a resource to 'erred'. An error message and traceback can be provided. summary: Set resource state to erred parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceSetStateErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: RESOURCE.SET_STATE scopes: - offering.customer /api/marketplace-provider-resources/{uuid}/set_as_ok/: post: operationId: marketplace_provider_resources_set_as_ok description: Allows a service provider to manually set the state of a resource to 'OK', clearing any previous error messages. summary: Set resource state to OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: RESOURCE.SET_STATE scopes: - offering.customer /api/marketplace-provider-resources/{uuid}/set_backend_id/: post: operationId: marketplace_provider_resources_set_backend_id description: Allows a service provider to set or update the backend ID for a resource, linking it to an external system's identifier. summary: Set resource backend ID parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceBackendIDRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' x-permissions: - permission: RESOURCE.SET_BACKEND_ID scopes: - offering - offering.customer /api/marketplace-provider-resources/{uuid}/set_backend_metadata/: post: operationId: marketplace_provider_resources_set_backend_metadata description: Allows a service provider to set or update the backend-specific metadata for a resource. summary: Set resource backend metadata parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceBackendMetadataRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' x-permissions: - permission: RESOURCE.SET_BACKEND_METADATA scopes: - offering.customer /api/marketplace-provider-resources/{uuid}/set_downscaled/: post: operationId: marketplace_provider_resources_set_downscaled description: Sets the 'downscaled' flag for a resource. Requires staff permissions. summary: Set downscaled flag for resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceDownscaledRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' /api/marketplace-provider-resources/{uuid}/set_end_date_by_provider/: post: operationId: marketplace_provider_resources_set_end_date_by_provider description: Allows a service provider to set or update the end date for a resource, scheduling it for termination. A notification is sent to the consumer. summary: Set end date by provider parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceEndDateByProviderRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-resources/{uuid}/set_end_date_by_staff/: post: operationId: marketplace_provider_resources_set_end_date_by_staff description: Allows a staff user to set or update the end date for a resource, which will schedule it for termination. summary: Set end date of the resource by staff parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceEndDateByProviderRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-provider-resources/{uuid}/set_keycloak_scopes/: post: operationId: marketplace_provider_resources_set_keycloak_scopes description: Allows a service provider to configure available scope options for Keycloak memberships on a resource. Requires Keycloak integration to be enabled on the offering. summary: Set Keycloak scope options for a resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceKeycloakScopesRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' x-permissions: - permission: RESOURCE.UPDATE_OPTIONS scopes: - offering.customer /api/marketplace-provider-resources/{uuid}/set_limits/: post: operationId: marketplace_provider_resources_set_limits description: Allows a service provider to directly set the limits for a resource. This is typically used for administrative changes or backend synchronization, bypassing the normal order process. summary: Set resource limits parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceSetLimitsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' x-permissions: - permission: RESOURCE.SET_STATE scopes: - offering.customer /api/marketplace-provider-resources/{uuid}/set_paused/: post: operationId: marketplace_provider_resources_set_paused description: Sets the 'paused' flag for a resource. Requires staff permissions. summary: Set paused flag for resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourcePausedRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' /api/marketplace-provider-resources/{uuid}/set_restrict_member_access/: post: operationId: marketplace_provider_resources_set_restrict_member_access description: Sets the 'restrict_member_access' flag for a resource. Requires staff permissions. summary: Set restrict member access flag parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceRestrictMemberAccessRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' /api/marketplace-provider-resources/{uuid}/set_slug/: post: operationId: marketplace_provider_resources_set_slug description: Updates the slug for a resource. Requires staff permissions. summary: Set resource slug parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceSlugRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' /api/marketplace-provider-resources/{uuid}/set_state_ok/: post: operationId: marketplace_provider_resources_set_state_ok description: Allows a service provider to manually set the resource state to OK. This is useful for recovering from Erred state. summary: Set resource state to OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' x-permissions: - permission: RESOURCE.SET_STATE scopes: - offering.customer /api/marketplace-provider-resources/{uuid}/submit_report/: post: operationId: marketplace_provider_resources_submit_report description: Allows a service provider to submit a report (e.g., usage or status report) for a resource. summary: Submit a report for a resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceReportRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' x-permissions: - permission: RESOURCE.SUBMIT_REPORT scopes: - offering.customer /api/marketplace-provider-resources/{uuid}/team/: get: operationId: marketplace_provider_resources_team_list description: Returns a list of users connected to the project of this resource, including their project roles and offering-specific usernames. summary: Get resource team parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectUser' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-provider-resources/{uuid}/terminate/: post: operationId: marketplace_provider_resources_terminate description: Creates a marketplace order to terminate the resource. This action is asynchronous and may require approval. summary: Terminate a resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceTerminateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderUUID' description: '' x-permissions: - permission: RESOURCE.TERMINATE scopes: - project - project.customer - offering.customer /api/marketplace-provider-resources/{uuid}/unlink/: post: operationId: marketplace_provider_resources_unlink description: Forcefully deletes a marketplace resource and its related plugin resource from the database. This action does not schedule operations on the backend and is intended for cleaning up resources stuck in transitioning states. Requires staff permissions. summary: Unlink a resource (staff only) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body '403': description: No response body /api/marketplace-provider-resources/{uuid}/update_options/: post: operationId: marketplace_provider_resources_update_options description: Updates the options of a resource. If the offering is configured to create orders for option changes, a new UPDATE order will be created. Otherwise, the options are updated directly. summary: Update resource options parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceOptionsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' '201': content: application/json: schema: $ref: '#/components/schemas/OrderUUID' description: '' '409': description: No response body x-permissions: - permission: RESOURCE.UPDATE_OPTIONS scopes: - project - project.customer - offering.customer /api/marketplace-provider-resources/{uuid}/update_options_direct/: post: operationId: marketplace_provider_resources_update_options_direct description: Allows a service provider to directly update the options of a resource without creating an order. This is typically used for administrative changes or backend synchronization. summary: Update resource options directly parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-provider-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceOptionsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' x-permissions: - permission: RESOURCE.UPDATE_OPTIONS scopes: - offering.customer /api/marketplace-public-api/check_signature/: post: operationId: marketplace_public_api_check_signature description: "\n Validates a signed payload from a service provider.\ \ The payload is a JWT token\n signed with the provider's API secret\ \ code. This endpoint is used to verify the\n authenticity of a request\ \ before processing it.\n\n The `data` field should contain the JWT\ \ token.\n " summary: Check service provider signature tags: - marketplace-public-api requestBody: content: application/json: schema: $ref: '#/components/schemas/ServiceProviderSignatureRequest' examples: ExampleSignatureCheckRequest: value: customer: a1b2c3d4-e5f6-7890-1234-567890abcdef data: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c summary: Example signature check request required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-public-api/set_usage/: post: operationId: marketplace_public_api_set_usage description: "\n Allows a service provider to report usage for resource\ \ components using a signed JWT payload.\n This provides a secure way\ \ for external systems to submit billing data.\n\n The `data` field\ \ must contain a JWT token that, when decoded, matches the structure of the\n\ \ `ComponentUsageCreateSerializer`.\n " summary: Set component usage with signature tags: - marketplace-public-api requestBody: content: application/json: schema: $ref: '#/components/schemas/ServiceProviderSignatureRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body /api/marketplace-public-offerings/: get: operationId: marketplace_public_offerings_list description: Returns a paginated list of public offerings. The list is filtered to show only offerings that are active or paused and available for ordering by the current user. If anonymous access is enabled, it shows shared offerings available to unauthenticated users. summary: List public offerings parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: field schema: type: array items: $ref: '#/components/schemas/PublicOfferingDetailsFieldEnum' - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-public-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PublicOfferingDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_public_offerings_count description: Get number of items in the collection matching the request parameters. summary: List public offerings parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-public-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-public-offerings/{uuid}/: get: operationId: marketplace_public_offerings_retrieve description: Returns the details of a specific public offering. Access is granted if the offering is available for ordering by the current user or if anonymous access is enabled. summary: Retrieve a public offering parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/PublicOfferingDetailsFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-public-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicOfferingDetails' description: '' /api/marketplace-public-offerings/{uuid}/plans/: get: operationId: marketplace_public_offerings_plans_list description: Returns a list of plans available for a specific offering. The plans are filtered based on the current user's permissions and organization group memberships. summary: List plans for an offering parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-public-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/BasePublicPlan' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-public-offerings/{uuid}/plans/{plan_uuid}/: get: operationId: marketplace_public_offerings_plans_retrieve description: Returns the details of a specific plan if it is available to the current user for the given offering. summary: Retrieve a specific plan for an offering parameters: - in: path name: plan_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - marketplace-public-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BasePublicPlan' description: '' /api/marketplace-related-customers/{customer_uuid}/: get: operationId: marketplace_related_customers_list parameters: - in: path name: customer_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-related-customers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/BasicCustomer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-remote-synchronisations/: get: operationId: marketplace_remote_synchronisations_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-remote-synchronisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteSynchronisation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_remote_synchronisations_create tags: - marketplace-remote-synchronisations requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteSynchronisationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RemoteSynchronisation' description: '' head: operationId: marketplace_remote_synchronisations_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-remote-synchronisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-remote-synchronisations/{uuid}/: get: operationId: marketplace_remote_synchronisations_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-remote-synchronisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteSynchronisation' description: '' put: operationId: marketplace_remote_synchronisations_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-remote-synchronisations requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteSynchronisationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteSynchronisation' description: '' patch: operationId: marketplace_remote_synchronisations_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-remote-synchronisations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRemoteSynchronisationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteSynchronisation' description: '' delete: operationId: marketplace_remote_synchronisations_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-remote-synchronisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-remote-synchronisations/{uuid}/run_synchronisation/: post: operationId: marketplace_remote_synchronisations_run_synchronisation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-remote-synchronisations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteSynchronisation' description: '' /api/marketplace-resource-offerings/{category_uuid}/: get: operationId: marketplace_resource_offerings_list parameters: - in: path name: category_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-resource-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourceOffering' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-resource-users/: get: operationId: marketplace_resource_users_list description: Returns a paginated list of users associated with resources, including their roles. The list is filtered based on the permissions of the current user. Staff and support users can see all resource-user links. Other users can only see links for resources they have access to. summary: List resource users parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_name schema: type: string description: Role name - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: marketplace_offering_user_roles_retrieve - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve tags: - marketplace-resource-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourceUser' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_resource_users_create description: Creates a new association between a user and a resource with a specific role. The user must have permission to manage users for the resource (typically service provider staff or owners). summary: Link a user to a resource tags: - marketplace-resource-users requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceUserRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ResourceUser' description: '' head: operationId: marketplace_resource_users_count description: Get number of items in the collection matching the request parameters. summary: List resource users parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_name schema: type: string description: Role name - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: marketplace_offering_user_roles_retrieve - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve tags: - marketplace-resource-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-resource-users/{uuid}/: get: operationId: marketplace_resource_users_retrieve description: Returns details of a specific link between a user and a resource, including their role. summary: Retrieve a resource-user link parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resource-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceUser' description: '' delete: operationId: marketplace_resource_users_destroy description: Removes the association between a user and a resource, effectively revoking their role on that resource. The user must have permission to manage users for the resource. summary: Unlink a user from a resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resource-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-resources/: get: operationId: marketplace_resources_list description: Returns a paginated list of resources accessible to the current user as a service consumer. summary: List consumer resources parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: component_count schema: type: number description: Filter by exact number of components - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: downscaled schema: type: boolean description: Downscaled - in: query name: field schema: type: array items: $ref: '#/components/schemas/ResourceFieldEnum' - in: query name: has_terminate_date schema: type: boolean description: Has termination date - in: query name: is_attached schema: type: boolean description: Filter by attached state - in: query name: lexis_links_supported schema: type: boolean description: LEXIS links supported - in: query name: limit_based schema: type: boolean description: Filter by limit-based offerings - in: query name: limit_component_count schema: type: number description: Filter by exact number of limit-based components - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_billable schema: type: boolean description: Offering billable - in: query name: offering_shared schema: type: boolean description: Offering shared - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: string description: Offering type - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: only_limit_based schema: type: boolean description: Filter resources with only limit-based components - in: query name: only_usage_based schema: type: boolean description: Filter resources with only usage-based components - in: query name: order_state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: paused schema: type: boolean description: Paused - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor - in: query name: restrict_member_access schema: type: boolean description: Restrict member access - in: query name: runtime_state schema: type: string description: Runtime state - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ResourceState' description: |+ Resource state explode: true style: form - in: query name: usage_based schema: type: boolean description: Filter by usage-based offerings - in: query name: visible_to_providers schema: type: boolean description: Include only resources visible to service providers - in: query name: visible_to_username schema: type: string description: Visible to username tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Resource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_resources_count description: Get number of items in the collection matching the request parameters. summary: List consumer resources parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: component_count schema: type: number description: Filter by exact number of components - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: downscaled schema: type: boolean description: Downscaled - in: query name: has_terminate_date schema: type: boolean description: Has termination date - in: query name: is_attached schema: type: boolean description: Filter by attached state - in: query name: lexis_links_supported schema: type: boolean description: LEXIS links supported - in: query name: limit_based schema: type: boolean description: Filter by limit-based offerings - in: query name: limit_component_count schema: type: number description: Filter by exact number of limit-based components - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_billable schema: type: boolean description: Offering billable - in: query name: offering_shared schema: type: boolean description: Offering shared - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: string description: Offering type - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: only_limit_based schema: type: boolean description: Filter resources with only limit-based components - in: query name: only_usage_based schema: type: boolean description: Filter resources with only usage-based components - in: query name: order_state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: paused schema: type: boolean description: Paused - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor - in: query name: restrict_member_access schema: type: boolean description: Restrict member access - in: query name: runtime_state schema: type: string description: Runtime state - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ResourceState' description: |+ Resource state explode: true style: form - in: query name: usage_based schema: type: boolean description: Filter by usage-based offerings - in: query name: visible_to_providers schema: type: boolean description: Include only resources visible to service providers - in: query name: visible_to_username schema: type: string description: Visible to username tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-resources/{uuid}/: get: operationId: marketplace_resources_retrieve description: Returns details of a specific resource accessible to the consumer. summary: Retrieve a consumer resource parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ResourceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Resource' description: '' put: operationId: marketplace_resources_update description: Updates the name, description, or end date of a resource. summary: Update a consumer resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceUpdate' description: '' x-permissions: - permission: RESOURCE.UPDATE scopes: - project - project.customer - offering - offering.customer patch: operationId: marketplace_resources_partial_update description: Partially updates the name, description, or end date of a resource. summary: Partially update a consumer resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedResourceUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceUpdate' description: '' x-permissions: - permission: RESOURCE.UPDATE scopes: - project - project.customer - offering - offering.customer /api/marketplace-resources/{uuid}/details/: get: operationId: marketplace_resources_details_retrieve description: Returns the detailed representation of the backend resource associated with the marketplace resource. The format of the response depends on the resource type. summary: Get resource details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: null description: '' '204': content: application/json: schema: null description: '' /api/marketplace-resources/{uuid}/estimate_renewal/: post: operationId: marketplace_resources_estimate_renewal summary: Estimate renewal cost breakdown parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/RenewalEstimateRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RenewalEstimateResponse' description: '' x-permissions: - permission: RESOURCE.SET_LIMITS scopes: - project - project.customer /api/marketplace-resources/{uuid}/glauth_users_config/: get: operationId: marketplace_resources_glauth_users_config_retrieve description: "\n This endpoint provides a GLauth configuration file for\ \ the users associated with the project of this resource.\n It is intended\ \ for use by an external agent to synchronize user data from Waldur to GLauth.\n\ \ " summary: Get GLauth user configuration for a resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: text/plain: schema: type: string description: '' /api/marketplace-resources/{uuid}/history/: get: operationId: marketplace_resources_history_list description: Returns the version history for this object. Only accessible by staff and support users. summary: Get version history parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: component_count schema: type: number description: Filter by exact number of components - in: query name: created schema: type: string format: date-time description: Created after - in: query name: created_after schema: type: string description: Filter versions created after this timestamp (ISO 8601) - in: query name: created_before schema: type: string description: Filter versions created before this timestamp (ISO 8601) - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: downscaled schema: type: boolean description: Downscaled - in: query name: has_terminate_date schema: type: boolean description: Has termination date - in: query name: is_attached schema: type: boolean description: Filter by attached state - in: query name: lexis_links_supported schema: type: boolean description: LEXIS links supported - in: query name: limit_based schema: type: boolean description: Filter by limit-based offerings - in: query name: limit_component_count schema: type: number description: Filter by exact number of limit-based components - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_billable schema: type: boolean description: Offering billable - in: query name: offering_shared schema: type: boolean description: Offering shared - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_type schema: type: string description: Offering type - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: only_limit_based schema: type: boolean description: Filter resources with only limit-based components - in: query name: only_usage_based schema: type: boolean description: Filter resources with only usage-based components - in: query name: order_state schema: type: array items: $ref: '#/components/schemas/OrderState' description: |+ Order state explode: true style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: paused schema: type: boolean description: Paused - in: query name: plan_uuid schema: type: string format: uuid description: Plan UUID x-waldur-operation-id: marketplace_plans_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: query schema: type: string description: Search by resource UUID, name, slug, backend ID, effective ID, IPs or hypervisor - in: query name: restrict_member_access schema: type: boolean description: Restrict member access - in: query name: runtime_state schema: type: string description: Runtime state - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ResourceState' description: |+ Resource state explode: true style: form - in: query name: usage_based schema: type: boolean description: Filter by usage-based offerings - in: path name: uuid schema: type: string format: uuid required: true - in: query name: visible_to_providers schema: type: boolean description: Include only resources visible to service providers - in: query name: visible_to_username schema: type: string description: Visible to username tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-resources/{uuid}/history/at/: get: operationId: marketplace_resources_history_at_retrieve description: Returns the state of the object as it was at the specified timestamp. Only accessible by staff and support users. summary: Get object state at a specific timestamp parameters: - in: query name: timestamp schema: type: string description: ISO 8601 timestamp to query the object state at required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VersionHistory' description: '' '400': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: type: object additionalProperties: {} description: '' /api/marketplace-resources/{uuid}/move_resource/: post: operationId: marketplace_resources_move_resource description: Moves a resource and its associated data to a different project. Requires staff permissions. summary: Move a resource to another project parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/MoveResourceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Resource' description: '' /api/marketplace-resources/{uuid}/offering/: get: operationId: marketplace_resources_offering_retrieve description: Returns details of the offering connected to the requested object. summary: Get offering details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicOfferingDetails' description: '' /api/marketplace-resources/{uuid}/offering_for_subresources/: get: operationId: marketplace_resources_offering_for_subresources_list description: Returns a list of offerings that can be provisioned as sub-resources of the current resource. summary: List offerings for sub-resources parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SubresourceOffering' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-resources/{uuid}/plan_periods/: get: operationId: marketplace_resources_plan_periods_list description: Returns a list of active and future plan periods for the resource. Each period includes the plan details and current component usage. summary: List resource plan periods parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourcePlanPeriod' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-resources/{uuid}/pull/: post: operationId: marketplace_resources_pull description: Schedules a task to pull the latest data for the resource from its backend. summary: Pull resource data parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: type: object properties: detail: type: string description: '' /api/marketplace-resources/{uuid}/reallocate_limits/: post: operationId: marketplace_resources_reallocate_limits description: Creates marketplace orders to reallocate limits from source resource to target resources. summary: Reallocate resource limits parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceReallocateLimitsRequest' examples: ReallocateLimits: value: limits: cores: 2 ram: 4 targets: - resource_uuid: 550e8400-e29b-41d4-a716-446655440000 allocated_limits: cores: 1 ram: 2 - resource_uuid: 660e8400-e29b-41d4-a716-446655440001 allocated_limits: cores: 1 ram: 2 summary: Reallocate limits required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceReallocateLimitsResponse' examples: ReallocateLimits: value: limits: cores: 2 ram: 4 targets: - resource_uuid: 550e8400-e29b-41d4-a716-446655440000 allocated_limits: cores: 1 ram: 2 - resource_uuid: 660e8400-e29b-41d4-a716-446655440001 allocated_limits: cores: 1 ram: 2 summary: Reallocate limits description: '' x-permissions: - permission: RESOURCE.SET_LIMITS scopes: - project - project.customer /api/marketplace-resources/{uuid}/renew/: post: operationId: marketplace_resources_renew description: Creates a renewal order to extend the subscription period of a prepaid resource. Optionally, limits can be upgraded at the same time. summary: Renew a prepaid resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceRenewRequest' examples: RenewFor12MonthsWithLimitUpgrade: value: extension_months: 12 limits: storage: 200 summary: Renew for 12 months with limit upgrade RenewFor6MonthsWithoutChangingLimits: value: extension_months: 6 summary: Renew for 6 months without changing limits application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ResourceRenewRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ResourceRenewRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderUUID' examples: RenewFor12MonthsWithLimitUpgrade: value: extension_months: 12 limits: storage: 200 summary: Renew for 12 months with limit upgrade RenewFor6MonthsWithoutChangingLimits: value: extension_months: 6 summary: Renew for 6 months without changing limits description: '' x-permissions: - permission: RESOURCE.SET_LIMITS scopes: - project - project.customer /api/marketplace-resources/{uuid}/restore/: post: operationId: marketplace_resources_restore parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Resource' description: '' /api/marketplace-resources/{uuid}/set_downscaled/: post: operationId: marketplace_resources_set_downscaled description: Sets the 'downscaled' flag for a resource. Requires staff permissions. summary: Set downscaled flag for resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceDownscaledRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' /api/marketplace-resources/{uuid}/set_end_date_by_staff/: post: operationId: marketplace_resources_set_end_date_by_staff description: Allows a staff user to set or update the end date for a resource, which will schedule it for termination. summary: Set end date of the resource by staff parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceEndDateByProviderRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-resources/{uuid}/set_paused/: post: operationId: marketplace_resources_set_paused description: Sets the 'paused' flag for a resource. Requires staff permissions. summary: Set paused flag for resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourcePausedRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' /api/marketplace-resources/{uuid}/set_restrict_member_access/: post: operationId: marketplace_resources_set_restrict_member_access description: Sets the 'restrict_member_access' flag for a resource. Requires staff permissions. summary: Set restrict member access flag parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceRestrictMemberAccessRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' /api/marketplace-resources/{uuid}/set_slug/: post: operationId: marketplace_resources_set_slug description: Updates the slug for a resource. Requires staff permissions. summary: Set resource slug parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceSlugRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: status: type: string description: '' /api/marketplace-resources/{uuid}/switch_plan/: post: operationId: marketplace_resources_switch_plan description: Creates a marketplace order to switch the billing plan for a resource. This action is asynchronous and may require approval. summary: Switch resource plan parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceSwitchPlanRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderUUID' description: '' x-permissions: - permission: RESOURCE.SET_PLAN scopes: - project - project.customer /api/marketplace-resources/{uuid}/team/: get: operationId: marketplace_resources_team_list description: Returns a list of users connected to the project of this resource, including their project roles and offering-specific usernames. summary: Get resource team parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectUser' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-resources/{uuid}/terminate/: post: operationId: marketplace_resources_terminate description: Creates a marketplace order to terminate the resource. This action is asynchronous and may require approval. summary: Terminate a resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceTerminateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderUUID' description: '' x-permissions: - permission: RESOURCE.TERMINATE scopes: - project - project.customer - offering.customer /api/marketplace-resources/{uuid}/unlink/: post: operationId: marketplace_resources_unlink description: Forcefully deletes a marketplace resource and its related plugin resource from the database. This action does not schedule operations on the backend and is intended for cleaning up resources stuck in transitioning states. Requires staff permissions. summary: Unlink a resource (staff only) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body '403': description: No response body /api/marketplace-resources/{uuid}/update_limits/: post: operationId: marketplace_resources_update_limits description: Creates a marketplace order to update the limits (e.g., CPU, RAM) for a resource. This action is asynchronous and may require approval. summary: Update resource limits parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceUpdateLimitsRequest' examples: UpdateResourceLimits: value: limits: cpu: 4 ram_gb: 8 summary: Update resource limits required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderUUID' examples: UpdateResourceLimits: value: limits: cpu: 4 ram_gb: 8 summary: Update resource limits description: '' x-permissions: - permission: RESOURCE.SET_LIMITS scopes: - project - project.customer /api/marketplace-resources/{uuid}/update_options/: post: operationId: marketplace_resources_update_options description: Updates the options of a resource. If the offering is configured to create orders for option changes, a new UPDATE order will be created. Otherwise, the options are updated directly. summary: Update resource options parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceOptionsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourceResponseStatus' description: '' '201': content: application/json: schema: $ref: '#/components/schemas/OrderUUID' description: '' '409': description: No response body x-permissions: - permission: RESOURCE.UPDATE_OPTIONS scopes: - project - project.customer - offering.customer /api/marketplace-resources/suggest_name/: post: operationId: marketplace_resources_suggest_name description: 'Generates a suggested name for a new resource based on the project and offering. If the offering has a `resource_name_pattern` in `plugin_options`, it is used as a Python format string with variables: `{customer_name}`, `{customer_slug}`, `{project_name}`, `{project_slug}`, `{offering_name}`, `{offering_slug}`, `{plan_name}`, `{counter}`, and `{attributes[KEY]}` for any order form value.' summary: Suggest a resource name tags: - marketplace-resources requestBody: content: application/json: schema: $ref: '#/components/schemas/ResourceSuggestNameRequest' examples: SuggestANameForANewResource: value: project: a1b2c3d4-e5f6-7890-1234-567890abcdef offering: b2c3d4e5-f678-9012-3456-7890abcdef12 summary: Suggest a name for a new resource required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: name: type: string examples: ExampleResponseWithSuggestedName: value: name: customer-slug-project-slug-offering-slug-1 summary: Example response with suggested name description: '' /api/marketplace-robot-accounts/: get: operationId: marketplace_robot_accounts_list description: Returns a paginated list of robot accounts accessible to the current user. summary: List robot accounts parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: field schema: type: array items: $ref: '#/components/schemas/RobotAccountDetailsFieldEnum' - in: query name: modified schema: type: string format: date-time description: Modified after - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: state schema: $ref: '#/components/schemas/RemoteResourceSyncStatusRemoteStateEnum' description: |+ Robot account state - in: query name: type schema: type: string tags: - marketplace-robot-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RobotAccountDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_robot_accounts_create description: Creates a new robot account for a specific resource. This is typically used for automated access to a resource, e.g., for CI/CD pipelines. summary: Create a robot account tags: - marketplace-robot-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/RobotAccountRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RobotAccount' description: '' head: operationId: marketplace_robot_accounts_count description: Get number of items in the collection matching the request parameters. summary: List robot accounts parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: modified schema: type: string format: date-time description: Modified after - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: provider_uuid schema: type: string format: uuid description: Provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: resource schema: type: string format: uri description: Resource URL x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: state schema: $ref: '#/components/schemas/RemoteResourceSyncStatusRemoteStateEnum' description: |+ Robot account state - in: query name: type schema: type: string tags: - marketplace-robot-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-robot-accounts/{uuid}/: get: operationId: marketplace_robot_accounts_retrieve description: Returns the details of a specific robot account. summary: Retrieve a robot account parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RobotAccountDetailsFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RobotAccountDetails' description: '' put: operationId: marketplace_robot_accounts_update description: Updates the properties of a robot account, such as its username or associated users. Not allowed for synchronized remote accounts. summary: Update a robot account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/RobotAccountRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RobotAccount' description: '' patch: operationId: marketplace_robot_accounts_partial_update description: Partially updates the properties of a robot account. Not allowed for synchronized remote accounts. summary: Partially update a robot account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRobotAccountRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RobotAccount' description: '' delete: operationId: marketplace_robot_accounts_destroy description: Deletes a robot account. This is a hard delete and should be used with caution. summary: Delete a robot account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: RESOURCE.DELETE_ROBOT_ACCOUNT scopes: - resource.offering.customer /api/marketplace-robot-accounts/{uuid}/set_state_creating/: post: operationId: marketplace_robot_accounts_set_state_creating description: Transitions the robot account state from 'Requested' to 'Creating'. This is typically used by an agent to signal that the creation process has started. summary: Set robot account state to creating parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RobotAccountDetails' description: '' '400': content: application/json: schema: $ref: '#/components/schemas/StateTransitionError' description: '' x-permissions: - permission: RESOURCE.UPDATE_ROBOT_ACCOUNT scopes: - resource.offering.customer /api/marketplace-robot-accounts/{uuid}/set_state_deleted/: post: operationId: marketplace_robot_accounts_set_state_deleted description: Transitions the robot account state from 'Requested deletion' to 'Deleted', marking the successful completion of the deletion process. summary: Set robot account state to deleted parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RobotAccountDetails' description: '' '400': content: application/json: schema: $ref: '#/components/schemas/StateTransitionError' description: '' x-permissions: - permission: RESOURCE.UPDATE_ROBOT_ACCOUNT scopes: - resource.offering.customer /api/marketplace-robot-accounts/{uuid}/set_state_erred/: post: operationId: marketplace_robot_accounts_set_state_erred description: Manually moves the robot account into the 'Error' state. An optional error message can be provided. summary: Set robot account state to erred parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts requestBody: content: application/json: schema: $ref: '#/components/schemas/RobotAccountErrorRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RobotAccountDetails' description: '' '400': content: application/json: schema: $ref: '#/components/schemas/StateTransitionError' description: '' x-permissions: - permission: RESOURCE.UPDATE_ROBOT_ACCOUNT scopes: - resource.offering.customer /api/marketplace-robot-accounts/{uuid}/set_state_ok/: post: operationId: marketplace_robot_accounts_set_state_ok description: Manually sets the robot account state to 'OK', indicating that it is fully operational. This can be used to recover from an error state. summary: Set robot account state to OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RobotAccountDetails' description: '' '400': content: application/json: schema: $ref: '#/components/schemas/StateTransitionError' description: '' x-permissions: - permission: RESOURCE.UPDATE_ROBOT_ACCOUNT scopes: - resource.offering.customer /api/marketplace-robot-accounts/{uuid}/set_state_request_deletion/: post: operationId: marketplace_robot_accounts_set_state_request_deletion description: Transitions the robot account state from 'OK' to 'Requested deletion', initiating the deletion process. summary: Request deletion of a robot account parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-robot-accounts security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RobotAccountDetails' description: '' '400': content: application/json: schema: $ref: '#/components/schemas/StateTransitionError' description: '' x-permissions: - permission: RESOURCE.UPDATE_ROBOT_ACCOUNT scopes: - resource.offering.customer /api/marketplace-runtime-states/: get: operationId: marketplace_runtime_states_list description: "\n Returns a unique, sorted list of runtime states for\ \ all resources accessible to the current user.\n The runtime state\ \ is a backend-specific state of a resource (e.g., 'ACTIVE', 'SHUTOFF' for\ \ a VM).\n This endpoint is useful for building dynamic filters in\ \ a user interface.\n The list can be optionally filtered by project\ \ or category.\n " summary: List available runtime states for resources parameters: - in: query name: category_uuid schema: type: string format: uuid description: Filter runtime states by resources belonging to a specific category. x-waldur-operation-id: marketplace_categories_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Filter runtime states by resources within a specific project. x-waldur-operation-id: projects_retrieve tags: - marketplace-runtime-states security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RuntimeStates' examples: ExampleResponseForRuntimeStates: value: - - value: ACTIVE label: active - value: BUILDING label: building - value: SHUTOFF label: shutoff summary: A list of unique runtime states found for the user's resources. description: The response is a list of objects, each containing a `value` (the raw state from the backend) and a `label` (a lowercase version for display). description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-screenshots/: get: operationId: marketplace_screenshots_list parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementTemplateOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-screenshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Screenshot' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_screenshots_create tags: - marketplace-screenshots requestBody: content: application/json: schema: $ref: '#/components/schemas/ScreenshotRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ScreenshotRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ScreenshotRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Screenshot' description: '' head: operationId: marketplace_screenshots_count parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementTemplateOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_slug schema: type: array items: type: string description: Multiple values may be separated by commas. explode: false style: form - in: query name: offering_uuid schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - marketplace-screenshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-screenshots/{uuid}/: get: operationId: marketplace_screenshots_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-screenshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Screenshot' description: '' put: operationId: marketplace_screenshots_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-screenshots requestBody: content: application/json: schema: $ref: '#/components/schemas/ScreenshotRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ScreenshotRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ScreenshotRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Screenshot' description: '' patch: operationId: marketplace_screenshots_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-screenshots requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedScreenshotRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Screenshot' description: '' delete: operationId: marketplace_screenshots_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-screenshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.DELETE_SCREENSHOT scopes: - offering.customer /api/marketplace-script-async-dry-run/: get: operationId: marketplace_script_async_dry_run_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-script-async-dry-run security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/DryRun' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_script_async_dry_run_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-script-async-dry-run security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-script-async-dry-run/{uuid}/: get: operationId: marketplace_script_async_dry_run_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-script-async-dry-run security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DryRun' description: '' /api/marketplace-script-dry-run/{uuid}/async_run/: post: operationId: marketplace_script_dry_run_async_run parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-script-dry-run requestBody: content: application/json: schema: $ref: '#/components/schemas/DryRunRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicOfferingDetails' description: '' x-permissions: - permission: OFFERING.DRY_RUN_SCRIPT scopes: - '*' - customer /api/marketplace-script-dry-run/{uuid}/run/: post: operationId: marketplace_script_dry_run_run parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-script-dry-run requestBody: content: application/json: schema: $ref: '#/components/schemas/DryRunRequest' examples: Dry-runOrderExample: value: plan: http://127.0.0.1:8000/api/marketplace-plans/ed80e1047eeb4c9eb67f6e61b98977bc/ type: Update summary: Create required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicOfferingDetails' description: '' x-permissions: - permission: OFFERING.DRY_RUN_SCRIPT scopes: - '*' - customer /api/marketplace-script-sync-resource/: post: operationId: marketplace_script_sync_resource description: Pull a marketplace script resource. summary: |- This view allows a user to trigger a pull operation for a marketplace script resource. The user must be a service consumer and have access to the resource. The pull operation is performed asynchronously using Celery. tags: - marketplace-script-sync-resource requestBody: content: application/json: schema: $ref: '#/components/schemas/PullMarketplaceScriptResourceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body '404': description: No response body /api/marketplace-sections/: get: operationId: marketplace_sections_list description: Returns a paginated list of all sections. Sections are used to group attributes within a category. summary: List sections parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-sections security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Section' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_sections_create description: Creates a new section within a category. Requires staff permissions. summary: Create a section tags: - marketplace-sections requestBody: content: application/json: schema: $ref: '#/components/schemas/SectionRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Section' description: '' head: operationId: marketplace_sections_count description: Get number of items in the collection matching the request parameters. summary: List sections parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-sections security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-sections/{key}/: get: operationId: marketplace_sections_retrieve description: Returns the details of a specific section, identified by its key. summary: Retrieve a section parameters: - in: path name: key schema: type: string description: A unique value identifying this section. required: true tags: - marketplace-sections security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Section' description: '' put: operationId: marketplace_sections_update description: Updates an existing section. Requires staff permissions. summary: Update a section parameters: - in: path name: key schema: type: string description: A unique value identifying this section. required: true tags: - marketplace-sections requestBody: content: application/json: schema: $ref: '#/components/schemas/SectionRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Section' description: '' patch: operationId: marketplace_sections_partial_update description: Partially updates an existing section. Requires staff permissions. summary: Partially update a section parameters: - in: path name: key schema: type: string description: A unique value identifying this section. required: true tags: - marketplace-sections requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedSectionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Section' description: '' delete: operationId: marketplace_sections_destroy description: Deletes a section. Requires staff permissions. summary: Delete a section parameters: - in: path name: key schema: type: string description: A unique value identifying this section. required: true tags: - marketplace-sections security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-service-providers/: get: operationId: marketplace_service_providers_list description: Returns a paginated list of service providers. summary: List service providers parameters: - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string description: Customer keyword (name, abbreviation or native name) - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: field schema: type: array items: $ref: '#/components/schemas/ServiceProviderFieldEnum' - in: query name: o schema: type: array items: $ref: '#/components/schemas/CallManagingOrganisationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ServiceProvider' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_service_providers_create description: Creates a new service provider profile for a customer. summary: Create a service provider tags: - marketplace-service-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/ServiceProviderRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ServiceProviderRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ServiceProviderRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ServiceProvider' description: '' head: operationId: marketplace_service_providers_count description: Get number of items in the collection matching the request parameters. summary: List service providers parameters: - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string description: Customer keyword (name, abbreviation or native name) - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/CallManagingOrganisationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-service-providers/{service_provider_uuid}/compliance/checklists_summary/: get: operationId: service_provider_checklists_summary description: Returns a summary of all compliance checklists used by this service provider with usage counts. summary: Get summary of compliance checklists parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: service_provider_uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ServiceProviderChecklistSummary' description: '' description: '' /api/marketplace-service-providers/{service_provider_uuid}/compliance/compliance_overview/: get: operationId: service_provider_compliance_overview description: Returns compliance overview statistics for all offerings managed by this service provider. summary: Get compliance overview for a service provider parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: service_provider_uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ServiceProviderComplianceOverview' description: '' description: '' /api/marketplace-service-providers/{service_provider_uuid}/compliance/offering_users/: get: operationId: service_provider_offering_users_compliance description: Returns a list of offering users with their compliance status for this service provider. Can be filtered by offering and compliance status. summary: List offering users' compliance status parameters: - in: query name: compliance_status schema: type: string description: 'Filter by compliance status: completed, pending, no_checklist.' - in: query name: offering_uuid schema: type: string format: uuid description: Filter by offering UUID. x-waldur-operation-id: marketplace_provider_offerings_list - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: service_provider_uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ServiceProviderOfferingUserCompliance' description: '' description: '' /api/marketplace-service-providers/{service_provider_uuid}/course_accounts/: get: operationId: marketplace_service_providers_course_accounts_list description: "Returns a paginated list of course project accounts that have\ \ access to resources managed by the provider.\n\n This includes:\n\ \ - Projects with active resources of the service provider.\n \ \ - Course accounts with non-blank users.\n " summary: List course project accounts for a service provider parameters: - in: query name: email schema: type: string description: Email contains - in: query name: o schema: type: array items: $ref: '#/components/schemas/CourseAccountOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_end_date_after schema: type: string format: date description: Project end date range - in: query name: project_end_date_before schema: type: string format: date description: Project end date range - in: query name: project_start_date_after schema: type: string format: date description: Project start date range - in: query name: project_start_date_before schema: type: string format: date description: Project start date range - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Course account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CourseAccount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/customer_projects/: get: operationId: marketplace_service_providers_customer_projects_list description: Returns a paginated list of projects belonging to a specific customer that have consumed resources from the specified service provider. summary: List customer projects of a service provider parameters: - in: query name: backend_id schema: type: string - in: query name: can_admin schema: type: boolean description: Return a list of projects where current user is admin. - in: query name: can_manage schema: type: boolean description: Return a list of projects where current user is manager or a customer owner. - in: query name: conceal_finished_projects schema: type: boolean description: Conceal finished projects - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: description schema: type: string description: Description - in: query name: field schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerProjectFieldEnum' - in: query name: is_removed schema: type: boolean description: Is removed - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerProjectOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_customer_uuid schema: type: string format: uuid description: UUID of the customer to filter projects by. required: true x-waldur-operation-id: customers_retrieve - in: query name: query schema: type: string description: Filter by name, slug, UUID, backend ID or resource effective ID - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: slug schema: type: string description: Slug tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerProject' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/customers/: get: operationId: marketplace_service_providers_customers_list description: Returns a paginated list of customers who have consumed resources from the specified service provider. summary: List customers of a service provider parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: field schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: path name: service_provider_uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/keys/: get: operationId: marketplace_service_providers_keys_list description: Returns a paginated list of SSH public keys for all users who have consumed resources from the specified service provider. summary: List SSH keys of a service provider parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: field schema: type: array items: $ref: '#/components/schemas/SshKeyFieldEnum' - in: query name: fingerprint_md5 schema: type: string - in: query name: fingerprint_sha256 schema: type: string - in: query name: fingerprint_sha512 schema: type: string - in: query name: is_shared schema: type: boolean - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/SshKeyOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SshKey' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/offerings/: get: operationId: marketplace_service_providers_offerings_list description: Returns a paginated list of all billable, shared offerings provided by the specified service provider. summary: List offerings of a service provider parameters: - in: query name: accessible_via_calls schema: type: boolean description: Accessible via calls - in: query name: allowed_customer_uuid schema: type: string format: uuid description: Allowed customer UUID x-waldur-operation-id: customers_retrieve - in: query name: attributes schema: type: string description: Offering attributes (JSON) - in: query name: billable schema: type: boolean description: Billable - in: query name: can_create_offering_user schema: type: boolean - in: query name: category_group_uuid schema: type: string format: uuid description: Category group UUID x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: category_uuid schema: type: string format: uuid description: Category UUID x-waldur-operation-id: marketplace_categories_retrieve - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: string format: uri description: Customer URL x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description contains - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProviderOfferingFieldEnum' - in: query name: has_active_terms_of_service schema: type: boolean description: Has Active Terms of Service - in: query name: has_terms_of_service schema: type: boolean description: Has Terms of Service - in: query name: keyword schema: type: string description: Keyword - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderOfferingDetailsOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_group_uuid schema: type: string format: uuid description: Organization group UUID x-waldur-operation-id: organization_groups_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent_uuid schema: type: string format: uuid description: Parent offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by offering name, slug or description - in: query name: resource_customer_uuid schema: type: string format: uuid description: Resource customer UUID x-waldur-operation-id: customers_retrieve - in: query name: resource_project_uuid schema: type: string format: uuid description: Resource project UUID x-waldur-operation-id: projects_retrieve - in: query name: scope_uuid schema: type: string description: Scope UUID x-waldur-operation-id: service_settings_retrieve - in: query name: service_manager_uuid schema: type: string format: uuid description: Service manager UUID x-waldur-operation-id: users_retrieve - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: shared schema: type: boolean description: Shared - in: query name: state schema: type: array items: $ref: '#/components/schemas/OfferingState' description: |+ Offering state explode: true style: form - in: query name: tag schema: type: array items: type: string format: uuid description: Tag UUID (OR logic) explode: true style: form - in: query name: tag_name schema: type: array items: type: string description: Tag name (OR logic) explode: true style: form - in: query name: tag_names_and schema: type: string description: Tag names with AND logic (comma-separated) - in: query name: tags_and schema: type: string description: Tag UUIDs with AND logic (comma-separated) - in: query name: type schema: type: array items: type: string description: Offering type explode: true style: form - in: query name: user_has_consent schema: type: boolean description: User Has Consent - in: query name: user_has_offering_user schema: type: boolean description: User Has Offering User - in: query name: uuid_list schema: type: string description: Comma-separated offering UUIDs tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProviderOffering' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/project_permissions/: get: operationId: marketplace_service_providers_project_permissions_list description: Returns a paginated list of project permissions for all projects that have consumed resources from the specified service provider. summary: List project permissions of a service provider parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: expiration_time schema: type: string format: date-time - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProjectPermissionLogFieldEnum' - in: query name: full_name schema: type: string description: User full name contains - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: native_name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingPermissionOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string description: Role name contains - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: roles_retrieve - in: query name: scope_name schema: type: string description: Scope name - in: query name: scope_type schema: type: string description: Scope type - in: query name: scope_uuid schema: type: string description: Scope UUID - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug contains - in: query name: user_url schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: username schema: type: string tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectPermissionLog' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/project_service_accounts/: get: operationId: marketplace_service_providers_project_service_accounts_list description: "Returns a paginated list of project service accounts that have\ \ access to resources managed by the provider.\n\n This includes:\n\ \ - Projects with active resources of the service provider.\n \ \ - Service accounts with non-blank usernames.\n " summary: List project service accounts for a service provider parameters: - in: query name: email schema: type: string description: Email contains - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri description: Project URL x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: state schema: type: array items: $ref: '#/components/schemas/ServiceAccountState' description: |+ Service account state explode: true style: form - in: query name: username schema: type: string description: Username tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectServiceAccount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/projects/: get: operationId: marketplace_service_providers_projects_list description: Returns a paginated list of all projects that have consumed resources from the specified service provider. summary: List projects of a service provider parameters: - in: query name: backend_id schema: type: string - in: query name: can_admin schema: type: boolean description: Return a list of projects where current user is admin. - in: query name: can_manage schema: type: boolean description: Return a list of projects where current user is manager or a customer owner. - in: query name: conceal_finished_projects schema: type: boolean description: Conceal finished projects - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: description schema: type: string description: Description - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProjectFieldEnum' - in: query name: is_removed schema: type: boolean description: Is removed - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerProjectOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, slug, UUID, backend ID or resource effective ID - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: slug schema: type: string description: Slug tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Project' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/user_customers/: get: operationId: marketplace_service_providers_user_customers_list description: "Returns a paginated list of customers that a specified user has\ \ access to within the scope of a service provider.\n\n This includes:\n\ \ - Customers where the user has direct permissions.\n - Customers\ \ with projects where the user has project roles.\n - Customers related\ \ to the service provider's resources that the user can access.\n " summary: List customers of a specific user within a service provider's scope parameters: - in: query name: abbreviation schema: type: string description: Abbreviation - in: query name: agreement_number schema: type: string - in: query name: archived schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: contact_details schema: type: string description: Contact details - in: query name: current_user_has_project_create_permission schema: type: boolean description: Return a list of customers where current user has project create permission. - in: query name: field schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: native_name schema: type: string description: Native name - in: query name: organization_group_name schema: type: string description: Organization group name - in: query name: organization_group_uuid schema: type: array items: type: string format: uuid description: Organization group UUID explode: true style: form x-waldur-operation-id: organization_groups_retrieve - in: query name: owned_by_current_user schema: type: boolean description: Return a list of customers where current user is owner. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, native name, abbreviation, domain, UUID, registration code or agreement number - in: query name: registration_code schema: type: string - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: user_uuid schema: type: string format: uuid description: UUID of the user to get related customers for. required: true x-waldur-operation-id: users_retrieve tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{service_provider_uuid}/users/: get: operationId: marketplace_service_providers_users_list description: Returns a paginated list of all users who have consumed resources from the specified service provider. summary: List users of a service provider parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: field schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserFieldEnum' - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: path name: service_provider_uuid schema: type: string format: uuid required: true - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUser' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{uuid}/: get: operationId: marketplace_service_providers_retrieve description: Returns details of a specific service provider. summary: Retrieve a service provider parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ServiceProviderFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ServiceProvider' description: '' put: operationId: marketplace_service_providers_update description: Updates an existing service provider profile. summary: Update a service provider parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/ServiceProviderRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ServiceProviderRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ServiceProviderRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ServiceProvider' description: '' patch: operationId: marketplace_service_providers_partial_update description: Partially updates an existing service provider profile. summary: Partially update a service provider parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedServiceProviderRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedServiceProviderRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedServiceProviderRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ServiceProvider' description: '' delete: operationId: marketplace_service_providers_destroy description: Deletes a service provider profile. Only possible if there are no active offerings. summary: Delete a service provider parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-service-providers/{uuid}/add_user/: post: operationId: marketplace_service_providers_add_user description: Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set. summary: Grant a role to a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' examples: GrantProjectAdminRoleUntilEndOfYear: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2024-12-31' summary: Grant project admin role until end of year required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleGrantResponse: value: expiration_time: '2024-12-31T00:00:00Z' summary: Successful role grant response description: '' '400': description: Validation error, for example when trying to add a user to a terminated project. /api/marketplace-service-providers/{uuid}/api_secret_code/: get: operationId: service_provider_api_secret_code_retrieve description: Returns the API secret code for a service provider. Requires service provider owner permission. summary: Get service provider API secret code parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ServiceProviderApiSecretCode' description: '' post: operationId: service_provider_api_secret_code_generate description: Generates a new API secret code for a service provider, invalidating the old one. Requires service provider owner permission. summary: Generate new service provider API secret code parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ServiceProviderApiSecretCode' description: '' /api/marketplace-service-providers/{uuid}/delete_user/: post: operationId: marketplace_service_providers_delete_user description: Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role. summary: Revoke a role from a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleDeleteRequest' examples: RevokeProjectAdminRoleFromUser: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN summary: Revoke project admin role from user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role revoked successfully. /api/marketplace-service-providers/{uuid}/generate_site_agent_config/: post: operationId: marketplace_service_providers_generate_site_agent_config description: Generates a YAML configuration file for waldur-site-agent based on selected SLURM offerings. The configuration includes offering details, components, backend settings, and optionally SLURM periodic usage policy settings. Secrets are shown as placeholders that need to be filled in. summary: Generate site agent configuration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/SiteAgentConfigGenerationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: string format: binary description: '' x-permissions: - permission: SERVICE_PROVIDER.GET_API_SECRET_CODE scopes: - customer /api/marketplace-service-providers/{uuid}/list_users/: get: operationId: marketplace_service_providers_list_users_list description: 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. summary: List users and their roles in a scope parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsFieldEnum' description: Fields to include in response - in: query name: full_name schema: type: string description: User full name - in: query name: native_name schema: type: string description: User native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsOEnum' description: Ordering fields - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string format: uuid description: Role UUID or name x-waldur-operation-id: roles_retrieve - in: query name: search_string schema: type: string description: Search string for user - in: query name: user schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug - in: query name: user_url schema: type: string description: User URL - in: query name: username schema: type: string description: User username - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRoleDetails' description: '' examples: ExampleUserRoleListResponse: value: - - uuid: a7e6b0a29a434d2889273c5240217a26 created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' role_name: PROJECT.ADMIN role_uuid: d8c2d5852d434937985392d24249b6d3 user_email: alice@example.com user_full_name: Alice Smith user_username: alice user_uuid: 8f20242b638743b18a485f81ac685e13 user_image: null created_by_full_name: Bob Johnson created_by_uuid: b4e4c2f1a6f24a8d8e4c2f1a6f24a8d8 summary: Example user role list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-service-providers/{uuid}/revenue/: get: operationId: marketplace_service_providers_revenue_list description: Returns monthly revenue data for the last year for the service provider. summary: Get service provider revenue parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ServiceProviderRevenues' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: SERVICE_PROVIDER.GET_REVENUE scopes: - customer /api/marketplace-service-providers/{uuid}/robot_account_customers/: get: operationId: marketplace_service_providers_robot_account_customers_list description: Returns a paginated list of customers who have robot accounts for resources managed by this service provider. summary: List customers with robot accounts parameters: - in: query name: customer_name schema: type: string description: Filter by customer name (case-insensitive partial match). - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/NameUUID' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: SERVICE_PROVIDER.GET_ROBOT_ACCOUNT_CUSTOMERS scopes: - customer /api/marketplace-service-providers/{uuid}/robot_account_projects/: get: operationId: marketplace_service_providers_robot_account_projects_list description: Returns a paginated list of projects which have robot accounts for resources managed by this service provider. summary: List projects with robot accounts parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_name schema: type: string description: Filter by project name (case-insensitive partial match). - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/NameUUID' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: SERVICE_PROVIDER.GET_ROBOT_ACCOUNT_PROJECTS scopes: - customer /api/marketplace-service-providers/{uuid}/set_offerings_username/: post: operationId: marketplace_service_providers_set_offerings_username description: Sets or updates the offering-specific username for a user across all offerings managed by the service provider that the user has access to. summary: Set offering username for a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/SetOfferingsUsernameRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body x-permissions: - permission: SERVICE_PROVIDER.SET_OFFERINGS_USERNAME scopes: - customer /api/marketplace-service-providers/{uuid}/stat/: get: operationId: marketplace_service_providers_stat_retrieve description: Returns various statistics for the service provider, such as number of active campaigns, customers, and resources. summary: Get service provider statistics parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ServiceProviderStatistics' description: '' x-permissions: - permission: SERVICE_PROVIDER.GET_STATISTICS scopes: - customer /api/marketplace-service-providers/{uuid}/update_user/: post: operationId: marketplace_service_providers_update_user description: 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. summary: Update a user's role expiration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-service-providers requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleUpdateRequest' examples: ExtendRoleUntilMid-2025: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2025-06-30' summary: Extend role until mid-2025 MakeARolePermanent: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: null summary: Make a role permanent required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleUpdateResponse: value: expiration_time: '2025-06-30T00:00:00Z' summary: Successful role update response description: '' /api/marketplace-site-agent-connection-stats/: get: operationId: marketplace_site_agent_connection_stats_retrieve description: |- Returns connection status for all registered agents. For each agent identity, provides: - Agent metadata (name, version, offering) - Services and their states - Event subscriptions with RabbitMQ connection status - RabbitMQ queues associated with the agent's offering The RMQ connection data includes: - Whether the agent is currently connected - Connection source IP, timestamp, and state - Traffic statistics (bytes sent/received) Requires support user permissions. summary: Get agent connection statistics tags: - marketplace-site-agent-connection-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentConnectionStatsResponse' description: '' '503': content: application/json: schema: description: RabbitMQ unavailable description: '' /api/marketplace-site-agent-identities/: get: operationId: marketplace_site_agent_identities_list parameters: - in: query name: last_restarted schema: type: string format: date-time description: Last restarted after - in: query name: name schema: type: string - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: orphaned schema: type: boolean description: Has no services - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: version schema: type: string tags: - marketplace-site-agent-identities security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AgentIdentity' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_site_agent_identities_create tags: - marketplace-site-agent-identities requestBody: content: application/json: schema: $ref: '#/components/schemas/AgentIdentityRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/AgentIdentity' description: '' head: operationId: marketplace_site_agent_identities_count parameters: - in: query name: last_restarted schema: type: string format: date-time description: Last restarted after - in: query name: name schema: type: string - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: orphaned schema: type: boolean description: Has no services - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: version schema: type: string tags: - marketplace-site-agent-identities security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-site-agent-identities/{uuid}/: get: operationId: marketplace_site_agent_identities_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-identities security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentIdentity' description: '' put: operationId: marketplace_site_agent_identities_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-identities requestBody: content: application/json: schema: $ref: '#/components/schemas/AgentIdentityRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentIdentity' description: '' delete: operationId: marketplace_site_agent_identities_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-identities security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.CREATE scopes: - offering.customer /api/marketplace-site-agent-identities/{uuid}/register_event_subscription/: post: operationId: marketplace_site_agent_identities_register_event_subscription description: Register an event subscription for the specified agent identity and observable object type. Returns existing subscription if already exists. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-identities requestBody: content: application/json: schema: $ref: '#/components/schemas/AgentEventSubscriptionCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventSubscription' description: '' '201': content: application/json: schema: $ref: '#/components/schemas/EventSubscription' description: '' x-permissions: - permission: OFFERING.CREATE scopes: - offering.customer /api/marketplace-site-agent-identities/{uuid}/register_service/: post: operationId: marketplace_site_agent_identities_register_service description: Register a new processor or get the existing one for the agent service parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-identities requestBody: content: application/json: schema: $ref: '#/components/schemas/AgentServiceCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentService' description: '' '201': content: application/json: schema: $ref: '#/components/schemas/AgentService' description: '' x-permissions: - permission: OFFERING.CREATE scopes: - offering.customer /api/marketplace-site-agent-identities/cleanup_orphaned/: post: operationId: marketplace_site_agent_identities_cleanup_orphaned description: Remove agent identities that have no active services. Staff only. tags: - marketplace-site-agent-identities requestBody: content: application/json: schema: $ref: '#/components/schemas/CleanupRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CleanupResponse' description: '' /api/marketplace-site-agent-processors/: get: operationId: marketplace_site_agent_processors_list parameters: - in: query name: backend_type schema: type: string - in: query name: backend_version schema: type: string - in: query name: last_run schema: type: string format: date-time description: Last run after - in: query name: last_run_before schema: type: string format: date-time description: Last run before - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: service_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_site_agent_services_retrieve - in: query name: stale schema: type: boolean description: Last run more than 1 hour ago tags: - marketplace-site-agent-processors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AgentProcessor' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_site_agent_processors_count parameters: - in: query name: backend_type schema: type: string - in: query name: backend_version schema: type: string - in: query name: last_run schema: type: string format: date-time description: Last run after - in: query name: last_run_before schema: type: string format: date-time description: Last run before - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: service_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_site_agent_services_retrieve - in: query name: stale schema: type: boolean description: Last run more than 1 hour ago tags: - marketplace-site-agent-processors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-site-agent-processors/{uuid}/: get: operationId: marketplace_site_agent_processors_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-processors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentProcessor' description: '' delete: operationId: marketplace_site_agent_processors_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-processors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.CREATE scopes: - service.identity.offering.customer /api/marketplace-site-agent-services/: get: operationId: marketplace_site_agent_services_list parameters: - in: query name: identity_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_site_agent_identities_retrieve - in: query name: mode schema: type: string - in: query name: modified_after schema: type: string format: date-time description: Modified after - in: query name: modified_before schema: type: string format: date-time description: Modified before - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: stale schema: type: boolean description: Inactive for more than 24 hours - in: query name: state schema: type: array items: $ref: '#/components/schemas/AgentServiceStateEnum' explode: true style: form tags: - marketplace-site-agent-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AgentService' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_site_agent_services_count parameters: - in: query name: identity_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_site_agent_identities_retrieve - in: query name: mode schema: type: string - in: query name: modified_after schema: type: string format: date-time description: Modified after - in: query name: modified_before schema: type: string format: date-time description: Modified before - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: stale schema: type: boolean description: Inactive for more than 24 hours - in: query name: state schema: type: array items: $ref: '#/components/schemas/AgentServiceStateEnum' explode: true style: form tags: - marketplace-site-agent-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-site-agent-services/{uuid}/: get: operationId: marketplace_site_agent_services_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentService' description: '' delete: operationId: marketplace_site_agent_services_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.CREATE scopes: - identity.offering.customer /api/marketplace-site-agent-services/{uuid}/register_processor/: post: operationId: marketplace_site_agent_services_register_processor description: Register a new processor for the agent service parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-services requestBody: content: application/json: schema: $ref: '#/components/schemas/AgentProcessorCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentProcessor' description: '' '201': content: application/json: schema: $ref: '#/components/schemas/AgentProcessor' description: '' x-permissions: - permission: OFFERING.CREATE scopes: - identity.offering.customer /api/marketplace-site-agent-services/{uuid}/set_statistics/: post: operationId: marketplace_site_agent_services_set_statistics description: Update statistics for the agent service parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-site-agent-services requestBody: content: application/json: schema: $ref: '#/components/schemas/AgentServiceStatisticsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentService' description: '' x-permissions: - permission: OFFERING.CREATE scopes: - identity.offering.customer /api/marketplace-site-agent-services/cleanup_stale/: post: operationId: marketplace_site_agent_services_cleanup_stale description: Remove agent services that have been inactive for a specified time. Staff only. tags: - marketplace-site-agent-services requestBody: content: application/json: schema: $ref: '#/components/schemas/CleanupRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CleanupResponse' description: '' /api/marketplace-site-agent-stats/: get: operationId: marketplace_site_agent_stats_retrieve description: Get aggregated statistics about agent identities, services, and processors. Support users only. tags: - marketplace-site-agent-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentStatsResponse' description: '' /api/marketplace-site-agent-task-stats/: get: operationId: marketplace_site_agent_task_stats_retrieve description: Get Celery task status for agent-related tasks. Support users only. tags: - marketplace-site-agent-task-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AgentTaskStatsResponse' description: '' /api/marketplace-slurm-periodic-usage-policies/: get: operationId: marketplace_slurm_periodic_usage_policies_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-slurm-periodic-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SlurmPeriodicUsagePolicy' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_slurm_periodic_usage_policies_create tags: - marketplace-slurm-periodic-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmPeriodicUsagePolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SlurmPeriodicUsagePolicy' description: '' head: operationId: marketplace_slurm_periodic_usage_policies_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve tags: - marketplace-slurm-periodic-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-slurm-periodic-usage-policies/{uuid}/: get: operationId: marketplace_slurm_periodic_usage_policies_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmPeriodicUsagePolicy' description: '' put: operationId: marketplace_slurm_periodic_usage_policies_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmPeriodicUsagePolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmPeriodicUsagePolicy' description: '' patch: operationId: marketplace_slurm_periodic_usage_policies_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedSlurmPeriodicUsagePolicyRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmPeriodicUsagePolicy' description: '' delete: operationId: marketplace_slurm_periodic_usage_policies_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-slurm-periodic-usage-policies/{uuid}/command-history/: get: operationId: marketplace_slurm_periodic_usage_policies_command_history_list description: List command history for this policy. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SlurmCommandHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-slurm-periodic-usage-policies/{uuid}/dry-run/: post: operationId: marketplace_slurm_periodic_usage_policies_dry_run description: 'Staff-only. Dry-run evaluation: calculates usage percentages and shows what actions would be triggered, without applying any changes.' parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmPolicyEvaluateRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmPolicyDryRunResponse' description: '' /api/marketplace-slurm-periodic-usage-policies/{uuid}/evaluate/: post: operationId: marketplace_slurm_periodic_usage_policies_evaluate description: 'Staff-only. Run synchronous policy evaluation: calculates usage, applies actions (pause/downscale/notify), and creates evaluation logs.' parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmPolicyEvaluateRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmPolicyEvaluateResponse' description: '' /api/marketplace-slurm-periodic-usage-policies/{uuid}/evaluation-logs/: get: operationId: marketplace_slurm_periodic_usage_policies_evaluation_logs_list description: List evaluation logs for this policy. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: scope_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SlurmPolicyEvaluationLog' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/marketplace-slurm-periodic-usage-policies/{uuid}/report-command-result/: post: operationId: marketplace_slurm_periodic_usage_policies_report_command_result description: Report command execution result from site agent. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-slurm-periodic-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmCommandResultRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-slurm-periodic-usage-policies/actions/: get: operationId: marketplace_slurm_periodic_usage_policies_actions_retrieve tags: - marketplace-slurm-periodic-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmPeriodicUsagePolicy' description: '' head: operationId: marketplace_slurm_periodic_usage_policies_actions_count tags: - marketplace-slurm-periodic-usage-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-slurm-periodic-usage-policies/preview_impact/: post: operationId: marketplace_slurm_periodic_usage_policies_preview_impact description: Preview policy impact without saving. Returns threshold calculations, carryover projections, and QoS trigger points. tags: - marketplace-slurm-periodic-usage-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmPolicyPreviewRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmPolicyPreviewResponse' description: '' /api/marketplace-software-catalogs/: get: operationId: marketplace_software_catalogs_list description: Returns a paginated list of available software catalogs, such as EESSI or Spack. summary: List software catalogs parameters: - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwareCatalogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: version schema: type: string tags: - marketplace-software-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SoftwareCatalog' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_software_catalogs_create description: Creates a new software catalog. Requires staff permissions. summary: Create a software catalog tags: - marketplace-software-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalogRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalog' description: '' head: operationId: marketplace_software_catalogs_count description: Get number of items in the collection matching the request parameters. summary: List software catalogs parameters: - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwareCatalogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: version schema: type: string tags: - marketplace-software-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-software-catalogs/{uuid}/: get: operationId: marketplace_software_catalogs_retrieve description: Returns the details of a specific software catalog, including its name, version, and the number of packages it contains. summary: Retrieve a software catalog parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalog' description: '' put: operationId: marketplace_software_catalogs_update description: Updates an existing software catalog. Requires staff permissions. summary: Update a software catalog parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalogRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalog' description: '' patch: operationId: marketplace_software_catalogs_partial_update description: Partially updates an existing software catalog. Requires staff permissions. summary: Partially update a software catalog parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedSoftwareCatalogRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalog' description: '' delete: operationId: marketplace_software_catalogs_destroy description: Deletes a software catalog. Requires staff permissions. summary: Delete a software catalog parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-software-catalogs/{uuid}/update_catalog/: post: operationId: marketplace_software_catalogs_update_catalog description: Triggers a Celery task to update the given catalog from its upstream source. Returns 202 Accepted immediately. Staff only. summary: Trigger async update for an existing catalog parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalogRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body /api/marketplace-software-catalogs/discover/: get: operationId: marketplace_software_catalogs_discover_list description: Queries upstream sources (EESSI, Spack) for available catalog versions without creating anything. Returns detected versions and whether an update is available compared to existing database records. summary: Discover available software catalog versions parameters: - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwareCatalogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: version schema: type: string tags: - marketplace-software-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SoftwareCatalogDiscover' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_software_catalogs_discover_count description: Get number of items in the collection matching the request parameters. summary: Discover available software catalog versions parameters: - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwareCatalogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: version schema: type: string tags: - marketplace-software-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-software-catalogs/import_catalog/: post: operationId: marketplace_software_catalogs_import_catalog description: Creates a new catalog record and triggers async data loading via Celery. Returns 202 Accepted immediately. Staff only. summary: Import a new software catalog tags: - marketplace-software-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/SoftwareCatalogImportRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body /api/marketplace-software-packages/: get: operationId: marketplace_software_packages_list description: Returns a paginated list of software packages available in the catalogs. Can be filtered by catalog, offering, or various package attributes. summary: List software packages parameters: - in: query name: catalog_name schema: type: string description: Filter packages by catalog name (case-insensitive partial match) - in: query name: catalog_uuid schema: type: string format: uuid description: Filter packages from a specific software catalog x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: catalog_version schema: type: string description: Filter packages by catalog version (case-insensitive partial match) - in: query name: cpu_family schema: type: string description: Filter packages available for specific CPU family (e.g., x86_64, aarch64) - in: query name: cpu_microarchitecture schema: type: string description: Filter packages available for specific CPU microarchitecture (e.g., generic, zen2, haswell) - in: query name: description schema: type: string description: Filter packages by description (case-insensitive partial match) - in: query name: extension_name schema: type: string description: Filter packages having extensions with a specific name - in: query name: extension_type schema: type: string description: Filter packages having extensions of a specific type (e.g., 'python') - in: query name: has_version schema: type: string description: Filter packages that have a specific version - in: query name: is_extension schema: type: boolean description: Filter packages that are extensions of other packages - in: query name: name schema: type: string description: Filter packages by name (case-insensitive partial match) - in: query name: name_exact schema: type: string description: Filter packages by exact name (case-insensitive) - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwarePackageOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Filter packages available for a specific offering x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Query packages by name, description, or version (case-insensitive partial match) tags: - marketplace-software-packages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SoftwarePackage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_software_packages_create description: Creates a new software package within a catalog. Requires staff permissions. summary: Create a software package tags: - marketplace-software-packages requestBody: content: application/json: schema: $ref: '#/components/schemas/SoftwarePackageRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SoftwarePackage' description: '' head: operationId: marketplace_software_packages_count description: Get number of items in the collection matching the request parameters. summary: List software packages parameters: - in: query name: catalog_name schema: type: string description: Filter packages by catalog name (case-insensitive partial match) - in: query name: catalog_uuid schema: type: string format: uuid description: Filter packages from a specific software catalog x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: catalog_version schema: type: string description: Filter packages by catalog version (case-insensitive partial match) - in: query name: cpu_family schema: type: string description: Filter packages available for specific CPU family (e.g., x86_64, aarch64) - in: query name: cpu_microarchitecture schema: type: string description: Filter packages available for specific CPU microarchitecture (e.g., generic, zen2, haswell) - in: query name: description schema: type: string description: Filter packages by description (case-insensitive partial match) - in: query name: extension_name schema: type: string description: Filter packages having extensions with a specific name - in: query name: extension_type schema: type: string description: Filter packages having extensions of a specific type (e.g., 'python') - in: query name: has_version schema: type: string description: Filter packages that have a specific version - in: query name: is_extension schema: type: boolean description: Filter packages that are extensions of other packages - in: query name: name schema: type: string description: Filter packages by name (case-insensitive partial match) - in: query name: name_exact schema: type: string description: Filter packages by exact name (case-insensitive) - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwarePackageOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Filter packages available for a specific offering x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Query packages by name, description, or version (case-insensitive partial match) tags: - marketplace-software-packages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-software-packages/{uuid}/: get: operationId: marketplace_software_packages_retrieve description: Returns the details of a specific software package, including its description, homepage, and available versions. summary: Retrieve a software package parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-packages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwarePackage' description: '' put: operationId: marketplace_software_packages_update description: Updates an existing software package. Requires staff permissions. summary: Update a software package parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-packages requestBody: content: application/json: schema: $ref: '#/components/schemas/SoftwarePackageRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwarePackage' description: '' patch: operationId: marketplace_software_packages_partial_update description: Partially updates an existing software package. Requires staff permissions. summary: Partially update a software package parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-packages requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedSoftwarePackageRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwarePackage' description: '' delete: operationId: marketplace_software_packages_destroy description: Deletes a software package. Requires staff permissions. summary: Delete a software package parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-packages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-software-targets/: get: operationId: marketplace_software_targets_list description: Returns a paginated list of software targets, which represent specific builds of a software version for a given CPU architecture. summary: List software targets parameters: - in: query name: catalog_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: cpu_family schema: type: string - in: query name: cpu_microarchitecture schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwareTargetOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: package_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_software_packages_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: path schema: type: string - in: query name: version_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_software_versions_retrieve tags: - marketplace-software-targets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SoftwareTarget' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_software_targets_create description: Creates a new target for a software version. Requires staff permissions. summary: Create a software target tags: - marketplace-software-targets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SoftwareTarget' description: '' head: operationId: marketplace_software_targets_count description: Get number of items in the collection matching the request parameters. summary: List software targets parameters: - in: query name: catalog_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: cpu_family schema: type: string - in: query name: cpu_microarchitecture schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwareTargetOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: package_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_software_packages_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: path schema: type: string - in: query name: version_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_software_versions_retrieve tags: - marketplace-software-targets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-software-targets/{uuid}/: get: operationId: marketplace_software_targets_retrieve description: Returns the details of a specific software target, including its CPU family, microarchitecture, and path. summary: Retrieve a software target parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-targets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareTarget' description: '' put: operationId: marketplace_software_targets_update description: Updates an existing software target. Requires staff permissions. summary: Update a software target parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-targets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareTarget' description: '' patch: operationId: marketplace_software_targets_partial_update description: Partially updates an existing software target. Requires staff permissions. summary: Partially update a software target parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-targets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareTarget' description: '' delete: operationId: marketplace_software_targets_destroy description: Deletes a software target. Requires staff permissions. summary: Delete a software target parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-targets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-software-versions/: get: operationId: marketplace_software_versions_list description: Returns a paginated list of software versions. Can be filtered by package, catalog, offering, or CPU architecture. summary: List software versions parameters: - in: query name: catalog_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: cpu_family schema: type: string - in: query name: cpu_microarchitecture schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwareVersionOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: package_name schema: type: string - in: query name: package_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_software_packages_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: version schema: type: string tags: - marketplace-software-versions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SoftwareVersion' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_software_versions_create description: Creates a new version for a software package. Requires staff permissions. summary: Create a software version tags: - marketplace-software-versions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SoftwareVersion' description: '' head: operationId: marketplace_software_versions_count description: Get number of items in the collection matching the request parameters. summary: List software versions parameters: - in: query name: catalog_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_category_groups_retrieve - in: query name: cpu_family schema: type: string - in: query name: cpu_microarchitecture schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SoftwareVersionOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: package_name schema: type: string - in: query name: package_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_software_packages_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: version schema: type: string tags: - marketplace-software-versions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-software-versions/{uuid}/: get: operationId: marketplace_software_versions_retrieve description: Returns the details of a specific software version, including its release date and target count. summary: Retrieve a software version parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-versions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareVersion' description: '' put: operationId: marketplace_software_versions_update description: Updates an existing software version. Requires staff permissions. summary: Update a software version parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-versions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareVersion' description: '' patch: operationId: marketplace_software_versions_partial_update description: Partially updates an existing software version. Requires staff permissions. summary: Partially update a software version parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-versions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SoftwareVersion' description: '' delete: operationId: marketplace_software_versions_destroy description: Deletes a software version. Requires staff permissions. summary: Delete a software version parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-software-versions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-stats/aggregated_usage_trends/: get: operationId: marketplace_stats_aggregated_usage_trends_list description: Return aggregated usage trends per month. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AggregatedUsageTrend' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_aggregated_usage_trends_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/component_usages/: get: operationId: marketplace_stats_component_usages_list description: Return component usages for current month. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ComponentUsagesStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_component_usages_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/component_usages_per_month/: get: operationId: marketplace_stats_component_usages_per_month_list description: Return component usages per month. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ComponentUsagesPerMonthStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_component_usages_per_month_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/component_usages_per_project/: get: operationId: marketplace_stats_component_usages_per_project_list description: Return component usages per project. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ComponentUsagesPerProject' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_component_usages_per_project_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_active_resources_grouped_by_offering/: get: operationId: marketplace_stats_count_active_resources_grouped_by_offering_list description: Count active resources grouped by offering. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_active_resources_grouped_by_offering_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_active_resources_grouped_by_offering_country/: get: operationId: marketplace_stats_count_active_resources_grouped_by_offering_country_list description: Count active resources grouped by offering country. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingCountryStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_active_resources_grouped_by_offering_country_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_active_resources_grouped_by_organization_group/: get: operationId: marketplace_stats_count_active_resources_grouped_by_organization_group_list description: Count active resources grouped by organization group. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CountStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_active_resources_grouped_by_organization_group_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_projects_grouped_by_provider_and_industry_flag/: get: operationId: marketplace_stats_count_projects_grouped_by_provider_and_industry_flag_list description: Count projects grouped by provider and industry flag parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerIndustryFlagStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_projects_grouped_by_provider_and_industry_flag_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_projects_grouped_by_provider_and_oecd/: get: operationId: marketplace_stats_count_projects_grouped_by_provider_and_oecd_list description: Count projects grouped by provider and OECD code parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerOecdCodeStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_projects_grouped_by_provider_and_oecd_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_projects_of_service_providers/: get: operationId: marketplace_stats_count_projects_of_service_providers_list description: Count projects of service providers. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CountProjectsOfServiceProviders' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_projects_of_service_providers_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_projects_of_service_providers_grouped_by_oecd/: get: operationId: marketplace_stats_count_projects_of_service_providers_grouped_by_oecd_list description: Count projects of service providers grouped by OECD. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CountProjectsOfServiceProvidersGroupedByOecd' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_projects_of_service_providers_grouped_by_oecd_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_unique_users_connected_with_active_resources_of_service_provider/: get: operationId: marketplace_stats_count_unique_users_connected_with_active_resources_of_service_provider_list description: Count unique users connected with active resources of service provider. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CountUniqueUsersConnectedWithActiveResourcesOfServiceProvider' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_unique_users_connected_with_active_resources_of_service_provider_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/count_users_of_service_providers/: get: operationId: marketplace_stats_count_users_of_service_providers_list description: Count users of service providers. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CountUsersOfServiceProviders' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_count_users_of_service_providers_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/customer_member_count/: get: operationId: marketplace_stats_customer_member_count_list description: Return count of customer members. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CustomerMemberCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_customer_member_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/customer_member_summary/: get: operationId: marketplace_stats_customer_member_summary_retrieve description: Return summary statistics for customer members. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomerMemberSummary' description: '' head: operationId: marketplace_stats_customer_member_summary_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/offering_costs_summary/: get: operationId: marketplace_stats_offering_costs_summary_retrieve description: Return summary statistics for offering costs. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingCostsSummary' description: '' head: operationId: marketplace_stats_offering_costs_summary_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/offerings_counter_stats/: get: operationId: marketplace_stats_offerings_counter_stats_list description: Retrieve statistics about the number of offerings, grouped by category and service provider. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingStatsCounter' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_offerings_counter_stats_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/order_stats/: get: operationId: marketplace_stats_order_stats_retrieve description: Return comprehensive order statistics including daily breakdown, state/type aggregations, and summary stats. parameters: - in: query name: customer_uuid schema: type: string description: Filter by customer UUID. - in: query name: end schema: type: string description: End date in YYYY-MM-DD format. Defaults to today. - in: query name: provider_uuid schema: type: string description: Filter by service provider UUID. - in: query name: start schema: type: string description: Start date in YYYY-MM-DD format. Defaults to 30 days ago. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrderStatsResponse' description: '' head: operationId: marketplace_stats_order_stats_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: customer_uuid schema: type: string description: Filter by customer UUID. - in: query name: end schema: type: string description: End date in YYYY-MM-DD format. Defaults to today. - in: query name: provider_uuid schema: type: string description: Filter by service provider UUID. - in: query name: start schema: type: string description: Start date in YYYY-MM-DD format. Defaults to 30 days ago. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/organization_project_count/: get: operationId: marketplace_stats_organization_project_count_list description: Return project count per organization. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MarketplaceCustomerStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_organization_project_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/organization_resource_count/: get: operationId: marketplace_stats_organization_resource_count_list description: Return resource count per organization. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MarketplaceCustomerStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_organization_resource_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/project_classification_summary/: get: operationId: marketplace_stats_project_classification_summary_retrieve description: Return summary statistics for project classification. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectClassificationSummary' description: '' head: operationId: marketplace_stats_project_classification_summary_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/projects_limits_grouped_by_industry_flag/: get: operationId: marketplace_stats_projects_limits_grouped_by_industry_flag_retrieve description: Group project limits by industry flag. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectsLimitsGroupedByIndustryFlag' description: '' head: operationId: marketplace_stats_projects_limits_grouped_by_industry_flag_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/projects_limits_grouped_by_oecd/: get: operationId: marketplace_stats_projects_limits_grouped_by_oecd_retrieve description: Group project limits by OECD code. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectsLimitsGroupedByOecd' description: '' head: operationId: marketplace_stats_projects_limits_grouped_by_oecd_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/projects_usages_grouped_by_industry_flag/: get: operationId: marketplace_stats_projects_usages_grouped_by_industry_flag_retrieve description: Group project usages by industry flag. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectsUsagesGroupedByIndustryFlag' description: '' head: operationId: marketplace_stats_projects_usages_grouped_by_industry_flag_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/projects_usages_grouped_by_oecd/: get: operationId: marketplace_stats_projects_usages_grouped_by_oecd_retrieve description: Group project usages by OECD code. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectsUsagesGroupedByOecd' description: '' head: operationId: marketplace_stats_projects_usages_grouped_by_oecd_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/provider_customers/: get: operationId: marketplace_stats_provider_customers_retrieve description: Return customer statistics for a service provider. parameters: - in: query name: provider_uuid schema: type: string description: Service provider UUID. required: true tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderCustomerStats' description: '' head: operationId: marketplace_stats_provider_customers_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: provider_uuid schema: type: string description: Service provider UUID. required: true tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/provider_offerings/: get: operationId: marketplace_stats_provider_offerings_retrieve description: Return offering performance statistics for a service provider. parameters: - in: query name: provider_uuid schema: type: string description: Service provider UUID. required: true tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderOfferingStats' description: '' head: operationId: marketplace_stats_provider_offerings_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: provider_uuid schema: type: string description: Service provider UUID. required: true tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/provider_resources/: get: operationId: marketplace_stats_provider_resources_retrieve description: Return resource statistics for a service provider. parameters: - in: query name: provider_uuid schema: type: string description: Service provider UUID. required: true tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderResourceStats' description: '' head: operationId: marketplace_stats_provider_resources_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: provider_uuid schema: type: string description: Service provider UUID. required: true tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/resource_provisioning_stats/: get: operationId: marketplace_stats_resource_provisioning_stats_list description: Get resource provisioning statistics. parameters: - in: query name: last_minutes schema: type: integer description: Filter by last N minutes. Default is 60. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourceProvisioningStats' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_resource_provisioning_stats_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: last_minutes schema: type: integer description: Filter by last N minutes. Default is 60. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/resource_usage_by_creator_affiliation/: get: operationId: marketplace_stats_resource_usage_by_creator_affiliation_list description: Return resource usage grouped by creator's affiliation. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourceUsageByAffiliation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_resource_usage_by_creator_affiliation_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/resource_usage_by_customer/: get: operationId: marketplace_stats_resource_usage_by_customer_list description: Return resource usage statistics grouped by customer. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourceUsageByCustomer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_resource_usage_by_customer_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/resource_usage_by_organization_type/: get: operationId: marketplace_stats_resource_usage_by_organization_type_list description: Return component usages grouped by project members' organization type. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourceUsageByOrgType' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_resource_usage_by_organization_type_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/resources_geography_summary/: get: operationId: marketplace_stats_resources_geography_summary_retrieve description: Return summary statistics for resource geographic distribution. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResourcesGeographySummary' description: '' head: operationId: marketplace_stats_resources_geography_summary_count description: Get number of items in the collection matching the request parameters. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/resources_limits/: get: operationId: marketplace_stats_resources_limits_list description: Return resources limits per offering. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourcesLimits' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_resources_limits_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/resources_missing_usage/: get: operationId: marketplace_stats_resources_missing_usage_list description: Return usage-based resources with no usage reported in the specified billing period. parameters: - in: query name: billing_period schema: type: string description: Billing period in YYYY-MM format. Defaults to current month. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: provider_uuid schema: type: string description: Filter by service provider UUID. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ResourceMissingUsage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_resources_missing_usage_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: billing_period schema: type: string description: Billing period in YYYY-MM format. Defaults to current month. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: provider_uuid schema: type: string description: Filter by service provider UUID. tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/total_cost_of_active_resources_per_offering/: get: operationId: marketplace_stats_total_cost_of_active_resources_per_offering_list description: Total cost of active resources per offering. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingCost' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_total_cost_of_active_resources_per_offering_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/user_affiliation_count/: get: operationId: marketplace_stats_user_affiliation_count_list description: Return user count grouped by affiliation. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserAffiliationCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_user_affiliation_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/user_auth_method_count/: get: operationId: marketplace_stats_user_auth_method_count_list description: Return user count grouped by authentication method. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserAuthMethodCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_user_auth_method_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/user_identity_source_count/: get: operationId: marketplace_stats_user_identity_source_count_list description: Return user count grouped by identity source. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserIdentitySourceCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_user_identity_source_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/user_job_title_count/: get: operationId: marketplace_stats_user_job_title_count_list description: Return user count grouped by job title. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserJobTitleCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_user_job_title_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/user_organization_count/: get: operationId: marketplace_stats_user_organization_count_list description: Return user count grouped by organization. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserOrganizationCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_user_organization_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-stats/user_organization_type_count/: get: operationId: marketplace_stats_user_organization_type_count_list description: Return user count grouped by organization type (SCHAC URN). parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserOrganizationTypeCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: marketplace_stats_user_organization_type_count_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-tags/: get: operationId: marketplace_tags_list parameters: - in: query name: created_by schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-tags security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Tag' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_tags_create tags: - marketplace-tags requestBody: content: application/json: schema: $ref: '#/components/schemas/TagRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Tag' description: '' head: operationId: marketplace_tags_count parameters: - in: query name: created_by schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - marketplace-tags security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/marketplace-tags/{uuid}/: get: operationId: marketplace_tags_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-tags security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tag' description: '' put: operationId: marketplace_tags_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-tags requestBody: content: application/json: schema: $ref: '#/components/schemas/TagRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tag' description: '' patch: operationId: marketplace_tags_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-tags requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedTagRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tag' description: '' delete: operationId: marketplace_tags_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-tags security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-user-offering-consents/: get: operationId: marketplace_user_offering_consents_list description: Returns a paginated list of Terms of Service consents for the current user. Staff and support users can see all consents. summary: List user offering consents parameters: - in: query name: has_consent schema: type: boolean description: Has consent - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserOfferingConsentOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering URL x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: requires_reconsent schema: type: boolean description: Requires reconsent - in: query name: user schema: type: string format: uri description: User URL x-waldur-operation-id: users_retrieve - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: version schema: type: string description: Version tags: - marketplace-user-offering-consents security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserOfferingConsent' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: marketplace_user_offering_consents_create description: Creates a consent record for the current user and a specific offering. This indicates that the user has accepted the active Terms of Service for that offering. If a consent already exists (even if revoked), it will be reactivated and updated with the current ToS version. summary: Grant consent to an offering's Terms of Service tags: - marketplace-user-offering-consents requestBody: content: application/json: schema: $ref: '#/components/schemas/UserOfferingConsentCreateRequest' examples: GrantConsentToAnOffering: value: offering: a1b2c3d4-e5f6-7890-1234-567890abcdef summary: Grant consent to an offering required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserOfferingConsentCreate' examples: GrantConsentToAnOffering: value: offering: a1b2c3d4-e5f6-7890-1234-567890abcdef summary: Grant consent to an offering description: '' head: operationId: marketplace_user_offering_consents_count description: Get number of items in the collection matching the request parameters. summary: List user offering consents parameters: - in: query name: has_consent schema: type: boolean description: Has consent - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserOfferingConsentOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering URL x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: requires_reconsent schema: type: boolean description: Requires reconsent - in: query name: user schema: type: string format: uri description: User URL x-waldur-operation-id: users_retrieve - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: version schema: type: string description: Version tags: - marketplace-user-offering-consents security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/marketplace-user-offering-consents/{uuid}/: get: operationId: marketplace_user_offering_consents_retrieve description: Returns the details of a specific consent record. summary: Retrieve a user offering consent parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-user-offering-consents security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserOfferingConsent' description: '' put: operationId: marketplace_user_offering_consents_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-user-offering-consents requestBody: content: application/json: schema: $ref: '#/components/schemas/UserOfferingConsentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserOfferingConsent' description: '' patch: operationId: marketplace_user_offering_consents_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-user-offering-consents requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUserOfferingConsentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserOfferingConsent' description: '' delete: operationId: marketplace_user_offering_consents_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-user-offering-consents security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/marketplace-user-offering-consents/{uuid}/revoke/: post: operationId: marketplace_user_offering_consents_revoke description: Revokes a user's consent to the Terms of Service for an offering. The consent record is marked with a revocation date, and the user may lose access to related resources if consent is required. summary: Revoke consent to Terms of Service parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - marketplace-user-offering-consents security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserOfferingConsent' description: '' /api/media/{uuid}/: get: operationId: media_retrieve description: Get media file parameters: - in: path name: uuid schema: type: string pattern: ^.+$ required: true tags: - media security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: string format: binary description: '' /api/metadata/events/: get: operationId: metadata_events_retrieve description: Retrieves metadata for all available event types, grouped by categories. This endpoint is publicly accessible and is useful for building UIs for event filtering or webhook configuration. summary: Get event metadata tags: - metadata responses: '200': content: application/json: schema: $ref: '#/components/schemas/EventMetadataResponse' description: '' /api/metadata/features/: get: operationId: metadata_features_retrieve description: Retrieves metadata for all available feature flags, including their keys, descriptions, and grouping sections. This endpoint is publicly accessible and helps UIs to dynamically render feature-related settings. summary: Get feature flag metadata tags: - metadata responses: '200': content: application/json: schema: $ref: '#/components/schemas/FeatureMetadataResponse' description: '' /api/metadata/permissions/: get: operationId: metadata_permissions_retrieve description: Retrieves metadata about roles, permissions, and their descriptions. This endpoint is publicly accessible and provides data needed for UI components, such as role selection dropdowns and permission management interfaces. summary: Get permission metadata tags: - metadata responses: '200': content: application/json: schema: $ref: '#/components/schemas/PermissionMetadataResponse' description: '' /api/metadata/settings/: get: operationId: metadata_settings_retrieve description: Retrieves metadata for all settings that can be configured via the Constance backend. This includes setting keys, human-readable descriptions, default values, and types. This endpoint is publicly accessible. summary: Get overridable settings metadata tags: - metadata responses: '200': content: application/json: schema: $ref: '#/components/schemas/SettingsMetadataResponse' description: '' /api/my-assignment-batches/: get: operationId: my_assignment_batches_list description: List all pending assignment batches for the authenticated reviewer. tags: - my-assignment-batches security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MyAssignmentBatch' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: my_assignment_batches_count description: Get number of items in the collection matching the request parameters. tags: - my-assignment-batches security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/my-assignment-batches/{uuid}/: get: operationId: my_assignment_batches_retrieve description: Get details of a specific assignment batch with items. parameters: - in: path name: uuid schema: type: string description: UUID of the assignment batch required: true tags: - my-assignment-batches security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MyAssignmentBatchDetail' description: '' /api/notification-messages/: get: operationId: notification_messages_list parameters: - in: query name: description schema: type: string - in: query name: is_overridden schema: type: boolean description: Is overridden - in: query name: key schema: type: string - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by key or description tags: - notification-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Notification' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: notification_messages_create tags: - notification-messages requestBody: content: application/json: schema: $ref: '#/components/schemas/NotificationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Notification' description: '' head: operationId: notification_messages_count parameters: - in: query name: description schema: type: string - in: query name: is_overridden schema: type: boolean description: Is overridden - in: query name: key schema: type: string - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by key or description tags: - notification-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/notification-messages-templates/: get: operationId: notification_messages_templates_list parameters: - in: query name: is_overridden schema: type: boolean description: Is overridden - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: path schema: type: string description: Path - in: query name: path_exact schema: type: string description: Path (exact) tags: - notification-messages-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/NotificationTemplateDetailSerializers' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: notification_messages_templates_create tags: - notification-messages-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/NotificationTemplateDetailSerializersRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/NotificationTemplateDetailSerializers' description: '' head: operationId: notification_messages_templates_count parameters: - in: query name: is_overridden schema: type: boolean description: Is overridden - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: path schema: type: string description: Path - in: query name: path_exact schema: type: string description: Path (exact) tags: - notification-messages-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/notification-messages-templates/{uuid}/: get: operationId: notification_messages_templates_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/NotificationTemplateDetailSerializers' description: '' put: operationId: notification_messages_templates_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/NotificationTemplateDetailSerializersRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/NotificationTemplateDetailSerializers' description: '' patch: operationId: notification_messages_templates_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedNotificationTemplateDetailSerializersRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/NotificationTemplateDetailSerializers' description: '' delete: operationId: notification_messages_templates_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/notification-messages-templates/{uuid}/override/: post: operationId: notification_messages_templates_override summary: Override notification template content parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/NotificationTemplateUpdateSerializersRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/notification-messages/{uuid}/: get: operationId: notification_messages_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Notification' description: '' put: operationId: notification_messages_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages requestBody: content: application/json: schema: $ref: '#/components/schemas/NotificationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Notification' description: '' patch: operationId: notification_messages_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedNotificationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Notification' description: '' delete: operationId: notification_messages_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/notification-messages/{uuid}/disable/: post: operationId: notification_messages_disable summary: Disable a notification parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/notification-messages/{uuid}/enable/: post: operationId: notification_messages_enable summary: Enable a notification parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - notification-messages security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/offering-keycloak-groups/: get: operationId: offering_keycloak_groups_list parameters: - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingKeycloakGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: offering_keycloak_groups_count parameters: - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/offering-keycloak-groups/{uuid}/: get: operationId: offering_keycloak_groups_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingKeycloakGroup' description: '' delete: operationId: offering_keycloak_groups_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: RESOURCE.MANAGE_USERS scopes: - offering.customer /api/offering-keycloak-groups/{uuid}/pull_members/: post: operationId: offering_keycloak_groups_pull_members summary: Pull members from Keycloak for a group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PullMembersResponse' description: '' /api/offering-keycloak-groups/{uuid}/set_backend_id/: post: operationId: offering_keycloak_groups_set_backend_id summary: Set or unlink the backend_id (remote Keycloak group ID) for a local group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - offering-keycloak-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/SetBackendIdRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingKeycloakGroup' description: '' /api/offering-keycloak-groups/import_remote/: post: operationId: offering_keycloak_groups_import_remote summary: Import a remote Keycloak group as a local OfferingKeycloakGroup tags: - offering-keycloak-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportRemoteGroupRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingKeycloakGroup' description: '' /api/offering-keycloak-groups/remote_group_members/: get: operationId: offering_keycloak_groups_remote_group_members_list summary: List members of a remote Keycloak group parameters: - in: query name: group_id schema: type: string description: Keycloak group ID required: true - in: query name: offering_uuid schema: type: string description: UUID of the offering required: true x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteGroupMember' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: offering_keycloak_groups_remote_group_members_count summary: List members of a remote Keycloak group parameters: - in: query name: group_id schema: type: string description: Keycloak group ID required: true - in: query name: offering_uuid schema: type: string description: UUID of the offering required: true x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/offering-keycloak-groups/remote_groups/: get: operationId: offering_keycloak_groups_remote_groups_list summary: List remote Keycloak groups for an offering parameters: - in: query name: offering_uuid schema: type: string description: UUID of the offering required: true x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: offering_keycloak_groups_remote_groups_count summary: List remote Keycloak groups for an offering parameters: - in: query name: offering_uuid schema: type: string description: UUID of the offering required: true x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/offering-keycloak-groups/search_remote_users/: get: operationId: offering_keycloak_groups_search_remote_users_list summary: Search for users in remote Keycloak instance parameters: - in: query name: offering_uuid schema: type: string description: UUID of the offering required: true x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: q schema: type: string description: Search query for username, email, or name required: true - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteGroupMember' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: offering_keycloak_groups_search_remote_users_count summary: Search for users in remote Keycloak instance parameters: - in: query name: offering_uuid schema: type: string description: UUID of the offering required: true x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: q schema: type: string description: Search query for username, email, or name required: true - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/offering-keycloak-groups/sync_status/: get: operationId: offering_keycloak_groups_sync_status_retrieve summary: Compare local and remote Keycloak group state parameters: - in: query name: offering_uuid schema: type: string description: UUID of the offering required: true x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SyncStatusResponse' description: '' head: operationId: offering_keycloak_groups_sync_status_count summary: Compare local and remote Keycloak group state parameters: - in: query name: offering_uuid schema: type: string description: UUID of the offering required: true x-waldur-operation-id: marketplace_provider_offerings_retrieve tags: - offering-keycloak-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/offering-keycloak-groups/test_connection/: post: operationId: offering_keycloak_groups_test_connection summary: Test Keycloak connection for an offering tags: - offering-keycloak-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingUUIDRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/TestConnectionResponse' description: '' /api/offering-keycloak-memberships/: get: operationId: offering_keycloak_memberships_list parameters: - in: query name: email schema: type: string - in: query name: first_name schema: type: string - in: query name: group_uuid schema: type: string format: uuid x-waldur-operation-id: offering_keycloak_groups_retrieve - in: query name: last_name schema: type: string - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/KeycloakUserGroupMembershipState' explode: true style: form - in: query name: username schema: type: string tags: - offering-keycloak-memberships security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OfferingKeycloakMembership' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: offering_keycloak_memberships_create tags: - offering-keycloak-memberships requestBody: content: application/json: schema: $ref: '#/components/schemas/OfferingKeycloakMembershipRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OfferingKeycloakMembership' description: '' head: operationId: offering_keycloak_memberships_count parameters: - in: query name: email schema: type: string - in: query name: first_name schema: type: string - in: query name: group_uuid schema: type: string format: uuid x-waldur-operation-id: offering_keycloak_groups_retrieve - in: query name: last_name schema: type: string - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_offering_user_roles_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/KeycloakUserGroupMembershipState' explode: true style: form - in: query name: username schema: type: string tags: - offering-keycloak-memberships security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/offering-keycloak-memberships/{uuid}/: get: operationId: offering_keycloak_memberships_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - offering-keycloak-memberships security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OfferingKeycloakMembership' description: '' delete: operationId: offering_keycloak_memberships_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - offering-keycloak-memberships security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: RESOURCE.MANAGE_USERS scopes: - group.offering.customer /api/onboarding-justifications/: get: operationId: onboarding_justifications_list parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/OnboardingJustificationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by legal name, legal person identifier - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: validation_decision schema: type: array items: $ref: '#/components/schemas/OnboardingJustificationValidationDecisionEnum' description: |+ Review decision explode: true style: form - in: query name: verification_uuid schema: type: string format: uuid description: Verification UUID x-waldur-operation-id: onboarding_verifications_retrieve tags: - onboarding-justifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OnboardingJustification' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: onboarding_justifications_create tags: - onboarding-justifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingJustificationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OnboardingJustification' description: '' head: operationId: onboarding_justifications_count parameters: - in: query name: o schema: type: array items: $ref: '#/components/schemas/OnboardingJustificationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by legal name, legal person identifier - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: validation_decision schema: type: array items: $ref: '#/components/schemas/OnboardingJustificationValidationDecisionEnum' description: |+ Review decision explode: true style: form - in: query name: verification_uuid schema: type: string format: uuid description: Verification UUID x-waldur-operation-id: onboarding_verifications_retrieve tags: - onboarding-justifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/onboarding-justifications/{uuid}/: get: operationId: onboarding_justifications_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-justifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingJustification' description: '' put: operationId: onboarding_justifications_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-justifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingJustificationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingJustification' description: '' patch: operationId: onboarding_justifications_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-justifications requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOnboardingJustificationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingJustification' description: '' delete: operationId: onboarding_justifications_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-justifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/onboarding-justifications/{uuid}/approve/: post: operationId: onboarding_justifications_approve description: Approve justification and mark verification as VERIFIED. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-justifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingJustificationReviewRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingJustification' description: '' /api/onboarding-justifications/{uuid}/attach_document/: post: operationId: onboarding_justifications_attach_document description: Attach supporting document to justification. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-justifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingJustificationDocumentationRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/OnboardingJustificationDocumentationRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/OnboardingJustificationDocumentationRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingJustificationDocumentation' description: '' /api/onboarding-justifications/{uuid}/reject/: post: operationId: onboarding_justifications_reject description: Reject justification and mark verification as FAILED. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-justifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingJustificationReviewRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingJustification' description: '' /api/onboarding-justifications/create_justification/: post: operationId: onboarding_justifications_create_justification description: Create justification for failed verification. tags: - onboarding-justifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingJustificationCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingJustification' description: '' /api/onboarding-question-metadata/: get: operationId: onboarding_question_metadata_list parameters: - in: query name: checklist_uuid schema: type: string format: uuid description: Checklist uuid x-waldur-operation-id: checklists_admin_retrieve - in: query name: intent_field schema: type: string - in: query name: maps_to_customer_field schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: question_description schema: type: string - in: query name: question_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_questions_retrieve tags: - onboarding-question-metadata security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OnboardingQuestionMetadata' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: onboarding_question_metadata_create tags: - onboarding-question-metadata requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingQuestionMetadataRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OnboardingQuestionMetadata' description: '' head: operationId: onboarding_question_metadata_count parameters: - in: query name: checklist_uuid schema: type: string format: uuid description: Checklist uuid x-waldur-operation-id: checklists_admin_retrieve - in: query name: intent_field schema: type: string - in: query name: maps_to_customer_field schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: question_description schema: type: string - in: query name: question_uuid schema: type: string format: uuid x-waldur-operation-id: checklists_admin_questions_retrieve tags: - onboarding-question-metadata security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/onboarding-question-metadata/{uuid}/: get: operationId: onboarding_question_metadata_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-question-metadata security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingQuestionMetadata' description: '' put: operationId: onboarding_question_metadata_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-question-metadata requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingQuestionMetadataRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingQuestionMetadata' description: '' patch: operationId: onboarding_question_metadata_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-question-metadata requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOnboardingQuestionMetadataRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingQuestionMetadata' description: '' delete: operationId: onboarding_question_metadata_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-question-metadata security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/onboarding-verifications/: get: operationId: onboarding_verifications_list parameters: - in: query name: country schema: type: string - in: query name: legal_name schema: type: string - in: query name: legal_person_identifier schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OnboardingVerificationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by legal name, legal person identifier - in: query name: status schema: type: array items: $ref: '#/components/schemas/OnboardingVerificationStatusEnum1' description: |+ Verification status explode: true style: form - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: validation_method schema: type: array items: $ref: '#/components/schemas/OnboardingVerificationValidationMethodEnum' description: |+ Validation method explode: true style: form tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OnboardingVerification' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: onboarding_verifications_create tags: - onboarding-verifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingVerificationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OnboardingVerification' description: '' head: operationId: onboarding_verifications_count parameters: - in: query name: country schema: type: string - in: query name: legal_name schema: type: string - in: query name: legal_person_identifier schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OnboardingVerificationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by legal name, legal person identifier - in: query name: status schema: type: array items: $ref: '#/components/schemas/OnboardingVerificationStatusEnum1' description: |+ Verification status explode: true style: form - in: query name: user_uuid schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: validation_method schema: type: array items: $ref: '#/components/schemas/OnboardingVerificationValidationMethodEnum' description: |+ Validation method explode: true style: form tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/onboarding-verifications/{uuid}/: get: operationId: onboarding_verifications_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingVerification' description: '' put: operationId: onboarding_verifications_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingVerificationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingVerification' description: '' patch: operationId: onboarding_verifications_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOnboardingVerificationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingVerification' description: '' delete: operationId: onboarding_verifications_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/onboarding-verifications/{uuid}/checklist/: get: operationId: onboarding_verifications_checklist_retrieve description: Get checklist with questions and existing answers. Supports both customer and intent checklists via checklist_type parameter. parameters: - in: query name: checklist_type schema: default: intent minLength: 1 $ref: '#/components/schemas/ChecklistResponseChecklistTypeEnum' description: Type of checklist to retrieve (customer or intent). Defaults to intent. - in: query name: include_all schema: type: boolean default: false description: If true, returns all questions including hidden ones. - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistResponse' description: '' /api/onboarding-verifications/{uuid}/completion_status/: get: operationId: onboarding_verifications_completion_status_retrieve description: Get checklist completion status. Supports both customer and intent checklists via checklist_type parameter. parameters: - in: query name: checklist_type schema: default: intent minLength: 1 $ref: '#/components/schemas/ChecklistResponseChecklistTypeEnum' description: Type of checklist to retrieve (customer or intent). Defaults to intent. - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistCompletion' description: '' /api/onboarding-verifications/{uuid}/create_customer/: post: operationId: onboarding_verifications_create_customer description: Create customer from successful verification. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Customer' description: '' /api/onboarding-verifications/{uuid}/run_validation/: post: operationId: onboarding_verifications_run_validation description: Run automatic validation using the required fields provided during verification creation. Checklist answers (if any) are only used for supplemental customer/intent data. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingRunValidationRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingVerification' description: '' /api/onboarding-verifications/{uuid}/submit_answers/: post: operationId: onboarding_verifications_submit_answers description: Submit answers to checklist questions. Automatically detects which checklist (customer or intent) each question belongs to. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - onboarding-verifications requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/AnswerSubmitRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingVerification' description: '' /api/onboarding-verifications/available_checklists/: get: operationId: onboarding_verifications_available_checklists_retrieve description: Get available onboarding checklists (customer and intent) for preview. This endpoint allows users to see checklist questions before creating a verification. Supports checklist_type parameter to filter by customer or intent checklists. Includes questions with onboarding metadata (field mappings). parameters: - in: query name: checklist_type schema: default: all minLength: 1 $ref: '#/components/schemas/AvailableChecklistsResponseChecklistTypeEnum' description: Type of checklist to retrieve (customer, intent, or all). Defaults to all. tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AvailableChecklistsResponse' description: '' head: operationId: onboarding_verifications_available_checklists_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: checklist_type schema: default: all minLength: 1 $ref: '#/components/schemas/AvailableChecklistsResponseChecklistTypeEnum' description: Type of checklist to retrieve (customer, intent, or all). Defaults to all. tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/onboarding-verifications/checklist-template/: get: operationId: onboarding_verifications_checklist_template_retrieve description: Get checklist template for creating new objects. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistTemplate' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Parent object not found description: '' head: operationId: onboarding_verifications_checklist_template_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - onboarding-verifications security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/onboarding-verifications/start_verification/: post: operationId: onboarding_verifications_start_verification description: Start company validation process by creating a verification record. User selects validation_method (e.g., 'ariregister', 'wirtschaftscompass'). Checklists are used for intent and customer data collection. Then call run_validation to perform automatic validation or create manual justification. tags: - onboarding-verifications requestBody: content: application/json: schema: $ref: '#/components/schemas/OnboardingCompanyValidationRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OnboardingVerification' description: '' /api/onboarding/person-identifier-fields/: get: operationId: onboarding_person_identifier_fields_retrieve description: Return person identifier field specification for a specific validation method. The validation_method parameter should match one of the available methods (e.g., 'ariregister', 'wirtschaftscompass', 'bolagsverket', 'breg'). parameters: - in: query name: validation_method schema: $ref: '#/components/schemas/ValidationMethodEnum' description: Validation method identifier required: true tags: - onboarding security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PersonIdentifierFieldsResponse' description: '' /api/onboarding/supported-countries/: get: operationId: onboarding_supported_countries_retrieve description: Return list of supported countries for validation. tags: - onboarding security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupportedCountriesResponse' description: '' /api/openportal-allocation-user-usage/: get: operationId: openportal_allocation_user_usage_list parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: openportal_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: openportal_allocations_retrieve - in: query name: month schema: type: integer - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: year schema: type: integer tags: - openportal-allocation-user-usage security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AllocationUserUsage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openportal_allocation_user_usage_count parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: openportal_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: openportal_allocations_retrieve - in: query name: month schema: type: integer - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: year schema: type: integer tags: - openportal-allocation-user-usage security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openportal-allocation-user-usage/{id}/: get: operationId: openportal_allocation_user_usage_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this allocation user usage. required: true tags: - openportal-allocation-user-usage security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AllocationUserUsage' description: '' /api/openportal-allocations/: get: operationId: openportal_allocations_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/AllocationFieldEnum' - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openportal-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Allocation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openportal_allocations_create tags: - openportal-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/AllocationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Allocation' description: '' head: operationId: openportal_allocations_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openportal-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openportal-allocations/{uuid}/: get: operationId: openportal_allocations_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AllocationFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Allocation' description: '' put: operationId: openportal_allocations_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/AllocationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Allocation' description: '' patch: operationId: openportal_allocations_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedAllocationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Allocation' description: '' delete: operationId: openportal_allocations_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-allocations/{uuid}/pull/: post: operationId: openportal_allocations_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openportal-allocations/{uuid}/set_erred/: post: operationId: openportal_allocations_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openportal-allocations/{uuid}/set_limits/: post: operationId: openportal_allocations_set_limits parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/AllocationSetLimitsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AllocationSetLimits' description: '' /api/openportal-allocations/{uuid}/set_ok/: post: operationId: openportal_allocations_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openportal-allocations/{uuid}/unlink/: post: operationId: openportal_allocations_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-associations/: get: operationId: openportal_associations_list parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: openportal_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: openportal_allocations_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openportal-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Association' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openportal_associations_count parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: openportal_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: openportal_allocations_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openportal-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openportal-associations/{uuid}/: get: operationId: openportal_associations_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Association' description: '' /api/openportal-managed-projects/: get: operationId: openportal_managed_projects_list description: List all managed projects parameters: - in: query name: identifier schema: type: string - in: query name: local_identifier schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri x-waldur-operation-id: projects_retrieve - in: query name: project_template schema: type: string format: uri x-waldur-operation-id: openportal_project_template_list - in: query name: project_template_uuid schema: type: string format: uuid x-waldur-operation-id: openportal_project_template_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/RemoteProjectUpdateRequestStateEnum' explode: true style: form tags: - openportal-managed-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ManagedProject' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openportal_managed_projects_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: identifier schema: type: string - in: query name: local_identifier schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri x-waldur-operation-id: projects_retrieve - in: query name: project_template schema: type: string format: uri x-waldur-operation-id: openportal_project_template_list - in: query name: project_template_uuid schema: type: string format: uuid x-waldur-operation-id: openportal_project_template_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/RemoteProjectUpdateRequestStateEnum' explode: true style: form tags: - openportal-managed-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openportal-managed-projects/{identifier}/{destination}/: get: operationId: openportal_managed_projects_retrieve_get description: Retrieve a managed project parameters: - in: path name: destination schema: type: string description: The destination of the managed project required: true - in: path name: identifier schema: type: string description: The identifier of the managed project required: true tags: - openportal-managed-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ManagedProject' description: '' head: operationId: openportal_managed_projects_retrieve_head description: Get number of items in the collection matching the request parameters. parameters: - in: path name: destination schema: type: string description: The destination of the managed project required: true - in: path name: identifier schema: type: string description: The identifier of the managed project required: true tags: - openportal-managed-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openportal-managed-projects/{identifier}/{destination}/approve/: post: operationId: openportal_managed_projects_approve description: Approve managed project request parameters: - in: path name: destination schema: type: string description: The destination of the managed project required: true - in: path name: identifier schema: type: string description: The identifier of the managed project required: true tags: - openportal-managed-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewCommentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openportal-managed-projects/{identifier}/{destination}/attach/: post: operationId: openportal_managed_projects_attach description: Attach a project to this managed project parameters: - in: path name: destination schema: type: string description: The destination of the managed project required: true - in: path name: identifier schema: type: string description: The identifier of the managed project required: true tags: - openportal-managed-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectAttachRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openportal-managed-projects/{identifier}/{destination}/delete/: delete: operationId: openportal_managed_projects_delete_destroy description: Delete ManagedProject object parameters: - in: path name: destination schema: type: string description: The destination of the managed project required: true - in: path name: identifier schema: type: string description: The identifier of the managed project required: true tags: - openportal-managed-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-managed-projects/{identifier}/{destination}/detach/: post: operationId: openportal_managed_projects_detach description: Detach the project from this managed project parameters: - in: path name: destination schema: type: string description: The destination of the managed project required: true - in: path name: identifier schema: type: string description: The identifier of the managed project required: true tags: - openportal-managed-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openportal-managed-projects/{identifier}/{destination}/reject/: post: operationId: openportal_managed_projects_reject description: Reject managed project request parameters: - in: path name: destination schema: type: string description: The destination of the managed project required: true - in: path name: identifier schema: type: string description: The identifier of the managed project required: true tags: - openportal-managed-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewCommentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openportal-project-template/: get: operationId: openportal_project_template_list parameters: - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: portal schema: type: string - in: query name: uuid schema: type: string format: uuid tags: - openportal-project-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openportal_project_template_create description: Create ProjectTemplate object tags: - openportal-project-template requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProjectTemplate' description: '' head: operationId: openportal_project_template_count parameters: - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: portal schema: type: string - in: query name: uuid schema: type: string format: uuid tags: - openportal-project-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openportal-project-template/{uuid}/: get: operationId: openportal_project_template_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-project-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectTemplate' description: '' put: operationId: openportal_project_template_update description: Update ProjectTemplate object (full update) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-project-template requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectTemplate' description: '' patch: operationId: openportal_project_template_partial_update description: Partially update ProjectTemplate object parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-project-template requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectTemplateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectTemplate' description: '' delete: operationId: openportal_project_template_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-project-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-project-template/{uuid}/delete/: delete: operationId: openportal_project_template_delete_destroy description: Delete ProjectTemplate object parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-project-template security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-projectinfo/: get: operationId: openportal_projectinfo_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve tags: - openportal-projectinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectInfo' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openportal_projectinfo_create tags: - openportal-projectinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectInfoRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProjectInfo' description: '' head: operationId: openportal_projectinfo_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve tags: - openportal-projectinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openportal-projectinfo/{project}/: get: operationId: openportal_projectinfo_retrieve parameters: - in: path name: project schema: type: integer format: uri required: true x-waldur-operation-id: projects_retrieve tags: - openportal-projectinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectInfo' description: '' put: operationId: openportal_projectinfo_update parameters: - in: path name: project schema: type: integer format: uri required: true x-waldur-operation-id: projects_retrieve tags: - openportal-projectinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectInfoRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectInfo' description: '' patch: operationId: openportal_projectinfo_partial_update parameters: - in: path name: project schema: type: integer format: uri required: true x-waldur-operation-id: projects_retrieve tags: - openportal-projectinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectInfoRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectInfo' description: '' delete: operationId: openportal_projectinfo_destroy parameters: - in: path name: project schema: type: integer format: uri required: true x-waldur-operation-id: projects_retrieve tags: - openportal-projectinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-projectinfo/{project}/set_allowed_destinations/: put: operationId: openportal_projectinfo_set_allowed_destinations_update parameters: - in: path name: project schema: type: integer format: uri required: true x-waldur-operation-id: projects_retrieve tags: - openportal-projectinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectInfoRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectInfo' description: '' /api/openportal-projectinfo/{project}/set_shortname/: put: operationId: openportal_projectinfo_set_shortname_update parameters: - in: path name: project schema: type: integer format: uri required: true x-waldur-operation-id: projects_retrieve tags: - openportal-projectinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectInfoRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectInfo' description: '' /api/openportal-remote-allocations/: get: operationId: openportal_remote_allocations_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/RemoteAllocationFieldEnum' - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openportal-remote-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteAllocation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openportal_remote_allocations_create tags: - openportal-remote-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteAllocationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RemoteAllocation' description: '' head: operationId: openportal_remote_allocations_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openportal-remote-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openportal-remote-allocations/{uuid}/: get: operationId: openportal_remote_allocations_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RemoteAllocationFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteAllocation' description: '' put: operationId: openportal_remote_allocations_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteAllocationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteAllocation' description: '' patch: operationId: openportal_remote_allocations_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRemoteAllocationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteAllocation' description: '' delete: operationId: openportal_remote_allocations_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-remote-allocations/{uuid}/pull/: post: operationId: openportal_remote_allocations_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openportal-remote-allocations/{uuid}/set_erred/: post: operationId: openportal_remote_allocations_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openportal-remote-allocations/{uuid}/set_limits/: post: operationId: openportal_remote_allocations_set_limits parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteAllocationSetLimitsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteAllocationSetLimits' description: '' /api/openportal-remote-allocations/{uuid}/set_ok/: post: operationId: openportal_remote_allocations_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openportal-remote-allocations/{uuid}/unlink/: post: operationId: openportal_remote_allocations_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-remote-associations/: get: operationId: openportal_remote_associations_list parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: openportal_remote_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: openportal_allocations_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openportal-remote-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteAssociation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openportal_remote_associations_count parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: openportal_remote_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: openportal_allocations_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openportal-remote-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openportal-remote-associations/{uuid}/: get: operationId: openportal_remote_associations_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-remote-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteAssociation' description: '' /api/openportal-unmanaged-projects/: get: operationId: openportal_unmanaged_projects_list description: Retrieve a list of projects. The list is filtered based on the user's permissions. By default, only active projects are shown. summary: List projects parameters: - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: backend_id schema: type: string - in: query name: can_admin schema: type: boolean description: Return a list of projects where current user is admin. - in: query name: can_manage schema: type: boolean description: Return a list of projects where current user is manager or a customer owner. - in: query name: conceal_finished_projects schema: type: boolean description: Conceal finished projects - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: description schema: type: string description: Description - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProjectFieldEnum' - in: query name: include_terminated schema: type: boolean description: Include soft-deleted (terminated) projects. Only available to staff and support users, or users with organizational roles who can see their terminated projects. - in: query name: is_removed schema: type: boolean description: Is removed - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerProjectOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, slug, UUID, backend ID or resource effective ID - in: query name: slug schema: type: string description: Slug - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Project' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openportal_unmanaged_projects_create description: A new project can be created by users with staff privilege (is_staff=True) or customer owners. Project resource quota is optional. summary: Create a new project tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectRequest' examples: CreateProject: value: name: Project A customer: http://example.com/api/customers/6c9b01c251c24174a6691a1f894fae31/ summary: Create project application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ProjectRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' head: operationId: openportal_unmanaged_projects_count description: Get number of items in the collection matching the request parameters. summary: List projects parameters: - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: backend_id schema: type: string - in: query name: can_admin schema: type: boolean description: Return a list of projects where current user is admin. - in: query name: can_manage schema: type: boolean description: Return a list of projects where current user is manager or a customer owner. - in: query name: conceal_finished_projects schema: type: boolean description: Conceal finished projects - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: description schema: type: string description: Description - in: query name: include_terminated schema: type: boolean description: Include soft-deleted (terminated) projects. Only available to staff and support users, or users with organizational roles who can see their terminated projects. - in: query name: is_removed schema: type: boolean description: Is removed - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerProjectOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, slug, UUID, backend ID or resource effective ID - in: query name: slug schema: type: string description: Slug - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openportal-unmanaged-projects/{uuid}/: get: operationId: openportal_unmanaged_projects_retrieve description: Fetch the details of a specific project by its UUID. Users can access details of terminated projects they previously had access to. summary: Retrieve project details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProjectFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' put: operationId: openportal_unmanaged_projects_update description: Update the details of a project. Requires project administrator or customer owner permissions. summary: Update project details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ProjectRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' x-permissions: - permission: PROJECT.UPDATE scopes: - '*' - customer patch: operationId: openportal_unmanaged_projects_partial_update description: Partially update the details of a project. Requires project administrator or customer owner permissions. summary: Partially update project details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' x-permissions: - permission: PROJECT.UPDATE scopes: - '*' - customer delete: operationId: openportal_unmanaged_projects_destroy description: Delete a project. If the project has any active resources, the deletion request will fail with a 409 Conflict response. This action performs a soft-delete, and the project can be recovered later. summary: Delete a project parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: PROJECT.DELETE scopes: - customer /api/openportal-unmanaged-projects/{uuid}/add_user/: post: operationId: openportal_unmanaged_projects_add_user description: Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set. summary: Grant a role to a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' examples: GrantProjectAdminRoleUntilEndOfYear: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2024-12-31' summary: Grant project admin role until end of year required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleGrantResponse: value: expiration_time: '2024-12-31T00:00:00Z' summary: Successful role grant response description: '' '400': description: Validation error, for example when trying to add a user to a terminated project. /api/openportal-unmanaged-projects/{uuid}/checklist/: get: operationId: openportal_unmanaged_projects_checklist_retrieve description: Get checklist with questions and existing answers. parameters: - in: query name: include_all schema: type: boolean description: 'If true, returns all questions including hidden ones (for dynamic form visibility). Default: false.' - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistResponse' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/openportal-unmanaged-projects/{uuid}/completion_status/: get: operationId: openportal_unmanaged_projects_completion_status_retrieve description: Get checklist completion status. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistCompletion' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/openportal-unmanaged-projects/{uuid}/delete_user/: post: operationId: openportal_unmanaged_projects_delete_user description: Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role. summary: Revoke a role from a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleDeleteRequest' examples: RevokeProjectAdminRoleFromUser: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN summary: Revoke project admin role from user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role revoked successfully. /api/openportal-unmanaged-projects/{uuid}/list_users/: get: operationId: openportal_unmanaged_projects_list_users_list description: 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. summary: List users and their roles in a scope parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsFieldEnum' description: Fields to include in response - in: query name: full_name schema: type: string description: User full name - in: query name: native_name schema: type: string description: User native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsOEnum' description: Ordering fields - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string format: uuid description: Role UUID or name x-waldur-operation-id: roles_retrieve - in: query name: search_string schema: type: string description: Search string for user - in: query name: user schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug - in: query name: user_url schema: type: string description: User URL - in: query name: username schema: type: string description: User username - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRoleDetails' description: '' examples: ExampleUserRoleListResponse: value: - - uuid: a7e6b0a29a434d2889273c5240217a26 created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' role_name: PROJECT.ADMIN role_uuid: d8c2d5852d434937985392d24249b6d3 user_email: alice@example.com user_full_name: Alice Smith user_username: alice user_uuid: 8f20242b638743b18a485f81ac685e13 user_image: null created_by_full_name: Bob Johnson created_by_uuid: b4e4c2f1a6f24a8d8e4c2f1a6f24a8d8 summary: Example user role list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/openportal-unmanaged-projects/{uuid}/move_project/: post: operationId: openportal_unmanaged_projects_move_project description: Moves a project and its associated resources to a different customer. You can choose whether to preserve existing project permissions for users. Terminated projects can also be moved. summary: Move project to another customer parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/MoveProjectRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' /api/openportal-unmanaged-projects/{uuid}/recover/: post: operationId: openportal_unmanaged_projects_recover description: Recovers a soft-deleted (terminated) project, making it active again. Provides options to restore previous team members automatically (staff-only) or send them new invitations. summary: Recover a soft-deleted project parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectRecoveryRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' x-permissions: - permission: PROJECT.CREATE scopes: - customer /api/openportal-unmanaged-projects/{uuid}/stats/: get: operationId: openportal_unmanaged_projects_stats_retrieve description: Provides statistics about the resource usage (e.g., CPU, RAM, storage) for all resources within a project. Can be filtered to show usage for the current month only. summary: Get project resource usage statistics parameters: - in: query name: for_current_month schema: type: boolean description: If true, returns usage data for the current month only. Otherwise, returns total usage. - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComponentsUsageStats' description: '' /api/openportal-unmanaged-projects/{uuid}/submit_answers/: post: operationId: openportal_unmanaged_projects_submit_answers description: Submit checklist answers. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/AnswerSubmitRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AnswerSubmitResponse' description: '' '400': content: application/json: schema: description: Validation error or no checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/openportal-unmanaged-projects/{uuid}/update_user/: post: operationId: openportal_unmanaged_projects_update_user description: 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. summary: Update a user's role expiration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openportal-unmanaged-projects requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleUpdateRequest' examples: ExtendRoleUntilMid-2025: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2025-06-30' summary: Extend role until mid-2025 MakeARolePermanent: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: null summary: Make a role permanent required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleUpdateResponse: value: expiration_time: '2025-06-30T00:00:00Z' summary: Successful role update response description: '' /api/openportal-unmanaged-projects/checklist-template/: get: operationId: openportal_unmanaged_projects_checklist_template_retrieve description: Get checklist template for creating new objects. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistTemplate' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Parent object not found description: '' head: operationId: openportal_unmanaged_projects_checklist_template_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - openportal-unmanaged-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openportal-userinfo/: get: operationId: openportal_userinfo_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - openportal-userinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserInfo' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openportal_userinfo_create tags: - openportal-userinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/UserInfoRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserInfo' description: '' head: operationId: openportal_userinfo_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - openportal-userinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openportal-userinfo/{user}/: get: operationId: openportal_userinfo_retrieve parameters: - in: path name: user schema: type: integer format: uri required: true x-waldur-operation-id: users_retrieve tags: - openportal-userinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserInfo' description: '' put: operationId: openportal_userinfo_update parameters: - in: path name: user schema: type: integer format: uri required: true x-waldur-operation-id: users_retrieve tags: - openportal-userinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/UserInfoRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserInfo' description: '' patch: operationId: openportal_userinfo_partial_update parameters: - in: path name: user schema: type: integer format: uri required: true x-waldur-operation-id: users_retrieve tags: - openportal-userinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUserInfoRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserInfo' description: '' delete: operationId: openportal_userinfo_destroy parameters: - in: path name: user schema: type: integer format: uri required: true x-waldur-operation-id: users_retrieve tags: - openportal-userinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openportal-userinfo/{user}/set_shortname/: put: operationId: openportal_userinfo_set_shortname_update parameters: - in: path name: user schema: type: integer format: uri required: true x-waldur-operation-id: users_retrieve tags: - openportal-userinfo requestBody: content: application/json: schema: $ref: '#/components/schemas/UserInfoRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserInfo' description: '' /api/openportal-userinfo/me/: get: operationId: openportal_userinfo_me_retrieve tags: - openportal-userinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserInfo' description: '' head: operationId: openportal_userinfo_me_count tags: - openportal-userinfo security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openstack-backups/: get: operationId: openstack_backups_list description: Get a list of instance backups. summary: List backups parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackBackupFieldEnum' - in: query name: instance schema: type: string format: uri description: Instance URL x-waldur-operation-id: openstack_instances_retrieve - in: query name: instance_uuid schema: type: string format: uuid description: Instance UUID x-waldur-operation-id: openstack_instances_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-backups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackBackup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_backups_count description: Get number of items in the collection matching the request parameters. summary: List backups parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: instance schema: type: string format: uri description: Instance URL x-waldur-operation-id: openstack_instances_retrieve - in: query name: instance_uuid schema: type: string format: uuid description: Instance UUID x-waldur-operation-id: openstack_instances_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-backups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-backups/{uuid}/: get: operationId: openstack_backups_retrieve description: Retrieve details of a specific instance backup. summary: Get backup details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackBackupFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackBackup' description: '' put: operationId: openstack_backups_update description: Update an existing instance backup. summary: Update backup parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackBackupRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackBackup' description: '' patch: operationId: openstack_backups_partial_update description: Update specific fields of an instance backup. summary: Partially update backup parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackBackupRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackBackup' description: '' delete: operationId: openstack_backups_destroy description: Delete an instance backup. summary: Delete backup parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-backups/{uuid}/pull/: post: operationId: openstack_backups_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-backups/{uuid}/restore/: post: operationId: openstack_backups_restore description: Restore instance from backup summary: Restore instance from backup parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackBackupRestorationCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackInstance' description: '' /api/openstack-backups/{uuid}/set_erred/: post: operationId: openstack_backups_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-backups/{uuid}/set_ok/: post: operationId: openstack_backups_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-backups/{uuid}/unlink/: post: operationId: openstack_backups_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-backups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-external-networks/: get: operationId: openstack_external_networks_list description: Get a list of provider-level external networks discovered from OpenStack. summary: List external networks parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ExternalNetworkFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - openstack-external-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ExternalNetwork' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_external_networks_count description: Get number of items in the collection matching the request parameters. summary: List external networks parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - openstack-external-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-external-networks/{uuid}/: get: operationId: openstack_external_networks_retrieve description: Retrieve details of a specific external network, including its subnets. summary: Get external network details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ExternalNetworkFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-external-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExternalNetwork' description: '' /api/openstack-flavors/: get: operationId: openstack_flavors_list description: Get a list of available VM instance flavors. summary: List flavors parameters: - in: query name: cores schema: type: integer - in: query name: cores__gte schema: type: integer - in: query name: cores__lte schema: type: integer - in: query name: disk schema: type: integer - in: query name: disk__gte schema: type: integer - in: query name: disk__lte schema: type: integer - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackFlavorFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: name_iregex schema: type: string description: Name (regex) - in: query name: o schema: type: array items: $ref: '#/components/schemas/OpenStackFlavorOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: ram schema: type: integer - in: query name: ram__gte schema: type: integer - in: query name: ram__lte schema: type: integer - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-flavors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackFlavor' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_flavors_count description: Get number of items in the collection matching the request parameters. summary: List flavors parameters: - in: query name: cores schema: type: integer - in: query name: cores__gte schema: type: integer - in: query name: cores__lte schema: type: integer - in: query name: disk schema: type: integer - in: query name: disk__gte schema: type: integer - in: query name: disk__lte schema: type: integer - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: name_iregex schema: type: string description: Name (regex) - in: query name: o schema: type: array items: $ref: '#/components/schemas/OpenStackFlavorOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: ram schema: type: integer - in: query name: ram__gte schema: type: integer - in: query name: ram__lte schema: type: integer - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-flavors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-flavors/{uuid}/: get: operationId: openstack_flavors_retrieve description: Retrieve details of a specific VM instance flavor. summary: Get flavor details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackFlavorFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-flavors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackFlavor' description: '' /api/openstack-flavors/usage_stats/: get: operationId: openstack_flavors_usage_stats_retrieve description: Retrieve usage statistics for VM instance flavors, showing running and created instance counts for each flavor. summary: Get flavor usage statistics parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackFlavorFieldEnum' tags: - openstack-flavors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackFlavor' description: '' head: operationId: openstack_flavors_usage_stats_count description: Get number of items in the collection matching the request parameters. summary: Get flavor usage statistics tags: - openstack-flavors security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-floating-ips/: get: operationId: openstack_floating_ips_list description: Get a list of floating IP addresses. Status *DOWN* means that floating IP is not linked to a VM, status *ACTIVE* means that it is in use. summary: List floating IPs parameters: - in: query name: address schema: type: string - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackFloatingIPFieldEnum' - in: query name: free schema: type: boolean description: Is free - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-floating-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackFloatingIP' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_floating_ips_count description: Get number of items in the collection matching the request parameters. summary: List floating IPs parameters: - in: query name: address schema: type: string - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: free schema: type: boolean description: Is free - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-floating-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-floating-ips/{uuid}/: get: operationId: openstack_floating_ips_retrieve description: Retrieve details of a specific floating IP address. summary: Get floating IP details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackFloatingIPFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackFloatingIP' description: '' delete: operationId: openstack_floating_ips_destroy description: Delete a floating IP address. summary: Delete floating IP parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-floating-ips/{uuid}/attach_to_port/: post: operationId: openstack_floating_ips_attach_to_port description: Attach floating IP to port summary: Attach floating IP to a port parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackFloatingIPAttachRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-floating-ips/{uuid}/detach_from_port/: post: operationId: openstack_floating_ips_detach_from_port description: Detach floating IP from port summary: Detach floating IP from port parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-floating-ips/{uuid}/pull/: post: operationId: openstack_floating_ips_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-floating-ips/{uuid}/set_erred/: post: operationId: openstack_floating_ips_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-floating-ips/{uuid}/set_ok/: post: operationId: openstack_floating_ips_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-floating-ips/{uuid}/unlink/: post: operationId: openstack_floating_ips_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-floating-ips/{uuid}/update_description/: post: operationId: openstack_floating_ips_update_description description: Update description of the floating IP summary: Update floating IP description parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-floating-ips requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackFloatingIPDescriptionUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-images/: get: operationId: openstack_images_list description: Get a list of available VM instance images. summary: List images parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: show_duplicate_names schema: type: boolean description: Show duplicate image names - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackImage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_images_count description: Get number of items in the collection matching the request parameters. summary: List images parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: show_duplicate_names schema: type: boolean description: Show duplicate image names - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-images/{uuid}/: get: operationId: openstack_images_retrieve description: Retrieve details of a specific VM instance image. summary: Get image details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackImage' description: '' /api/openstack-images/usage_stats/: get: operationId: openstack_images_usage_stats_retrieve description: Retrieve usage statistics for VM instance images, showing running and created instance counts for each image. summary: Get image usage statistics tags: - openstack-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackImage' description: '' head: operationId: openstack_images_usage_stats_count description: Get number of items in the collection matching the request parameters. summary: Get image usage statistics tags: - openstack-images security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instance-availability-zones/: get: operationId: openstack_instance_availability_zones_list description: Get a list of instance availability zones. summary: List instance availability zones parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-instance-availability-zones security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackInstanceAvailabilityZone' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_instance_availability_zones_count description: Get number of items in the collection matching the request parameters. summary: List instance availability zones parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-instance-availability-zones security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instance-availability-zones/{uuid}/: get: operationId: openstack_instance_availability_zones_retrieve description: Retrieve details of a specific instance availability zone. summary: Get instance availability zone details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instance-availability-zones security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackInstanceAvailabilityZone' description: '' /api/openstack-instances/: get: operationId: openstack_instances_list description: Get a list of VM instances. summary: List instances parameters: - in: query name: attach_volume_uuid schema: type: string format: uuid description: Filter for attachment to volume UUID x-waldur-operation-id: openstack_volumes_retrieve - in: query name: availability_zone_name schema: type: string description: Availability zone name - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackInstanceFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: $ref: '#/components/schemas/OpenStackInstanceOEnum' description: Ordering. Sort by start time. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by name, internal IP, or external IP - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackInstance' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_instances_count description: Get number of items in the collection matching the request parameters. summary: List instances parameters: - in: query name: attach_volume_uuid schema: type: string format: uuid description: Filter for attachment to volume UUID x-waldur-operation-id: openstack_volumes_retrieve - in: query name: availability_zone_name schema: type: string description: Availability zone name - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: $ref: '#/components/schemas/OpenStackInstanceOEnum' description: Ordering. Sort by start time. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by name, internal IP, or external IP - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instances/{uuid}/: get: operationId: openstack_instances_retrieve description: Retrieve details of a specific VM instance. summary: Get instance details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackInstanceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackInstance' description: '' put: operationId: openstack_instances_update description: Update an existing VM instance. summary: Update instance parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackInstanceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackInstance' description: '' patch: operationId: openstack_instances_partial_update description: Update specific fields of a VM instance. summary: Partially update instance parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackInstanceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackInstance' description: '' /api/openstack-instances/{uuid}/backup/: post: operationId: openstack_instances_backup description: Create backup from instance summary: Create instance backup parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackBackupRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackBackup' description: '' /api/openstack-instances/{uuid}/change_flavor/: post: operationId: openstack_instances_change_flavor description: Change flavor of the instance summary: Change instance flavor parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/InstanceFlavorChangeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instances/{uuid}/console/: get: operationId: openstack_instances_console_retrieve description: Get console url for the instance summary: Get console URL parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConsoleUrl' description: '' /api/openstack-instances/{uuid}/console_log/: get: operationId: openstack_instances_console_log_retrieve description: Get console log for the instance summary: Get console log parameters: - in: query name: length schema: type: integer - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: string description: '' /api/openstack-instances/{uuid}/floating_ips/: get: operationId: openstack_instances_floating_ips_list description: Get a list of instance floating IPs summary: List instance floating IPs parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackNestedFloatingIP' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/openstack-instances/{uuid}/ports/: get: operationId: openstack_instances_ports_list description: Get a list of instance ports summary: List instance ports parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackNestedPort' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/openstack-instances/{uuid}/pull/: post: operationId: openstack_instances_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-instances/{uuid}/restart/: post: operationId: openstack_instances_restart description: Restart the instance summary: Restart instance parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instances/{uuid}/set_erred/: post: operationId: openstack_instances_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-instances/{uuid}/set_ok/: post: operationId: openstack_instances_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-instances/{uuid}/start/: post: operationId: openstack_instances_start description: Start the instance summary: Start instance parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instances/{uuid}/stop/: post: operationId: openstack_instances_stop description: Stop the instance summary: Stop instance parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instances/{uuid}/unlink/: post: operationId: openstack_instances_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-instances/{uuid}/update_allowed_address_pairs/: post: operationId: openstack_instances_update_allowed_address_pairs description: Update allowed address pairs of the instance summary: Update instance allowed address pairs parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackInstanceAllowedAddressPairsUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instances/{uuid}/update_floating_ips/: post: operationId: openstack_instances_update_floating_ips description: Update floating IPs of the instance summary: Update instance floating IPs parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackInstanceFloatingIPsUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instances/{uuid}/update_ports/: post: operationId: openstack_instances_update_ports description: Update ports of the instance summary: Update instance ports parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackInstancePortsUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-instances/{uuid}/update_security_groups/: post: operationId: openstack_instances_update_security_groups description: Update security groups of the instance summary: Update instance security groups parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-instances requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackInstanceSecurityGroupsUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-marketplace-tenants/: get: operationId: openstack_marketplace_tenants_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-marketplace-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Tenant' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_marketplace_tenants_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-marketplace-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openstack-marketplace-tenants/{uuid}/: get: operationId: openstack_marketplace_tenants_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-marketplace-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Tenant' description: '' /api/openstack-marketplace-tenants/{uuid}/create_image/: post: operationId: openstack_marketplace_tenants_create_image parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-marketplace-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/ImageCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ImageCreateResponse' description: '' /api/openstack-marketplace-tenants/{uuid}/upload_image_data/{image_id}/: post: operationId: openstack_marketplace_tenants_upload_image_data parameters: - in: path name: image_id schema: type: string format: uuid required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-marketplace-tenants requestBody: content: application/json: schema: type: string format: binary required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ImageUploadResponse' description: '' /api/openstack-migrations/: get: operationId: openstack_migrations_list parameters: - in: query name: dst_resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: src_resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve tags: - openstack-migrations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MigrationDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openstack_migrations_create tags: - openstack-migrations requestBody: content: application/json: schema: $ref: '#/components/schemas/MigrationCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/MigrationCreate' description: '' head: operationId: openstack_migrations_count parameters: - in: query name: dst_resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: src_resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve tags: - openstack-migrations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/openstack-migrations/{uuid}/: get: operationId: openstack_migrations_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-migrations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MigrationDetails' description: '' put: operationId: openstack_migrations_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-migrations requestBody: content: application/json: schema: $ref: '#/components/schemas/MigrationDetailsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MigrationDetails' description: '' patch: operationId: openstack_migrations_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-migrations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMigrationDetailsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MigrationDetails' description: '' delete: operationId: openstack_migrations_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-migrations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-network-rbac-policies/: get: operationId: openstack_network_rbac_policies_list description: Get a list of network RBAC policies. summary: List network RBAC policies parameters: - in: query name: network schema: type: string format: uri description: Network URL x-waldur-operation-id: openstack_networks_retrieve - in: query name: network_uuid schema: type: string format: uuid description: Network UUID x-waldur-operation-id: openstack_networks_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: policy_type schema: $ref: '#/components/schemas/PolicyTypeEnum' description: |+ Type of access granted - either shared access or external network access - in: query name: target_tenant schema: type: string format: uri description: Target tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: target_tenant_uuid schema: type: string format: uuid description: Target tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-network-rbac-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/NetworkRBACPolicy' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openstack_network_rbac_policies_create description: Create RBAC policy for the network summary: Create RBAC policy tags: - openstack-network-rbac-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/NetworkRBACPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/NetworkRBACPolicy' description: '' head: operationId: openstack_network_rbac_policies_count description: Get number of items in the collection matching the request parameters. summary: List network RBAC policies parameters: - in: query name: network schema: type: string format: uri description: Network URL x-waldur-operation-id: openstack_networks_retrieve - in: query name: network_uuid schema: type: string format: uuid description: Network UUID x-waldur-operation-id: openstack_networks_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: policy_type schema: $ref: '#/components/schemas/PolicyTypeEnum' description: |+ Type of access granted - either shared access or external network access - in: query name: target_tenant schema: type: string format: uri description: Target tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: target_tenant_uuid schema: type: string format: uuid description: Target tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-network-rbac-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-network-rbac-policies/{uuid}/: get: operationId: openstack_network_rbac_policies_retrieve description: Retrieve details of a specific network RBAC policy. summary: Get network RBAC policy details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-network-rbac-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/NetworkRBACPolicy' description: '' put: operationId: openstack_network_rbac_policies_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-network-rbac-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/NetworkRBACPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/NetworkRBACPolicy' description: '' patch: operationId: openstack_network_rbac_policies_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-network-rbac-policies requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedNetworkRBACPolicyRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/NetworkRBACPolicy' description: '' delete: operationId: openstack_network_rbac_policies_destroy description: Delete RBAC policy for the network summary: Delete RBAC policy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-network-rbac-policies security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-networks/: get: operationId: openstack_networks_list description: Get a list of networks. summary: List networks parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: direct_only schema: type: boolean description: Direct only - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackNetworkFieldEnum' - in: query name: is_external schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: rbac_only schema: type: boolean description: RBAC only - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: type schema: type: string - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackNetwork' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_networks_count description: Get number of items in the collection matching the request parameters. summary: List networks parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: direct_only schema: type: boolean description: Direct only - in: query name: external_ip schema: type: string description: External IP - in: query name: is_external schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: rbac_only schema: type: boolean description: RBAC only - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: type schema: type: string - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-networks/{uuid}/: get: operationId: openstack_networks_retrieve description: Retrieve details of a specific network. summary: Get network details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackNetworkFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackNetwork' description: '' put: operationId: openstack_networks_update description: Update an existing network. summary: Update network parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackNetworkRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackNetwork' description: '' patch: operationId: openstack_networks_partial_update description: Update specific fields of a network. summary: Partially update network parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackNetworkRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackNetwork' description: '' delete: operationId: openstack_networks_destroy description: Delete a network. summary: Delete network parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-networks/{uuid}/create_subnet/: post: operationId: openstack_networks_create_subnet description: Create a new subnet within the network. summary: Create subnet parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackSubNetRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSubNet' description: '' /api/openstack-networks/{uuid}/pull/: post: operationId: openstack_networks_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-networks/{uuid}/rbac_policy_create/: post: operationId: openstack_networks_rbac_policy_create description: 'Create RBAC policy for the network. DEPRECATED: please use the dedicated /api/openstack-network-rbac-policies/ endpoint.' summary: Create RBAC policy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks requestBody: content: application/json: schema: $ref: '#/components/schemas/DeprecatedNetworkRBACPolicyRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] deprecated: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/DeprecatedNetworkRBACPolicy' description: '' /api/openstack-networks/{uuid}/rbac_policy_delete/{rbac_policy_uuid}/: delete: operationId: openstack_networks_rbac_policy_delete_destroy description: 'Delete RBAC policy for the network. DEPRECATED: please use the dedicated /api/openstack-network-rbac-policies/ endpoint.' summary: Delete RBAC policy parameters: - in: path name: rbac_policy_uuid schema: type: string format: uuid description: UUID of the RBAC policy to delete required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks security: - tokenAuth: [] - waldurOIDCAuth: [] deprecated: true responses: '204': description: No response body /api/openstack-networks/{uuid}/set_erred/: post: operationId: openstack_networks_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-networks/{uuid}/set_mtu/: post: operationId: openstack_networks_set_mtu description: Update the Maximum Transmission Unit (MTU) for the network. summary: Set network MTU parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks requestBody: content: application/json: schema: $ref: '#/components/schemas/SetMtuRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetMtu' description: '' /api/openstack-networks/{uuid}/set_ok/: post: operationId: openstack_networks_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-networks/{uuid}/unlink/: post: operationId: openstack_networks_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-ports/: get: operationId: openstack_ports_list description: Get a list of network ports. summary: List ports parameters: - in: query name: admin_state_up schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: device_id schema: type: string - in: query name: device_owner schema: type: string - in: query name: exclude_subnet_uuids schema: type: string description: Exclude Subnet UUIDs (comma-separated) - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackPortFieldEnum' - in: query name: fixed_ips schema: type: string description: Search by fixed IP - in: query name: has_device_owner schema: type: boolean description: Has device owner - in: query name: mac_address schema: type: string - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: network_name schema: type: string description: Search by network name - in: query name: network_uuid schema: type: string format: uuid description: Search by network UUID x-waldur-operation-id: openstack_networks_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/OpenStackPortOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Search by name, MAC address or backend ID - in: query name: status schema: type: string - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackPort' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openstack_ports_create description: Create a new network port. summary: Create port tags: - openstack-ports requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackPortRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OpenStackPort' description: '' head: operationId: openstack_ports_count description: Get number of items in the collection matching the request parameters. summary: List ports parameters: - in: query name: admin_state_up schema: type: boolean - in: query name: backend_id schema: type: string - in: query name: device_id schema: type: string - in: query name: device_owner schema: type: string - in: query name: exclude_subnet_uuids schema: type: string description: Exclude Subnet UUIDs (comma-separated) - in: query name: fixed_ips schema: type: string description: Search by fixed IP - in: query name: has_device_owner schema: type: boolean description: Has device owner - in: query name: mac_address schema: type: string - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: network_name schema: type: string description: Search by network name - in: query name: network_uuid schema: type: string format: uuid description: Search by network UUID x-waldur-operation-id: openstack_networks_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/OpenStackPortOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Search by name, MAC address or backend ID - in: query name: status schema: type: string - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-ports/{uuid}/: get: operationId: openstack_ports_retrieve description: Retrieve details of a specific network port. summary: Get port details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackPortFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackPort' description: '' put: operationId: openstack_ports_update description: Update an existing network port. summary: Update port parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackPortRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackPort' description: '' patch: operationId: openstack_ports_partial_update description: Update specific fields of a network port. summary: Partially update port parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackPortRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackPort' description: '' delete: operationId: openstack_ports_destroy description: Delete a network port. summary: Delete port parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-ports/{uuid}/disable_port/: post: operationId: openstack_ports_disable_port description: Disable port. summary: Disable port parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-ports/{uuid}/disable_port_security/: post: operationId: openstack_ports_disable_port_security description: Disable port security for the port summary: Disable port security parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-ports/{uuid}/enable_port/: post: operationId: openstack_ports_enable_port description: Enable port. summary: Enable port parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-ports/{uuid}/enable_port_security/: post: operationId: openstack_ports_enable_port_security description: Enable port security for the port summary: Enable port security parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-ports/{uuid}/pull/: post: operationId: openstack_ports_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-ports/{uuid}/set_erred/: post: operationId: openstack_ports_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-ports/{uuid}/set_ok/: post: operationId: openstack_ports_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-ports/{uuid}/unlink/: post: operationId: openstack_ports_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-ports/{uuid}/update_port_ip/: post: operationId: openstack_ports_update_port_ip description: Update port IP address. summary: Update port IP address parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackPortIPUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-ports/{uuid}/update_security_groups/: post: operationId: openstack_ports_update_security_groups description: Update security groups of the port summary: Update port security groups parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-ports requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackInstanceSecurityGroupsUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-routers/: get: operationId: openstack_routers_list description: Get a list of routers. summary: List routers parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackRouterFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-routers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackRouter' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openstack_routers_create description: Create a new router. summary: Create router tags: - openstack-routers requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateRouterRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CreateRouter' description: '' head: operationId: openstack_routers_count description: Get number of items in the collection matching the request parameters. summary: List routers parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-routers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-routers/{uuid}/: get: operationId: openstack_routers_retrieve description: Retrieve details of a specific router. summary: Get router details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackRouterFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-routers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackRouter' description: '' delete: operationId: openstack_routers_destroy description: Delete a router. summary: Delete router parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-routers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-routers/{uuid}/add_router_interface/: post: operationId: openstack_routers_add_router_interface description: Add interface to router. Either subnet or port must be provided. summary: Add router interface parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-routers requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackRouterInterfaceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-routers/{uuid}/remove_router_interface/: post: operationId: openstack_routers_remove_router_interface description: Remove interface from router. Either subnet or port must be provided. summary: Remove router interface parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-routers requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackRouterInterfaceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-routers/{uuid}/set_erred/: post: operationId: openstack_routers_set_erred description: Manually transition the router to ERRED state. This is useful for routers stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark router as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-routers requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RouterSetErredResponse' description: '' /api/openstack-routers/{uuid}/set_ok/: post: operationId: openstack_routers_set_ok description: Manually transition the router to OK state and clear error fields. Staff-only operation. summary: Mark router as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-routers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RouterSetOkResponse' description: '' /api/openstack-routers/{uuid}/set_routes/: post: operationId: openstack_routers_set_routes description: Define or overwrite the static routes for the router. summary: Set static routes parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-routers requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackRouterSetRoutesRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackRouterSetRoutes' description: '' /api/openstack-security-groups/: get: operationId: openstack_security_groups_list description: Get a list of security groups. summary: List security groups parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by name or description - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_security_groups_count description: Get number of items in the collection matching the request parameters. summary: List security groups parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Search by name or description - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-security-groups/{uuid}/: get: operationId: openstack_security_groups_retrieve description: Retrieve details of a specific security group. summary: Get security group details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSecurityGroup' description: '' put: operationId: openstack_security_groups_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackSecurityGroupUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSecurityGroupUpdate' description: '' patch: operationId: openstack_security_groups_partial_update description: Update specific fields of a security group. summary: Partially update security group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackSecurityGroupUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSecurityGroupUpdate' description: '' delete: operationId: openstack_security_groups_destroy description: Delete a security group. summary: Delete security group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-security-groups/{uuid}/pull/: post: operationId: openstack_security_groups_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-security-groups/{uuid}/set_erred/: post: operationId: openstack_security_groups_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-security-groups/{uuid}/set_ok/: post: operationId: openstack_security_groups_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-security-groups/{uuid}/set_rules/: post: operationId: openstack_security_groups_set_rules description: Update the rules for a specific security group. This overwrites all existing rules. summary: Set security group rules parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupRuleUpdateRequest' examples: Openstack-security-group-set-rules: value: - - protocol: tcp from_port: 1 to_port: 10 cidr: 10.1.1.0/24 summary: openstack-security-group-set-rules required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-security-groups/{uuid}/unlink/: post: operationId: openstack_security_groups_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-server-groups/: get: operationId: openstack_server_groups_list description: Get a list of server groups. summary: List server groups parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackServerGroupFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-server-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackServerGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: openstack_server_groups_create tags: - openstack-server-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackServerGroupRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OpenStackServerGroup' description: '' head: operationId: openstack_server_groups_count description: Get number of items in the collection matching the request parameters. summary: List server groups parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-server-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-server-groups/{uuid}/: get: operationId: openstack_server_groups_retrieve description: Retrieve details of a specific server group. summary: Get server group details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackServerGroupFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-server-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackServerGroup' description: '' delete: operationId: openstack_server_groups_destroy description: Delete a server group. summary: Delete server group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-server-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-server-groups/{uuid}/pull/: post: operationId: openstack_server_groups_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-server-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-server-groups/{uuid}/set_erred/: post: operationId: openstack_server_groups_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-server-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-server-groups/{uuid}/set_ok/: post: operationId: openstack_server_groups_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-server-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-server-groups/{uuid}/unlink/: post: operationId: openstack_server_groups_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-server-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-snapshots/: get: operationId: openstack_snapshots_list description: Get a list of snapshots. summary: List snapshots parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: backup schema: type: string format: uri description: Backup URL x-waldur-operation-id: openstack_backups_retrieve - in: query name: backup_uuid schema: type: string format: uuid description: Backup UUID x-waldur-operation-id: openstack_backups_retrieve - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackSnapshotFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: source_volume schema: type: string format: uri description: Source volume URL x-waldur-operation-id: openstack_volumes_retrieve - in: query name: source_volume_uuid schema: type: string format: uuid description: Source volume UUID x-waldur-operation-id: openstack_volumes_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-snapshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackSnapshot' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_snapshots_count description: Get number of items in the collection matching the request parameters. summary: List snapshots parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: backup schema: type: string format: uri description: Backup URL x-waldur-operation-id: openstack_backups_retrieve - in: query name: backup_uuid schema: type: string format: uuid description: Backup UUID x-waldur-operation-id: openstack_backups_retrieve - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: source_volume schema: type: string format: uri description: Source volume URL x-waldur-operation-id: openstack_volumes_retrieve - in: query name: source_volume_uuid schema: type: string format: uuid description: Source volume UUID x-waldur-operation-id: openstack_volumes_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-snapshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-snapshots/{uuid}/: get: operationId: openstack_snapshots_retrieve description: Retrieve details of a specific snapshot. summary: Get snapshot details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackSnapshotFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSnapshot' description: '' put: operationId: openstack_snapshots_update description: Update an existing snapshot. summary: Update snapshot parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackSnapshotRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSnapshot' description: '' patch: operationId: openstack_snapshots_partial_update description: Update specific fields of a snapshot. summary: Partially update snapshot parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackSnapshotRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSnapshot' description: '' delete: operationId: openstack_snapshots_destroy description: Delete a snapshot. summary: Delete snapshot parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-snapshots/{uuid}/pull/: post: operationId: openstack_snapshots_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-snapshots/{uuid}/restorations/: get: operationId: openstack_snapshots_restorations_list description: Get a list of snapshot restorations summary: List snapshot restorations parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackSnapshotRestoration' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/openstack-snapshots/{uuid}/restore/: post: operationId: openstack_snapshots_restore description: Restore volume from snapshot summary: Restore volume from snapshot parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackSnapshotRestorationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackVolume' description: '' /api/openstack-snapshots/{uuid}/set_erred/: post: operationId: openstack_snapshots_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-snapshots/{uuid}/set_ok/: post: operationId: openstack_snapshots_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-snapshots/{uuid}/unlink/: post: operationId: openstack_snapshots_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-snapshots security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-subnets/: get: operationId: openstack_subnets_list description: Get a list of subnets. summary: List subnets parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: direct_only schema: type: boolean description: Direct only - in: query name: enable_dhcp schema: type: boolean - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackSubNetFieldEnum' - in: query name: ip_version schema: type: integer - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: network schema: type: string format: uri description: Network URL x-waldur-operation-id: openstack_networks_retrieve - in: query name: network_uuid schema: type: string format: uuid description: Network UUID x-waldur-operation-id: openstack_networks_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: rbac_only schema: type: boolean description: RBAC only - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackSubNet' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_subnets_count description: Get number of items in the collection matching the request parameters. summary: List subnets parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: direct_only schema: type: boolean description: Direct only - in: query name: enable_dhcp schema: type: boolean - in: query name: external_ip schema: type: string description: External IP - in: query name: ip_version schema: type: integer - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: network schema: type: string format: uri description: Network URL x-waldur-operation-id: openstack_networks_retrieve - in: query name: network_uuid schema: type: string format: uuid description: Network UUID x-waldur-operation-id: openstack_networks_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: rbac_only schema: type: boolean description: RBAC only - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-subnets/{uuid}/: get: operationId: openstack_subnets_retrieve description: Retrieve details of a specific subnet. summary: Get subnet details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackSubNetFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSubNet' description: '' put: operationId: openstack_subnets_update description: Update an existing subnet. summary: Update subnet parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackSubNetRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSubNet' description: '' patch: operationId: openstack_subnets_partial_update description: Update specific fields of a subnet. summary: Partially update subnet parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackSubNetRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackSubNet' description: '' delete: operationId: openstack_subnets_destroy description: Delete a subnet. summary: Delete subnet parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-subnets/{uuid}/connect/: post: operationId: openstack_subnets_connect description: Connect the subnet to the default tenant router. summary: Connect subnet to router parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-subnets/{uuid}/disconnect/: post: operationId: openstack_subnets_disconnect description: Disconnect the subnet from the default tenant router. summary: Disconnect subnet from router parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-subnets/{uuid}/pull/: post: operationId: openstack_subnets_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-subnets/{uuid}/set_erred/: post: operationId: openstack_subnets_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-subnets/{uuid}/set_ok/: post: operationId: openstack_subnets_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-subnets/{uuid}/unlink/: post: operationId: openstack_subnets_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-subnets security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-tenants/: get: operationId: openstack_tenants_list description: Get a list of OpenStack tenants. summary: List tenants parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackTenantFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackTenant' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_tenants_count description: Get number of items in the collection matching the request parameters. summary: List tenants parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-tenants/{uuid}/: get: operationId: openstack_tenants_retrieve description: Retrieve details of a specific OpenStack tenant. summary: Get tenant details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackTenantFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackTenant' description: '' put: operationId: openstack_tenants_update description: Update an existing OpenStack tenant. summary: Update tenant parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackTenantRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackTenant' description: '' patch: operationId: openstack_tenants_partial_update description: Update specific fields of an OpenStack tenant. summary: Partially update tenant parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackTenantRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackTenant' description: '' /api/openstack-tenants/{uuid}/backend_instances/: get: operationId: openstack_tenants_backend_instances_list description: Return a list of volumes from backend summary: List backend instances parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackBackendInstance' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/openstack-tenants/{uuid}/backend_volumes/: get: operationId: openstack_tenants_backend_volumes_list description: Return a list of volumes from backend summary: List backend volumes parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackBackendVolumes' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/openstack-tenants/{uuid}/change_password/: post: operationId: openstack_tenants_change_password description: Change password for tenant user summary: Change tenant user password parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackTenantChangePasswordRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-tenants/{uuid}/create_floating_ip/: post: operationId: openstack_tenants_create_floating_ip description: Create floating IP for tenant summary: Create floating IP for tenant parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackFloatingIPRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackFloatingIP' description: '' /api/openstack-tenants/{uuid}/create_network/: post: operationId: openstack_tenants_create_network description: Create network for tenant summary: Create network for tenant parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackNetworkRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackNetwork' description: '' /api/openstack-tenants/{uuid}/create_security_group/: post: operationId: openstack_tenants_create_security_group description: Create a security group for the tenant. summary: Create security group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackSecurityGroupRequest' examples: Openstack-tenant-create-security-group: value: name: Security group name description: description rules: - protocol: tcp from_port: 1 to_port: 10 cidr: 10.1.1.0/24 - protocol: udp from_port: 10 to_port: 8000 cidr: 10.1.1.0/24 summary: openstack-tenant-create-security-group description: Example of creating a security group with rules required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OpenStackSecurityGroup' description: '' /api/openstack-tenants/{uuid}/create_server_group/: post: operationId: openstack_tenants_create_server_group description: Create a new server group for the tenant. summary: Create server group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackServerGroupRequest' examples: Openstack-tenant-create-server-group: value: name: Server group name policy: affinity summary: openstack-tenant-create-server-group required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackServerGroup' description: '' /api/openstack-tenants/{uuid}/pull/: post: operationId: openstack_tenants_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-tenants/{uuid}/pull_floating_ips/: post: operationId: openstack_tenants_pull_floating_ips description: Trigger job to pull floating IPs from remote VPC summary: Pull floating IPs parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body /api/openstack-tenants/{uuid}/pull_quotas/: post: operationId: openstack_tenants_pull_quotas description: It triggers celery job to pull quotas from remote VPC summary: Pull tenant quotas parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-tenants/{uuid}/pull_security_groups/: post: operationId: openstack_tenants_pull_security_groups description: Trigger job to pull security groups from remote VPC summary: Pull security groups parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackTenant' description: '' /api/openstack-tenants/{uuid}/pull_server_groups/: post: operationId: openstack_tenants_pull_server_groups description: Trigger job to pull server groups from remote VPC summary: Pull server groups parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackTenant' description: '' /api/openstack-tenants/{uuid}/push_security_groups/: post: operationId: openstack_tenants_push_security_groups description: |2- * Security groups with UUIDs are updated. * Security groups without UUIDs are created. * Security groups existing in the tenant but not present in the request are deleted. * Rules for created/updated security groups are replaced. To reference a remote group within a rule, use 'remote_group_name' field. summary: Batch update security groups for a tenant. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/TenantSecurityGroupUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-tenants/{uuid}/set_erred/: post: operationId: openstack_tenants_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-tenants/{uuid}/set_ok/: post: operationId: openstack_tenants_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-tenants/{uuid}/set_quotas/: post: operationId: openstack_tenants_set_quotas description: | A quota can be set for a particular tenant. Only staff users and service provider owners/managers can do that. In order to set quota submit POST request to /api/openstack-tenants//set_quotas/. The quota values are propagated to the backend. The following quotas are supported. All values are expected to be integers: - instances - maximal number of created instances. - ram - maximal size of ram for allocation. In MiB_. - storage - maximal size of storage for allocation. In MiB_. - vcpu - maximal number of virtual cores for allocation. - security_group_count - maximal number of created security groups. - security_group_rule_count - maximal number of created security groups rules. - volumes - maximal number of created volumes. - snapshots - maximal number of created snapshots. It is possible to update quotas by one or by submitting all the fields in one request. Waldur will attempt to update the provided quotas. Please note, that if provided quotas are conflicting with the backend (e.g. requested number of instances is below of the already existing ones), some quotas might not be applied. .. _MiB: http://en.wikipedia.org/wiki/Mebibyte Response code of a successful request is **202 ACCEPTED**. In case tenant is in a non-stable status, the response would be **409 CONFLICT**. In this case REST client is advised to repeat the request after some time. On successful completion the task will synchronize quotas with the backend. summary: Set tenant quotas parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackTenantQuotaRequest' examples: Openstack-tenant-set-quotas: value: instances: 30 ram: 100000 storage: 1000000 vcpu: 30 security_group_count: 100 security_group_rule_count: 100 volumes: 10 snapshots: 20 summary: openstack-tenant-set-quotas required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackTenantQuota' description: '' /api/openstack-tenants/{uuid}/unlink/: post: operationId: openstack_tenants_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-tenants security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack-volume-availability-zones/: get: operationId: openstack_volume_availability_zones_list description: Get a list of volume availability zones. summary: List volume availability zones parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-volume-availability-zones security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackVolumeAvailabilityZone' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_volume_availability_zones_count description: Get number of items in the collection matching the request parameters. summary: List volume availability zones parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-volume-availability-zones security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-volume-availability-zones/{uuid}/: get: operationId: openstack_volume_availability_zones_retrieve description: Retrieve details of a specific volume availability zone. summary: Get volume availability zone details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volume-availability-zones security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackVolumeAvailabilityZone' description: '' /api/openstack-volume-types/: get: operationId: openstack_volume_types_list description: Get a list of available volume types. summary: List volume types parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-volume-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackVolumeType' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_volume_types_count description: Get number of items in the collection matching the request parameters. summary: List volume types parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve tags: - openstack-volume-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-volume-types/{uuid}/: get: operationId: openstack_volume_types_retrieve description: Retrieve details of a specific volume type. summary: Get volume type details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volume-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackVolumeType' description: '' /api/openstack-volume-types/names/: get: operationId: openstack_volume_types_names_retrieve description: Return a list of unique volume type names. summary: List unique volume type names tags: - openstack-volume-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: type: string description: '' head: operationId: openstack_volume_types_names_count description: Get number of items in the collection matching the request parameters. summary: List unique volume type names tags: - openstack-volume-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-volumes/: get: operationId: openstack_volumes_list description: Get a list of volumes. summary: List volumes parameters: - in: query name: attach_instance_uuid schema: type: string format: uuid description: Filter for attachment to instance UUID x-waldur-operation-id: openstack_instances_retrieve - in: query name: availability_zone_name schema: type: string description: Availability zone name - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackVolumeFieldEnum' - in: query name: instance schema: type: string format: uri description: Instance URL x-waldur-operation-id: openstack_instances_retrieve - in: query name: instance_uuid schema: type: string format: uuid description: Instance UUID x-waldur-operation-id: openstack_instances_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: snapshot schema: type: string format: uri description: Snapshot URL x-waldur-operation-id: openstack_snapshots_retrieve - in: query name: snapshot_uuid schema: type: string format: uuid description: Snapshot UUID x-waldur-operation-id: openstack_snapshots_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OpenStackVolume' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: openstack_volumes_count description: Get number of items in the collection matching the request parameters. summary: List volumes parameters: - in: query name: attach_instance_uuid schema: type: string format: uuid description: Filter for attachment to instance UUID x-waldur-operation-id: openstack_instances_retrieve - in: query name: availability_zone_name schema: type: string description: Availability zone name - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: instance schema: type: string format: uri description: Instance URL x-waldur-operation-id: openstack_instances_retrieve - in: query name: instance_uuid schema: type: string format: uuid description: Instance UUID x-waldur-operation-id: openstack_instances_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: snapshot schema: type: string format: uri description: Snapshot URL x-waldur-operation-id: openstack_snapshots_retrieve - in: query name: snapshot_uuid schema: type: string format: uuid description: Snapshot UUID x-waldur-operation-id: openstack_snapshots_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: tenant schema: type: string format: uri description: Tenant URL x-waldur-operation-id: openstack_tenants_retrieve - in: query name: tenant_uuid schema: type: string format: uuid description: Tenant UUID x-waldur-operation-id: openstack_tenants_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - openstack-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-volumes/{uuid}/: get: operationId: openstack_volumes_retrieve description: Retrieve details of a specific volume. summary: Get volume details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OpenStackVolumeFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackVolume' description: '' put: operationId: openstack_volumes_update description: Update an existing volume. summary: Update volume parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackVolumeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackVolume' description: '' patch: operationId: openstack_volumes_partial_update description: Update specific fields of a volume. summary: Partially update volume parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOpenStackVolumeRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OpenStackVolume' description: '' /api/openstack-volumes/{uuid}/attach/: post: operationId: openstack_volumes_attach description: Attach volume to instance summary: Attach volume to instance parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/VolumeAttachRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-volumes/{uuid}/detach/: post: operationId: openstack_volumes_detach description: Detach instance from volume summary: Detach volume from instance parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-volumes/{uuid}/extend/: post: operationId: openstack_volumes_extend description: Increase volume size summary: Extend volume size parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackVolumeExtendRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-volumes/{uuid}/pull/: post: operationId: openstack_volumes_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/openstack-volumes/{uuid}/retype/: post: operationId: openstack_volumes_retype description: Retype detached volume summary: Change volume type parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackVolumeRetypeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/openstack-volumes/{uuid}/set_erred/: post: operationId: openstack_volumes_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/openstack-volumes/{uuid}/set_ok/: post: operationId: openstack_volumes_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/openstack-volumes/{uuid}/snapshot/: post: operationId: openstack_volumes_snapshot description: Create snapshot from volume summary: Create volume snapshot parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackSnapshotRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OpenStackSnapshot' description: '' /api/openstack-volumes/{uuid}/unlink/: post: operationId: openstack_volumes_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - openstack-volumes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack/discovery/: get: operationId: openstack_discovery_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openstack security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body post: operationId: openstack_discovery_create tags: - openstack security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body /api/openstack/discovery/{id}/: get: operationId: openstack_discovery_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this Service provider. required: true tags: - openstack security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body put: operationId: openstack_discovery_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this Service provider. required: true tags: - openstack security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body patch: operationId: openstack_discovery_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this Service provider. required: true tags: - openstack security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body delete: operationId: openstack_discovery_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this Service provider. required: true tags: - openstack security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/openstack/discovery/discover_external_networks/: post: operationId: openstack_discovery_discover_external_networks description: Discover available external networks. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openstack requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverExternalNetworksRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ExternalNetworkResponse' description: '' description: '' /api/openstack/discovery/discover_flavors/: post: operationId: openstack_discovery_discover_flavors description: Discover available flavors. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openstack requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverFlavorsRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/FlavorResponse' description: '' description: '' /api/openstack/discovery/discover_instance_availability_zones/: post: operationId: openstack_discovery_discover_instance_availability_zones description: Discover available Nova instance availability zones. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openstack requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverInstanceAvailabilityZonesRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AvailabilityZoneResponse' description: '' description: '' /api/openstack/discovery/discover_volume_availability_zones/: post: operationId: openstack_discovery_discover_volume_availability_zones description: Discover available Cinder volume availability zones. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openstack requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverVolumeAvailabilityZonesRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AvailabilityZoneResponse' description: '' description: '' /api/openstack/discovery/discover_volume_types/: post: operationId: openstack_discovery_discover_volume_types description: Discover available volume types. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - openstack requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverVolumeTypesRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VolumeTypeResponse' description: '' description: '' /api/openstack/discovery/preview_service_attributes/: post: operationId: openstack_discovery_preview_service_attributes description: Build service_attributes and plugin_options from selected values. tags: - openstack requestBody: content: application/json: schema: $ref: '#/components/schemas/PreviewServiceAttributesRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ServiceAttributesPreview' description: '' /api/openstack/discovery/validate_credentials/: post: operationId: openstack_discovery_validate_credentials description: Validate OpenStack credentials without saving them. tags: - openstack requestBody: content: application/json: schema: $ref: '#/components/schemas/OpenStackCredentialsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CredentialsValidationResponse' description: '' /api/organization-groups/: get: operationId: organization_groups_list parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent schema: type: string format: uuid description: Parent UUID x-waldur-operation-id: organization_groups_retrieve tags: - organization-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OrganizationGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: organization_groups_create tags: - organization-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationGroupRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/OrganizationGroup' description: '' head: operationId: organization_groups_count parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: parent schema: type: string format: uuid description: Parent UUID x-waldur-operation-id: organization_groups_retrieve tags: - organization-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/organization-groups/{uuid}/: get: operationId: organization_groups_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - organization-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationGroup' description: '' put: operationId: organization_groups_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - organization-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganizationGroupRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationGroup' description: '' patch: operationId: organization_groups_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - organization-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedOrganizationGroupRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrganizationGroup' description: '' delete: operationId: organization_groups_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - organization-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/override-settings/: get: operationId: override_settings_retrieve description: Returns all settings that can be overridden in the database via the Constance backend. Requires admin permissions. summary: Get all overridable settings tags: - override-settings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConstanceSettings' description: '' post: operationId: override_settings description: Updates one or more settings in the database via the Constance backend. Requires admin permissions. summary: Update overridable settings tags: - override-settings requestBody: content: application/json: schema: $ref: '#/components/schemas/ConstanceSettingsRequest' examples: EnableMarketplaceAndSetACustomTitle: value: WALDUR_MARKETPLACE_ENABLED: true SITE_NAME: My Custom Cloud Portal summary: An example of updating multiple settings at once. application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ConstanceSettingsRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ConstanceSettingsRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/payment-profiles/: get: operationId: payment_profiles_list parameters: - in: query name: is_active schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/PaymentProfileOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: organization_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: payment_type schema: type: array items: $ref: '#/components/schemas/PaymentTypeEnum' explode: true style: form tags: - payment-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PaymentProfile' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: payment_profiles_create tags: - payment-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentProfileRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/PaymentProfile' description: '' head: operationId: payment_profiles_count parameters: - in: query name: is_active schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/PaymentProfileOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: organization_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: payment_type schema: type: array items: $ref: '#/components/schemas/PaymentTypeEnum' explode: true style: form tags: - payment-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/payment-profiles/{uuid}/: get: operationId: payment_profiles_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payment-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaymentProfile' description: '' put: operationId: payment_profiles_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payment-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentProfileRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaymentProfile' description: '' patch: operationId: payment_profiles_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payment-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedPaymentProfileRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PaymentProfile' description: '' delete: operationId: payment_profiles_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payment-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/payment-profiles/{uuid}/enable/: post: operationId: payment_profiles_enable parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payment-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/payments/: get: operationId: payments_list parameters: - in: query name: date_of_payment schema: type: string format: date - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: profile schema: type: string format: uri x-waldur-operation-id: payment_profiles_retrieve - in: query name: profile_uuid schema: type: string format: uuid x-waldur-operation-id: payment_profiles_retrieve tags: - payments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Payment' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: payments_create tags: - payments requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PaymentRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PaymentRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Payment' description: '' head: operationId: payments_count parameters: - in: query name: date_of_payment schema: type: string format: date - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: profile schema: type: string format: uri x-waldur-operation-id: payment_profiles_retrieve - in: query name: profile_uuid schema: type: string format: uuid x-waldur-operation-id: payment_profiles_retrieve tags: - payments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/payments/{uuid}/: get: operationId: payments_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Payment' description: '' put: operationId: payments_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payments requestBody: content: application/json: schema: $ref: '#/components/schemas/PaymentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PaymentRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PaymentRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Payment' description: '' patch: operationId: payments_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payments requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedPaymentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedPaymentRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedPaymentRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Payment' description: '' delete: operationId: payments_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/payments/{uuid}/link_to_invoice/: post: operationId: payments_link_to_invoice description: Link a payment to an invoice. Payment can be linked to an invoice only if they belong to the same customer. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payments requestBody: content: application/json: schema: $ref: '#/components/schemas/LinkToInvoiceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/LinkToInvoice' description: '' /api/payments/{uuid}/unlink_from_invoice/: post: operationId: payments_unlink_from_invoice description: Unlink a payment from an invoice. Remove connection between payment and existing linked invoice. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - payments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/project-credits/: get: operationId: project_credits_list parameters: - in: query name: customer_name schema: type: string - in: query name: customer_slug schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProjectCreditOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_name schema: type: string - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string tags: - project-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectCredit' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: project_credits_create tags: - project-credits requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectCreditRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProjectCredit' description: '' head: operationId: project_credits_count parameters: - in: query name: customer_name schema: type: string - in: query name: customer_slug schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProjectCreditOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_name schema: type: string - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string tags: - project-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/project-credits/{uuid}/: get: operationId: project_credits_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - project-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectCredit' description: '' put: operationId: project_credits_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - project-credits requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectCreditRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectCredit' description: '' patch: operationId: project_credits_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - project-credits requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectCreditRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectCredit' description: '' delete: operationId: project_credits_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - project-credits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/project-permissions-reviews/: get: operationId: project_permissions_reviews_list parameters: - in: query name: closed schema: type: string format: date-time - in: query name: is_pending schema: type: boolean description: Is pending - in: query name: o schema: type: array items: $ref: '#/components/schemas/CustomerPermissionReviewOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid description: Reviewer UUID x-waldur-operation-id: users_retrieve tags: - project-permissions-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectPermissionReview' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: project_permissions_reviews_count parameters: - in: query name: closed schema: type: string format: date-time - in: query name: is_pending schema: type: boolean description: Is pending - in: query name: o schema: type: array items: $ref: '#/components/schemas/CustomerPermissionReviewOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid description: Reviewer UUID x-waldur-operation-id: users_retrieve tags: - project-permissions-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/project-permissions-reviews/{uuid}/: get: operationId: project_permissions_reviews_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - project-permissions-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectPermissionReview' description: '' /api/project-permissions-reviews/{uuid}/close/: post: operationId: project_permissions_reviews_close description: Complete project permission review. summary: Close project permission review parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - project-permissions-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/project-quotas/: get: operationId: project_quotas_list description: List project quotas. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - project-quotas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectQuotas' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: project_quotas_count description: Get number of items in the collection matching the request parameters. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - project-quotas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/project-types/: get: operationId: project_types_list description: Retrieve a list of available project types. summary: List project types parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - project-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProjectType' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: project_types_count description: Get number of items in the collection matching the request parameters. summary: List project types parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - project-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/project-types/{uuid}/: get: operationId: project_types_retrieve description: Fetch details of a specific project type by its UUID. summary: Retrieve project type details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - project-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProjectType' description: '' /api/projects/: get: operationId: projects_list description: Retrieve a list of projects. The list is filtered based on the user's permissions. By default, only active projects are shown. summary: List projects parameters: - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: backend_id schema: type: string - in: query name: can_admin schema: type: boolean description: Return a list of projects where current user is admin. - in: query name: can_manage schema: type: boolean description: Return a list of projects where current user is manager or a customer owner. - in: query name: conceal_finished_projects schema: type: boolean description: Conceal finished projects - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: description schema: type: string description: Description - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProjectFieldEnum' - in: query name: include_terminated schema: type: boolean description: Include soft-deleted (terminated) projects. Only available to staff and support users, or users with organizational roles who can see their terminated projects. - in: query name: is_removed schema: type: boolean description: Is removed - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerProjectOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, slug, UUID, backend ID or resource effective ID - in: query name: slug schema: type: string description: Slug - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Project' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: projects_create description: A new project can be created by users with staff privilege (is_staff=True) or customer owners. Project resource quota is optional. summary: Create a new project tags: - projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectRequest' examples: CreateProject: value: name: Project A customer: http://example.com/api/customers/6c9b01c251c24174a6691a1f894fae31/ summary: Create project application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ProjectRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' head: operationId: projects_count description: Get number of items in the collection matching the request parameters. summary: List projects parameters: - in: query name: accounting_is_running schema: type: boolean description: Filter by whether accounting is running. - in: query name: backend_id schema: type: string - in: query name: can_admin schema: type: boolean description: Return a list of projects where current user is admin. - in: query name: can_manage schema: type: boolean description: Return a list of projects where current user is manager or a customer owner. - in: query name: conceal_finished_projects schema: type: boolean description: Conceal finished projects - in: query name: created schema: type: string format: date-time description: Created after - in: query name: customer schema: type: array items: type: string format: uuid description: Multiple values may be separated by commas. explode: false style: form x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: description schema: type: string description: Description - in: query name: include_terminated schema: type: boolean description: Include soft-deleted (terminated) projects. Only available to staff and support users, or users with organizational roles who can see their terminated projects. - in: query name: is_removed schema: type: boolean description: Is removed - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceProviderCustomerProjectOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Filter by name, slug, UUID, backend ID or resource effective ID - in: query name: slug schema: type: string description: Slug - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID. x-waldur-operation-id: users_retrieve tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/projects/{project_uuid}/other_users/: get: operationId: projects_other_users_list description: A list of users which can be added to the current project from other projects of the same customer. parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: $ref: '#/components/schemas/CustomerUserOEnum' description: Ordering. Sort by a combination of first name, last name, and username. - in: query name: organization schema: type: string description: Organization - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: path name: project_uuid schema: type: string format: uuid description: UUID of the project required: true - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/BasicUser' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/projects/{uuid}/: get: operationId: projects_retrieve description: Fetch the details of a specific project by its UUID. Users can access details of terminated projects they previously had access to. summary: Retrieve project details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProjectFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' put: operationId: projects_update description: Update the details of a project. Requires project administrator or customer owner permissions. summary: Update project details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProjectRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ProjectRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' x-permissions: - permission: PROJECT.UPDATE scopes: - '*' - customer patch: operationId: projects_partial_update description: Partially update the details of a project. Requires project administrator or customer owner permissions. summary: Partially update project details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProjectRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedProjectRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedProjectRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' x-permissions: - permission: PROJECT.UPDATE scopes: - '*' - customer delete: operationId: projects_destroy description: Delete a project. If the project has any active resources, the deletion request will fail with a 409 Conflict response. This action performs a soft-delete, and the project can be recovered later. summary: Delete a project parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: PROJECT.DELETE scopes: - customer /api/projects/{uuid}/add_user/: post: operationId: projects_add_user description: Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set. summary: Grant a role to a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' examples: GrantProjectAdminRoleUntilEndOfYear: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2024-12-31' summary: Grant project admin role until end of year required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleGrantResponse: value: expiration_time: '2024-12-31T00:00:00Z' summary: Successful role grant response description: '' '400': description: Validation error, for example when trying to add a user to a terminated project. /api/projects/{uuid}/checklist/: get: operationId: projects_checklist_retrieve description: Get checklist with questions and existing answers. parameters: - in: query name: include_all schema: type: boolean description: 'If true, returns all questions including hidden ones (for dynamic form visibility). Default: false.' - in: path name: uuid schema: type: string format: uuid required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistResponse' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/projects/{uuid}/completion_status/: get: operationId: projects_completion_status_retrieve description: Get checklist completion status. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistCompletion' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/projects/{uuid}/delete_user/: post: operationId: projects_delete_user description: Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role. summary: Revoke a role from a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleDeleteRequest' examples: RevokeProjectAdminRoleFromUser: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN summary: Revoke project admin role from user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role revoked successfully. /api/projects/{uuid}/list_users/: get: operationId: projects_list_users_list description: 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. summary: List users and their roles in a scope parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsFieldEnum' description: Fields to include in response - in: query name: full_name schema: type: string description: User full name - in: query name: native_name schema: type: string description: User native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsOEnum' description: Ordering fields - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string format: uuid description: Role UUID or name x-waldur-operation-id: roles_retrieve - in: query name: search_string schema: type: string description: Search string for user - in: query name: user schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug - in: query name: user_url schema: type: string description: User URL - in: query name: username schema: type: string description: User username - in: path name: uuid schema: type: string format: uuid required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRoleDetails' description: '' examples: ExampleUserRoleListResponse: value: - - uuid: a7e6b0a29a434d2889273c5240217a26 created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' role_name: PROJECT.ADMIN role_uuid: d8c2d5852d434937985392d24249b6d3 user_email: alice@example.com user_full_name: Alice Smith user_username: alice user_uuid: 8f20242b638743b18a485f81ac685e13 user_image: null created_by_full_name: Bob Johnson created_by_uuid: b4e4c2f1a6f24a8d8e4c2f1a6f24a8d8 summary: Example user role list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/projects/{uuid}/move_project/: post: operationId: projects_move_project description: Moves a project and its associated resources to a different customer. You can choose whether to preserve existing project permissions for users. Terminated projects can also be moved. summary: Move project to another customer parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects requestBody: content: application/json: schema: $ref: '#/components/schemas/MoveProjectRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' /api/projects/{uuid}/recover/: post: operationId: projects_recover description: Recovers a soft-deleted (terminated) project, making it active again. Provides options to restore previous team members automatically (staff-only) or send them new invitations. summary: Recover a soft-deleted project parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects requestBody: content: application/json: schema: $ref: '#/components/schemas/ProjectRecoveryRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Project' description: '' x-permissions: - permission: PROJECT.CREATE scopes: - customer /api/projects/{uuid}/stats/: get: operationId: projects_stats_retrieve description: Provides statistics about the resource usage (e.g., CPU, RAM, storage) for all resources within a project. Can be filtered to show usage for the current month only. summary: Get project resource usage statistics parameters: - in: query name: for_current_month schema: type: boolean description: If true, returns usage data for the current month only. Otherwise, returns total usage. - in: path name: uuid schema: type: string format: uuid required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComponentsUsageStats' description: '' /api/projects/{uuid}/submit_answers/: post: operationId: projects_submit_answers description: Submit checklist answers. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/AnswerSubmitRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AnswerSubmitResponse' description: '' '400': content: application/json: schema: description: Validation error or no checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/projects/{uuid}/sync_user_roles/: post: operationId: projects_sync_user_roles description: Trigger user role sync for this project. Sends a notification to RabbitMQ that this project needs user role synchronization. parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/projects/{uuid}/update_user/: post: operationId: projects_update_user description: 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. summary: Update a user's role expiration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - projects requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleUpdateRequest' examples: ExtendRoleUntilMid-2025: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2025-06-30' summary: Extend role until mid-2025 MakeARolePermanent: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: null summary: Make a role permanent required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleUpdateResponse: value: expiration_time: '2025-06-30T00:00:00Z' summary: Successful role update response description: '' /api/projects/checklist-template/: get: operationId: projects_checklist_template_retrieve description: Get checklist template for creating new objects. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistTemplate' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Parent object not found description: '' head: operationId: projects_checklist_template_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/promotions-campaigns/: get: operationId: promotions_campaigns_list parameters: - in: query name: discount_type schema: type: string - in: query name: end_date schema: type: string format: date - in: query name: o schema: type: array items: $ref: '#/components/schemas/CampaignOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Search by name or coupon code - in: query name: service_provider_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: start_date schema: type: string format: date - in: query name: state schema: type: array items: $ref: '#/components/schemas/CampaignStateEnum' explode: true style: form tags: - promotions-campaigns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Campaign' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: promotions_campaigns_create tags: - promotions-campaigns requestBody: content: application/json: schema: $ref: '#/components/schemas/CampaignRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Campaign' description: '' head: operationId: promotions_campaigns_count parameters: - in: query name: discount_type schema: type: string - in: query name: end_date schema: type: string format: date - in: query name: o schema: type: array items: $ref: '#/components/schemas/CampaignOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: query schema: type: string description: Search by name or coupon code - in: query name: service_provider_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: start_date schema: type: string format: date - in: query name: state schema: type: array items: $ref: '#/components/schemas/CampaignStateEnum' explode: true style: form tags: - promotions-campaigns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/promotions-campaigns/{uuid}/: get: operationId: promotions_campaigns_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - promotions-campaigns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Campaign' description: '' put: operationId: promotions_campaigns_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - promotions-campaigns requestBody: content: application/json: schema: $ref: '#/components/schemas/CampaignRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Campaign' description: '' x-permissions: - permission: OFFERING.MANAGE_CAMPAIGN scopes: - service_provider.customer delete: operationId: promotions_campaigns_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - promotions-campaigns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: OFFERING.MANAGE_CAMPAIGN scopes: - service_provider.customer /api/promotions-campaigns/{uuid}/activate/: post: operationId: promotions_campaigns_activate description: Activate campaign. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - promotions-campaigns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body '409': description: No response body x-permissions: - permission: OFFERING.MANAGE_CAMPAIGN scopes: - service_provider.customer /api/promotions-campaigns/{uuid}/orders/: get: operationId: promotions_campaigns_orders_list description: Return a list of orders for which the campaign is applied. parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/OrderDetailsFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - promotions-campaigns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/OrderDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/promotions-campaigns/{uuid}/resources/: get: operationId: promotions_campaigns_resources_list description: Return a list of resources for which the campaign is applied. parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ResourceFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - promotions-campaigns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Resource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/promotions-campaigns/{uuid}/terminate/: post: operationId: promotions_campaigns_terminate description: Terminate campaign. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - promotions-campaigns security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body '409': description: No response body x-permissions: - permission: OFFERING.MANAGE_CAMPAIGN scopes: - service_provider.customer /api/proposal-proposals/: get: operationId: proposal_proposals_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: created_by_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: my_proposals schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProposalOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: round schema: type: string format: uuid x-waldur-operation-id: call_rounds_retrieve - in: query name: round_uuid schema: type: string format: uuid x-waldur-operation-id: call_rounds_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ProposalStates' explode: true style: form tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Proposal' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: proposal_proposals_create tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Proposal' description: '' head: operationId: proposal_proposals_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: created_by_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: my_proposals schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProposalOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: round schema: type: string format: uuid x-waldur-operation-id: call_rounds_retrieve - in: query name: round_uuid schema: type: string format: uuid x-waldur-operation-id: call_rounds_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ProposalStates' explode: true style: form tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/proposal-proposals/{uuid}/: get: operationId: proposal_proposals_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Proposal' description: '' delete: operationId: proposal_proposals_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/proposal-proposals/{uuid}/add_user/: post: operationId: proposal_proposals_add_user description: Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set. summary: Grant a role to a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' examples: GrantProjectAdminRoleUntilEndOfYear: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2024-12-31' summary: Grant project admin role until end of year required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleGrantResponse: value: expiration_time: '2024-12-31T00:00:00Z' summary: Successful role grant response description: '' '400': description: Validation error, for example when trying to add a user to a terminated project. /api/proposal-proposals/{uuid}/approve/: post: operationId: proposal_proposals_approve description: Approve a proposal. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalApproveRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: CALL.APPROVE_AND_REJECT_PROPOSALS scopes: - round.call - round.call.manager /api/proposal-proposals/{uuid}/attach_document/: post: operationId: proposal_proposals_attach_document description: Attach document to proposal. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalDocumentationRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/ProposalDocumentationRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/ProposalDocumentationRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-proposals/{uuid}/checklist/: get: operationId: proposal_proposals_checklist_retrieve description: Get checklist with questions and existing answers. parameters: - in: query name: include_all schema: type: boolean description: 'If true, returns all questions including hidden ones (for dynamic form visibility). Default: false.' - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistResponse' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/proposal-proposals/{uuid}/checklist_review/: get: operationId: proposal_proposals_checklist_review_retrieve description: Get checklist with questions and existing answers including review logic (reviewers only). parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistReviewerResponse' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/proposal-proposals/{uuid}/completion_review_status/: get: operationId: proposal_proposals_completion_review_status_retrieve description: Get checklist completion status with review triggers (reviewers only). parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistCompletionReviewer' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' /api/proposal-proposals/{uuid}/completion_status/: get: operationId: proposal_proposals_completion_status_retrieve description: Get checklist completion status. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistCompletion' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' x-permissions: - permission: PROPOSAL.MANAGE scopes: null /api/proposal-proposals/{uuid}/delete_user/: post: operationId: proposal_proposals_delete_user description: Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role. summary: Revoke a role from a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleDeleteRequest' examples: RevokeProjectAdminRoleFromUser: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN summary: Revoke project admin role from user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role revoked successfully. /api/proposal-proposals/{uuid}/detach_documents/: post: operationId: proposal_proposals_detach_documents description: Detach documents from proposal. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalDetachDocumentsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-proposals/{uuid}/list_users/: get: operationId: proposal_proposals_list_users_list description: 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. summary: List users and their roles in a scope parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsFieldEnum' description: Fields to include in response - in: query name: full_name schema: type: string description: User full name - in: query name: native_name schema: type: string description: User native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsOEnum' description: Ordering fields - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string format: uuid description: Role UUID or name x-waldur-operation-id: roles_retrieve - in: query name: search_string schema: type: string description: Search string for user - in: query name: user schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug - in: query name: user_url schema: type: string description: User URL - in: query name: username schema: type: string description: User username - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRoleDetails' description: '' examples: ExampleUserRoleListResponse: value: - - uuid: a7e6b0a29a434d2889273c5240217a26 created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' role_name: PROJECT.ADMIN role_uuid: d8c2d5852d434937985392d24249b6d3 user_email: alice@example.com user_full_name: Alice Smith user_username: alice user_uuid: 8f20242b638743b18a485f81ac685e13 user_image: null created_by_full_name: Bob Johnson created_by_uuid: b4e4c2f1a6f24a8d8e4c2f1a6f24a8d8 summary: Example user role list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/proposal-proposals/{uuid}/reject/: post: operationId: proposal_proposals_reject description: Reject a proposal. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalApproveRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: CALL.APPROVE_AND_REJECT_PROPOSALS scopes: - round.call - round.call.manager /api/proposal-proposals/{uuid}/resources/: get: operationId: proposal_proposals_resources_list description: List resources for a proposal. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RequestedResource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: proposal_proposals_resources_set description: Create resource for a proposal. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestedResourceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestedResource' description: '' /api/proposal-proposals/{uuid}/resources/{obj_uuid}/: get: operationId: proposal_proposals_resources_retrieve parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestedResource' description: '' put: operationId: proposal_proposals_resources_update parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestedResourceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestedResource' description: '' patch: operationId: proposal_proposals_resources_partial_update parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRequestedResourceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestedResource' description: '' delete: operationId: proposal_proposals_resources_destroy parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/proposal-proposals/{uuid}/submit/: post: operationId: proposal_proposals_submit description: Submit a proposal. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-proposals/{uuid}/submit_answers/: post: operationId: proposal_proposals_submit_answers description: Submit checklist answers. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/AnswerSubmitRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProposalChecklistAnswerSubmitResponse' description: '' '400': content: application/json: schema: description: Validation error or no checklist configured description: '' '404': content: application/json: schema: description: Object not found description: '' x-permissions: - permission: PROPOSAL.MANAGE scopes: null /api/proposal-proposals/{uuid}/update_project_details/: post: operationId: proposal_proposals_update_project_details description: Update project details of a proposal. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalUpdateProjectDetailsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-proposals/{uuid}/update_user/: post: operationId: proposal_proposals_update_user description: 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. summary: Update a user's role expiration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-proposals requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleUpdateRequest' examples: ExtendRoleUntilMid-2025: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2025-06-30' summary: Extend role until mid-2025 MakeARolePermanent: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: null summary: Make a role permanent required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleUpdateResponse: value: expiration_time: '2025-06-30T00:00:00Z' summary: Successful role update response description: '' /api/proposal-proposals/checklist-template/: get: operationId: proposal_proposals_checklist_template_retrieve description: Get checklist template for creating new objects. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ChecklistTemplate' description: '' '400': content: application/json: schema: description: No checklist configured description: '' '404': content: application/json: schema: description: Parent object not found description: '' head: operationId: proposal_proposals_checklist_template_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: parent_uuid schema: type: string format: uuid description: UUID of the parent object (e.g., customer UUID for new projects) required: true tags: - proposal-proposals security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-protected-calls/: get: operationId: proposal_protected_calls_list parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProtectedCallFieldEnum' - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProtectedCall' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: proposal_protected_calls_create tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/ProtectedCallRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProtectedCall' description: '' head: operationId: proposal_protected_calls_count parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/proposal-protected-calls/{uuid}/: get: operationId: proposal_protected_calls_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ProtectedCallFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProtectedCall' description: '' put: operationId: proposal_protected_calls_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/ProtectedCallRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProtectedCall' description: '' patch: operationId: proposal_protected_calls_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProtectedCallRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProtectedCall' description: '' delete: operationId: proposal_protected_calls_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/proposal-protected-calls/{uuid}/activate/: post: operationId: proposal_protected_calls_activate description: Activate a call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MessageResponse' description: '' /api/proposal-protected-calls/{uuid}/add_user/: post: operationId: proposal_protected_calls_add_user description: Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set. summary: Grant a role to a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleCreateRequest' examples: GrantProjectAdminRoleUntilEndOfYear: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2024-12-31' summary: Grant project admin role until end of year required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleGrantResponse: value: expiration_time: '2024-12-31T00:00:00Z' summary: Successful role grant response description: '' '400': description: Validation error, for example when trying to add a user to a terminated project. /api/proposal-protected-calls/{uuid}/affinity-matrix/: get: operationId: proposal_protected_calls_affinity_matrix_retrieve description: Get affinity matrix for reviewer-proposal matching. parameters: - in: query name: scope schema: $ref: '#/components/schemas/AffinityMatrixResponseScopeEnum' description: 'Filter by reviewer source: ''pool'' (accepted reviewers), ''suggestions'' (suggested reviewers), or ''all'' (both). Default: ''pool''' - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/AffinityMatrixResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/applicant_attribute_config/: get: operationId: proposal_protected_calls_applicant_attribute_config_retrieve description: Get applicant attribute exposure configuration for this call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallApplicantAttributeConfig' description: '' x-permissions: - permission: CALL.UPDATE scopes: null /api/proposal-protected-calls/{uuid}/archive/: post: operationId: proposal_protected_calls_archive description: Archive a call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MessageResponse' description: '' /api/proposal-protected-calls/{uuid}/attach_documents/: post: operationId: proposal_protected_calls_attach_documents description: Attach documents to call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/CallAttachDocumentsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-protected-calls/{uuid}/coi-configuration/: get: operationId: proposal_protected_calls_coi_configuration_retrieve description: Get COI configuration for this call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallCOIConfiguration' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager patch: operationId: proposal_protected_calls_coi_configuration_partial_update description: Get COI configuration for this call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCallCOIConfigurationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallCOIConfiguration' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/compliance_overview/: get: operationId: proposal_protected_calls_compliance_overview_retrieve description: Get compliance overview for call manager showing all proposals and their compliance status. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallComplianceOverview' description: '' x-permissions: - permission: CALL.UPDATE scopes: null /api/proposal-protected-calls/{uuid}/compute-affinities/: post: operationId: proposal_protected_calls_compute_affinities description: Compute affinity scores for all reviewer-proposal pairs. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/ProtectedCallRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ComputeAffinitiesResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/conflict-summary/: get: operationId: proposal_protected_calls_conflict_summary_retrieve description: Get summary statistics of conflicts for this call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConflictSummaryResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/conflicts/: get: operationId: proposal_protected_calls_conflicts_list description: List all conflicts of interest detected for this call. parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ConflictOfInterest' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/create-manual-assignment/: post: operationId: proposal_protected_calls_create_manual_assignment description: Create a manual assignment batch for a specific reviewer. This allows call managers to manually assign proposals to reviewers. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateManualAssignmentRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CreateManualAssignmentResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/delete_applicant_attribute_config/: delete: operationId: proposal_protected_calls_delete_applicant_attribute_config_destroy description: Delete custom applicant attribute config, reverting to system defaults. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: CALL.UPDATE scopes: null /api/proposal-protected-calls/{uuid}/delete_user/: post: operationId: proposal_protected_calls_delete_user description: Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role. summary: Revoke a role from a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleDeleteRequest' examples: RevokeProjectAdminRoleFromUser: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN summary: Revoke project admin role from user required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role revoked successfully. /api/proposal-protected-calls/{uuid}/detach_documents/: post: operationId: proposal_protected_calls_detach_documents description: Detach documents from call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/CallDetachDocumentsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-protected-calls/{uuid}/detect-conflicts/: post: operationId: proposal_protected_calls_detect_conflicts description: Trigger automated COI detection for all reviewer-proposal pairs. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/TriggerCOIDetectionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/COIDetectionJob' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/generate-assignments/: post: operationId: proposal_protected_calls_generate_assignments description: Generate assignment batches for reviewers. Uses the affinity matrix and COI records to assign reviewers to proposals. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/GenerateAssignmentsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/GenerateAssignmentsResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/generate-suggestions/: post: operationId: proposal_protected_calls_generate_suggestions description: Generate reviewer suggestions with configurable matching source. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/GenerateSuggestionsRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/GenerateSuggestionsResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/invite-by-email/: post: operationId: proposal_protected_calls_invite_by_email description: Invite a reviewer by email address. Creates an invitation that requires the reviewer to create and publish a profile before accepting. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/EmailInvitationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallReviewerPool' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/list_users/: get: operationId: proposal_protected_calls_list_users_list description: 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. summary: List users and their roles in a scope parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsFieldEnum' description: Fields to include in response - in: query name: full_name schema: type: string description: User full name - in: query name: native_name schema: type: string description: User native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/UserRoleDetailsOEnum' description: Ordering fields - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role schema: type: string format: uuid description: Role UUID or name x-waldur-operation-id: roles_retrieve - in: query name: search_string schema: type: string description: Search string for user - in: query name: user schema: type: string format: uuid description: User UUID x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug - in: query name: user_url schema: type: string description: User URL - in: query name: username schema: type: string description: User username - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRoleDetails' description: '' examples: ExampleUserRoleListResponse: value: - - uuid: a7e6b0a29a434d2889273c5240217a26 created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' role_name: PROJECT.ADMIN role_uuid: d8c2d5852d434937985392d24249b6d3 user_email: alice@example.com user_full_name: Alice Smith user_username: alice user_uuid: 8f20242b638743b18a485f81ac685e13 user_image: null created_by_full_name: Bob Johnson created_by_uuid: b4e4c2f1a6f24a8d8e4c2f1a6f24a8d8 summary: Example user role list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/proposal-protected-calls/{uuid}/matching-configuration/: get: operationId: proposal_protected_calls_matching_configuration_retrieve description: Get or update matching configuration for this call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MatchingConfiguration' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager patch: operationId: proposal_protected_calls_matching_configuration_partial_update description: Get or update matching configuration for this call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedMatchingConfigurationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/MatchingConfiguration' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/offerings/: get: operationId: proposal_protected_calls_offerings_list description: List offerings for a call. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: string description: Filter by state - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RequestedOffering' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: proposal_protected_calls_offerings_set description: Create offering for a call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestedOfferingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestedOffering' description: '' /api/proposal-protected-calls/{uuid}/offerings/{obj_uuid}/: get: operationId: proposal_protected_calls_offerings_retrieve parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestedOffering' description: '' put: operationId: proposal_protected_calls_offerings_update parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestedOfferingRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestedOffering' description: '' patch: operationId: proposal_protected_calls_offerings_partial_update parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRequestedOfferingRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestedOffering' description: '' delete: operationId: proposal_protected_calls_offerings_destroy parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/proposal-protected-calls/{uuid}/proposals/{proposal_uuid}/compliance-answers/: get: operationId: proposal_protected_calls_proposals_compliance_answers_list description: Get detailed compliance answers for a specific proposal (call managers only). parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: proposal_uuid schema: type: string description: UUID of the proposal required: true - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Answer' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: CALL.UPDATE scopes: null /api/proposal-protected-calls/{uuid}/proposed-assignments/: get: operationId: proposal_protected_calls_proposed_assignments_list description: Get proposed reviewer-proposal assignments. parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProposedAssignment' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/resource_templates/: get: operationId: proposal_protected_calls_resource_templates_list description: List resource templates for a call. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CallResourceTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: proposal_protected_calls_resource_templates_set description: Create resource template for a call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/CallResourceTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallResourceTemplate' description: '' /api/proposal-protected-calls/{uuid}/resource_templates/{obj_uuid}/: get: operationId: proposal_protected_calls_resource_templates_retrieve parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallResourceTemplate' description: '' put: operationId: proposal_protected_calls_resource_templates_update parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/CallResourceTemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallResourceTemplate' description: '' patch: operationId: proposal_protected_calls_resource_templates_partial_update parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCallResourceTemplateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallResourceTemplate' description: '' delete: operationId: proposal_protected_calls_resource_templates_destroy parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/proposal-protected-calls/{uuid}/review_proposal_compliance/: post: operationId: proposal_protected_calls_review_proposal_compliance description: Mark proposal compliance as reviewed by call manager. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/CallComplianceReviewRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object additionalProperties: type: string description: '' x-permissions: - permission: CALL.UPDATE scopes: null /api/proposal-protected-calls/{uuid}/reviewer-pool/: get: operationId: proposal_protected_calls_reviewer_pool_list description: List reviewer pool members for a call. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CallReviewerPool' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager post: operationId: proposal_protected_calls_invite_reviewers description: Invite reviewers to join the call's reviewer pool. parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerInvitationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/CallReviewerPool' description: '' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/rounds/: get: operationId: proposal_protected_calls_rounds_list description: List rounds for a call. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProtectedRound' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: proposal_protected_calls_rounds_set description: Create a round for a call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/ProtectedRoundRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProtectedRound' description: '' /api/proposal-protected-calls/{uuid}/rounds/{obj_uuid}/: get: operationId: proposal_protected_calls_rounds_retrieve parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProtectedRound' description: '' put: operationId: proposal_protected_calls_rounds_update parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/ProtectedRoundRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProtectedRound' description: '' patch: operationId: proposal_protected_calls_rounds_partial_update parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProtectedRoundRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProtectedRound' description: '' delete: operationId: proposal_protected_calls_rounds_destroy parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/proposal-protected-calls/{uuid}/rounds/{obj_uuid}/close/: post: operationId: proposal_protected_calls_rounds_close parameters: - in: path name: obj_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/ProtectedCallRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProtectedCall' description: '' /api/proposal-protected-calls/{uuid}/send-all-assignments/: post: operationId: proposal_protected_calls_send_all_assignments description: Send all draft assignment batches for this call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/SendAllAssignmentBatchesRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SendAllAssignmentBatchesResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/send-invitations/: post: operationId: proposal_protected_calls_send_invitations description: Send invitations to all confirmed suggestions. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SendInvitationsResponse' description: '' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/suggestions/: get: operationId: proposal_protected_calls_suggestions_list description: List all reviewer suggestions for this call with affinity scores. parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ReviewerSuggestion' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - manager /api/proposal-protected-calls/{uuid}/update_applicant_attribute_config/: post: operationId: proposal_protected_calls_update_applicant_attribute_config description: Create or update applicant attribute exposure configuration. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/CallApplicantAttributeConfigRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallApplicantAttributeConfig' description: '' x-permissions: - permission: CALL.UPDATE scopes: null patch: operationId: proposal_protected_calls_update_applicant_attribute_config_partial_update description: Create or update applicant attribute exposure configuration. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCallApplicantAttributeConfigRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CallApplicantAttributeConfig' description: '' x-permissions: - permission: CALL.UPDATE scopes: null /api/proposal-protected-calls/{uuid}/update_user/: post: operationId: proposal_protected_calls_update_user description: 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. summary: Update a user's role expiration parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-protected-calls requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRoleUpdateRequest' examples: ExtendRoleUntilMid-2025: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: '2025-06-30' summary: Extend role until mid-2025 MakeARolePermanent: value: user: 8f20242b638743b18a485f81ac685e13 role: PROJECT.ADMIN expiration_time: null summary: Make a role permanent required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserRoleExpirationTime' examples: SuccessfulRoleUpdateResponse: value: expiration_time: '2025-06-30T00:00:00Z' summary: Successful role update response description: '' /api/proposal-protected-calls/available_compliance_checklists/: get: operationId: proposal_protected_calls_available_compliance_checklists_list description: Get available compliance checklists for call creation/editing. parameters: - in: query name: checklist_type schema: type: string description: 'Filter by checklist type (default: proposal_compliance)' - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string description: Customer UUID to check permissions for. Required to verify user has CREATE_CALL permission on that customer's call managing organization. required: true x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AvailableChecklist' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: proposal_protected_calls_available_compliance_checklists_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: checklist_type schema: type: string description: 'Filter by checklist type (default: proposal_compliance)' - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string description: Customer UUID to check permissions for. Required to verify user has CREATE_CALL permission on that customer's call managing organization. required: true x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form tags: - proposal-protected-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-public-calls/: get: operationId: proposal_public_calls_list parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: field schema: type: array items: $ref: '#/components/schemas/PublicCallFieldEnum' - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form tags: - proposal-public-calls security: - tokenAuth: [] - waldurOIDCAuth: [] - {} responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PublicCall' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: proposal_public_calls_count parameters: - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_keyword schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: has_active_round schema: type: boolean - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProtectedCallOEnum' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offerings_provider_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: state schema: type: array items: $ref: '#/components/schemas/CallStates' explode: true style: form tags: - proposal-public-calls security: - tokenAuth: [] - waldurOIDCAuth: [] - {} responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/proposal-public-calls/{uuid}/: get: operationId: proposal_public_calls_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/PublicCallFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-public-calls security: - tokenAuth: [] - waldurOIDCAuth: [] - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicCall' description: '' /api/proposal-public-calls/{uuid}/check_eligibility/: get: operationId: proposal_public_calls_check_eligibility_retrieve description: Check if the current user is eligible to submit proposals to this call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-public-calls security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/EligibilityCheck' description: '' /api/proposal-requested-offerings/: get: operationId: proposal_requested_offerings_list parameters: - in: query name: call schema: type: string format: uri description: Call x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderRequestedOfferingOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: organization_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: provider_uuid schema: type: string format: uuid description: Provider x-waldur-operation-id: customers_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/RequestedOfferingStates' explode: true style: form tags: - proposal-requested-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProviderRequestedOffering' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: proposal_requested_offerings_count parameters: - in: query name: call schema: type: string format: uri description: Call x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderRequestedOfferingOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: organization_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: provider_uuid schema: type: string format: uuid description: Provider x-waldur-operation-id: customers_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/RequestedOfferingStates' explode: true style: form tags: - proposal-requested-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/proposal-requested-offerings/{uuid}/: get: operationId: proposal_requested_offerings_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-requested-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderRequestedOffering' description: '' /api/proposal-requested-offerings/{uuid}/accept/: post: operationId: proposal_requested_offerings_accept description: Accept a requested offering. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-requested-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.ACCEPT_CALL_REQUEST scopes: - offering.customer /api/proposal-requested-offerings/{uuid}/cancel/: post: operationId: proposal_requested_offerings_cancel description: Cancel a requested offering. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-requested-offerings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body x-permissions: - permission: OFFERING.ACCEPT_CALL_REQUEST scopes: - offering.customer /api/proposal-requested-resources/: get: operationId: proposal_requested_resources_list parameters: - in: query name: created schema: type: string format: date-time - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderRequestedResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal schema: type: string format: uri description: Proposal x-waldur-operation-id: proposal_proposals_retrieve - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: resource schema: type: string format: uri description: Resource x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve tags: - proposal-requested-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProviderRequestedResource' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: proposal_requested_resources_count parameters: - in: query name: created schema: type: string format: date-time - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProviderRequestedResourceOEnum' description: |+ Ordering explode: false style: form - in: query name: offering schema: type: string format: uri description: Offering x-waldur-operation-id: marketplace_provider_offerings_retrieve - in: query name: offering_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal schema: type: string format: uri description: Proposal x-waldur-operation-id: proposal_proposals_retrieve - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: resource schema: type: string format: uri description: Resource x-waldur-operation-id: marketplace_resources_retrieve - in: query name: resource_uuid schema: type: string format: uuid x-waldur-operation-id: marketplace_resources_retrieve tags: - proposal-requested-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/proposal-requested-resources/{uuid}/: get: operationId: proposal_requested_resources_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-requested-resources security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProviderRequestedResource' description: '' /api/proposal-reviews/: get: operationId: proposal_reviews_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProposalReviewOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal schema: type: string format: uri x-waldur-operation-id: proposal_proposals_retrieve - in: query name: proposal_name schema: type: string - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: round_uuid schema: type: string format: uuid x-waldur-operation-id: call_rounds_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ProposalReviewStateEnum' explode: true style: form tags: - proposal-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ProposalReview' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: proposal_reviews_create tags: - proposal-reviews requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalReviewRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ProposalReview' description: '' head: operationId: proposal_reviews_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProposalReviewOEnum' description: |+ Ordering explode: false style: form - in: query name: organization_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal schema: type: string format: uri x-waldur-operation-id: proposal_proposals_retrieve - in: query name: proposal_name schema: type: string - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: round_uuid schema: type: string format: uuid x-waldur-operation-id: call_rounds_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/ProposalReviewStateEnum' explode: true style: form tags: - proposal-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/proposal-reviews/{uuid}/: get: operationId: proposal_reviews_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProposalReview' description: '' put: operationId: proposal_reviews_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-reviews requestBody: content: application/json: schema: $ref: '#/components/schemas/ProposalReviewRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProposalReview' description: '' patch: operationId: proposal_reviews_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-reviews requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedProposalReviewRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProposalReview' description: '' delete: operationId: proposal_reviews_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/proposal-reviews/{uuid}/reject/: post: operationId: proposal_reviews_reject description: Reject a review, changing its state to REJECTED. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-reviews security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/proposal-reviews/{uuid}/submit/: post: operationId: proposal_reviews_submit description: Submit a review, changing its state to SUBMITTED. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - proposal-reviews requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewSubmitRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/provider-invoice-items/: get: operationId: provider_invoice_items_list parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: invoice_month schema: type: integer description: Invoice month - in: query name: invoice_year schema: type: integer description: Invoice year - in: query name: o schema: type: array items: $ref: '#/components/schemas/InvoiceItemOEnum1' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve tags: - provider-invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/InvoiceItem' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: provider_invoice_items_count parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: invoice_month schema: type: integer description: Invoice month - in: query name: invoice_year schema: type: integer description: Invoice year - in: query name: o schema: type: array items: $ref: '#/components/schemas/InvoiceItemOEnum1' description: |+ Ordering explode: false style: form - in: query name: offering_uuid schema: type: string format: uuid description: Offering UUID x-waldur-operation-id: marketplace_provider_offerings_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve tags: - provider-invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/provider-invoice-items/{id}/: get: operationId: provider_invoice_items_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this invoice item. required: true tags: - provider-invoice-items security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvoiceItem' description: '' /api/public-maintenance-announcements/: get: operationId: public_maintenance_announcements_list description: Returns a paginated list of public maintenance announcements. Only announcements that are 'Scheduled', 'In progress', or 'Completed' are visible. This endpoint is accessible to unauthenticated users. summary: List public maintenance announcements parameters: - in: query name: maintenance_type schema: type: integer description: Maintenance type - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scheduled_end_after schema: type: string format: date-time description: Scheduled end after - in: query name: scheduled_end_before schema: type: string format: date-time description: Scheduled end before - in: query name: scheduled_start_after schema: type: string format: date-time description: Scheduled start after - in: query name: scheduled_start_before schema: type: string format: date-time description: Scheduled start before - in: query name: service_provider_uuid schema: type: string format: uuid description: Service provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementStateEnum' description: |+ Maintenance state explode: true style: form tags: - public-maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] - {} responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PublicMaintenanceAnnouncement' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: public_maintenance_announcements_count description: Get number of items in the collection matching the request parameters. summary: List public maintenance announcements parameters: - in: query name: maintenance_type schema: type: integer description: Maintenance type - in: query name: o schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scheduled_end_after schema: type: string format: date-time description: Scheduled end after - in: query name: scheduled_end_before schema: type: string format: date-time description: Scheduled end before - in: query name: scheduled_start_after schema: type: string format: date-time description: Scheduled start after - in: query name: scheduled_start_before schema: type: string format: date-time description: Scheduled start before - in: query name: service_provider_uuid schema: type: string format: uuid description: Service provider UUID x-waldur-operation-id: marketplace_service_providers_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementStateEnum' description: |+ Maintenance state explode: true style: form tags: - public-maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] - {} responses: '200': description: No response body /api/public-maintenance-announcements/{uuid}/: get: operationId: public_maintenance_announcements_retrieve description: Returns the details of a specific public maintenance announcement. summary: Retrieve a public maintenance announcement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - public-maintenance-announcements security: - tokenAuth: [] - waldurOIDCAuth: [] - {} responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicMaintenanceAnnouncement' description: '' /api/query/: post: operationId: query description: Execute a given SQL query against a read-only database replica. This is a powerful tool for diagnostics and reporting, but should be used with caution. Requires support user permissions. summary: Execute read-only SQL query tags: - query requestBody: content: application/json: schema: $ref: '#/components/schemas/QueryRequest' examples: ListAllCustomers: value: query: SELECT uuid, name, country FROM structure_customer LIMIT 10; summary: Example of a query to retrieve all customers. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: {} examples: SuccessfulResponse: value: - - a1b2c3d4-e5f6-a7b8-c9d0-e1f2a3b4c5d6 - Customer A - US - - b2c3d4e5-f6a7-b8c9-d0e1-f2a3b4c5d6a7 - Customer B - DE summary: Example response for a successful query. description: '' '400': description: No response body /api/rabbitmq-overview/: get: operationId: rabbitmq_overview_retrieve description: |- Returns global RabbitMQ cluster health and performance metrics. Includes: - **Cluster info**: Name, RabbitMQ version, Erlang version - **Message stats**: Publish/deliver/confirm/ack counts and rates (per second) - **Queue totals**: Total messages, ready messages, unacknowledged messages - **Object totals**: Connection, channel, exchange, queue, and consumer counts - **Listeners**: Active protocol listeners (AMQP, HTTP, etc.) Requires support user permissions. summary: Get RabbitMQ cluster overview statistics tags: - rabbitmq-overview security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RmqOverview' description: '' '503': content: application/json: schema: $ref: '#/components/schemas/RmqStatsError' description: '' /api/rabbitmq-stats/: get: operationId: rabbitmq_stats_retrieve description: |- Provides statistics about RabbitMQ subscription queues. Returns information about all vhosts with their subscription queues, including: - Queue names and message counts - Waldur user and subscription information linked to each vhost - Total message counts per vhost and across all vhosts Requires support user permissions. summary: Get RabbitMQ subscription queue statistics tags: - rabbitmq-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RmqStatsResponse' description: '' '503': content: application/json: schema: $ref: '#/components/schemas/RmqStatsError' description: '' post: operationId: rabbitmq_stats description: |- Purges messages from or deletes specified RabbitMQ subscription queues. **Purge operations** (remove messages, keep queue): - `vhost` and `queue_name`: Purge a specific queue - `vhost` and `queue_pattern`: Purge queues matching pattern (e.g., '*_resource') - `purge_all_subscription_queues`: Purge all subscription queues across all vhosts **Delete operations** (remove queue entirely): - `vhost`, `queue_name`, and `delete_queue=true`: Delete a specific queue - `vhost`, `queue_pattern`, and `delete_queue=true`: Delete queues matching pattern - `delete_all_subscription_queues`: Delete all subscription queues across all vhosts Requires staff permissions (more restrictive than viewing). summary: Purge or delete RabbitMQ subscription queues tags: - rabbitmq-stats requestBody: content: application/json: schema: $ref: '#/components/schemas/RmqPurgeRequestRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RmqPurgeResponse' description: '' '400': content: application/json: schema: $ref: '#/components/schemas/RmqStatsError' description: '' '404': content: application/json: schema: $ref: '#/components/schemas/RmqStatsError' description: '' '503': content: application/json: schema: $ref: '#/components/schemas/RmqStatsError' description: '' /api/rabbitmq-user-stats/: get: operationId: rabbitmq_user_stats_list description: |- Returns enriched connection data for all RabbitMQ users. For each user (which corresponds to an EventSubscription), provides: - Connection state (running, blocked, blocking) - Traffic statistics (bytes sent/received) - Connection timestamp - Client properties (product, version, platform) - Channel count and heartbeat timeout Requires support user permissions. summary: Get RabbitMQ user connection statistics parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rabbitmq-user-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RmqEnrichedUserStatsItem' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/rabbitmq-vhost-stats/: get: operationId: rabbitmq_vhost_stats_list tags: - rabbitmq-vhost-stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RmqVHostStatsItem' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/rancher-apps/: get: operationId: rancher_apps_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherApplicationFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: template_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_templates_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - rancher-apps security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherApplication' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: rancher_apps_create tags: - rancher-apps requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherApplicationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RancherApplication' description: '' head: operationId: rancher_apps_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: template_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_templates_retrieve - in: query name: uuid schema: type: string format: uuid description: UUID tags: - rancher-apps security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-apps/{uuid}/: get: operationId: rancher_apps_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherApplicationFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-apps security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherApplication' description: '' put: operationId: rancher_apps_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-apps requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherApplicationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherApplication' description: '' patch: operationId: rancher_apps_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-apps requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRancherApplicationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherApplication' description: '' delete: operationId: rancher_apps_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-apps security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-apps/{uuid}/pull/: post: operationId: rancher_apps_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-apps security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/rancher-apps/{uuid}/set_erred/: post: operationId: rancher_apps_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-apps requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/rancher-apps/{uuid}/set_ok/: post: operationId: rancher_apps_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-apps security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/rancher-apps/{uuid}/unlink/: post: operationId: rancher_apps_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-apps security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-catalogs/: get: operationId: rancher_catalogs_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rancher-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherCatalog' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: rancher_catalogs_create tags: - rancher-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherCatalogCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RancherCatalogCreate' description: '' head: operationId: rancher_catalogs_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rancher-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-catalogs/{uuid}/: get: operationId: rancher_catalogs_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherCatalog' description: '' put: operationId: rancher_catalogs_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherCatalogUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherCatalogUpdate' description: '' patch: operationId: rancher_catalogs_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRancherCatalogRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherCatalog' description: '' delete: operationId: rancher_catalogs_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-catalogs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-catalogs/{uuid}/refresh/: post: operationId: rancher_catalogs_refresh parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-catalogs requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherCatalogRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherCatalog' description: '' /api/rancher-cluster-security-groups/: get: operationId: rancher_cluster_security_groups_list parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rancher-cluster-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ClusterSecurityGroup' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: rancher_cluster_security_groups_count parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rancher-cluster-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-cluster-security-groups/{uuid}/: get: operationId: rancher_cluster_security_groups_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-cluster-security-groups security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ClusterSecurityGroup' description: '' put: operationId: rancher_cluster_security_groups_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-cluster-security-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/ClusterSecurityGroupRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ClusterSecurityGroup' description: '' patch: operationId: rancher_cluster_security_groups_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-cluster-security-groups requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedClusterSecurityGroupRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ClusterSecurityGroup' description: '' /api/rancher-cluster-templates/: get: operationId: rancher_cluster_templates_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rancher-cluster-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherClusterTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: rancher_cluster_templates_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rancher-cluster-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-cluster-templates/{uuid}/: get: operationId: rancher_cluster_templates_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-cluster-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherClusterTemplate' description: '' /api/rancher-clusters/: get: operationId: rancher_clusters_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherClusterFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - rancher-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherCluster' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: rancher_clusters_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - rancher-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-clusters/{uuid}/: get: operationId: rancher_clusters_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherClusterFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherCluster' description: '' put: operationId: rancher_clusters_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherClusterRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherCluster' description: '' patch: operationId: rancher_clusters_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRancherClusterRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherCluster' description: '' /api/rancher-clusters/{uuid}/create_management_security_group/: post: operationId: rancher_clusters_create_management_security_group parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherClusterRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherCluster' description: '' /api/rancher-clusters/{uuid}/import_yaml/: post: operationId: rancher_clusters_import_yaml parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherImportYamlRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherImportYaml' description: '' /api/rancher-clusters/{uuid}/pull/: post: operationId: rancher_clusters_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/rancher-clusters/{uuid}/set_erred/: post: operationId: rancher_clusters_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/rancher-clusters/{uuid}/set_ok/: post: operationId: rancher_clusters_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/rancher-clusters/{uuid}/unlink/: post: operationId: rancher_clusters_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-hpas/: get: operationId: rancher_hpas_list parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: workload_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_workloads_retrieve tags: - rancher-hpas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherHPA' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: rancher_hpas_create tags: - rancher-hpas requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherHPARequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RancherHPA' description: '' head: operationId: rancher_hpas_count parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: workload_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_workloads_retrieve tags: - rancher-hpas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-hpas/{uuid}/: get: operationId: rancher_hpas_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherHPA' description: '' put: operationId: rancher_hpas_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherHPARequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherHPA' description: '' patch: operationId: rancher_hpas_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRancherHPARequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherHPA' description: '' delete: operationId: rancher_hpas_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-hpas/{uuid}/pull/: post: operationId: rancher_hpas_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/rancher-hpas/{uuid}/set_erred/: post: operationId: rancher_hpas_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/rancher-hpas/{uuid}/set_ok/: post: operationId: rancher_hpas_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/rancher-hpas/{uuid}/unlink/: post: operationId: rancher_hpas_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-hpas/{uuid}/yaml/: get: operationId: rancher_hpas_yaml_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherHPA' description: '' put: operationId: rancher_hpas_yaml_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-hpas requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherHPARequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherHPA' description: '' /api/rancher-ingresses/: get: operationId: rancher_ingresses_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherIngressFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: rancher_project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - rancher-ingresses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherIngress' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: rancher_ingresses_create tags: - rancher-ingresses requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherIngressRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RancherIngress' description: '' head: operationId: rancher_ingresses_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: rancher_project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - rancher-ingresses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-ingresses/{uuid}/: get: operationId: rancher_ingresses_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherIngressFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherIngress' description: '' put: operationId: rancher_ingresses_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherIngressRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherIngress' description: '' patch: operationId: rancher_ingresses_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRancherIngressRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherIngress' description: '' delete: operationId: rancher_ingresses_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-ingresses/{uuid}/pull/: post: operationId: rancher_ingresses_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/rancher-ingresses/{uuid}/set_erred/: post: operationId: rancher_ingresses_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/rancher-ingresses/{uuid}/set_ok/: post: operationId: rancher_ingresses_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/rancher-ingresses/{uuid}/unlink/: post: operationId: rancher_ingresses_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-ingresses/{uuid}/yaml/: get: operationId: rancher_ingresses_yaml_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherIngressFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherIngress' description: '' put: operationId: rancher_ingresses_yaml_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-ingresses requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherIngressRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherIngress' description: '' /api/rancher-namespaces/: get: operationId: rancher_namespaces_list parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/RancherNamespaceOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - rancher-namespaces security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherNamespace' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: rancher_namespaces_count parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/RancherNamespaceOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - rancher-namespaces security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-namespaces/{uuid}/: get: operationId: rancher_namespaces_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-namespaces security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherNamespace' description: '' /api/rancher-nodes/: get: operationId: rancher_nodes_list parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherNode' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: rancher_nodes_create tags: - rancher-nodes requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherCreateNodeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RancherCreateNode' description: '' head: operationId: rancher_nodes_count parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-nodes/{uuid}/: get: operationId: rancher_nodes_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherNode' description: '' delete: operationId: rancher_nodes_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-nodes/{uuid}/console/: get: operationId: rancher_nodes_console_retrieve description: Returns console URL for the node. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConsoleUrl' description: '' /api/rancher-nodes/{uuid}/console_log/: get: operationId: rancher_nodes_console_log_retrieve description: Returns console log for the node. parameters: - in: query name: length schema: type: integer - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: string description: '' '404': description: No response body /api/rancher-nodes/{uuid}/link_openstack/: post: operationId: rancher_nodes_link_openstack description: Links node to OpenStack instance. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes requestBody: content: application/json: schema: $ref: '#/components/schemas/LinkOpenstackRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/rancher-nodes/{uuid}/pull/: post: operationId: rancher_nodes_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/rancher-nodes/{uuid}/set_erred/: post: operationId: rancher_nodes_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/rancher-nodes/{uuid}/set_ok/: post: operationId: rancher_nodes_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/rancher-nodes/{uuid}/unlink/: post: operationId: rancher_nodes_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-nodes/{uuid}/unlink_openstack/: post: operationId: rancher_nodes_unlink_openstack description: Unlinks node from OpenStack instance. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-nodes security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/rancher-projects/: get: operationId: rancher_projects_list parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - rancher-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherProject' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: rancher_projects_count parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - rancher-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-projects/{uuid}/: get: operationId: rancher_projects_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherProject' description: '' /api/rancher-projects/{uuid}/secrets/: get: operationId: rancher_projects_secrets_retrieve description: Returns project's secrets. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-projects security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherProject' description: '' /api/rancher-role-templates/: get: operationId: rancher_role_templates_list parameters: - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/RoleTemplateOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope_type schema: type: string - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: service_settings_retrieve tags: - rancher-role-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RoleTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: rancher_role_templates_count parameters: - in: query name: name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/RoleTemplateOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: scope_type schema: type: string - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: service_settings_retrieve tags: - rancher-role-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-role-templates/{uuid}/: get: operationId: rancher_role_templates_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-role-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RoleTemplate' description: '' /api/rancher-services/: get: operationId: rancher_services_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherServiceFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: rancher_project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - rancher-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherService' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: rancher_services_create tags: - rancher-services requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherServiceCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RancherServiceCreate' description: '' head: operationId: rancher_services_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: rancher_project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - rancher-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-services/{uuid}/: get: operationId: rancher_services_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherServiceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherService' description: '' put: operationId: rancher_services_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherServiceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherService' description: '' patch: operationId: rancher_services_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRancherServiceRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherService' description: '' delete: operationId: rancher_services_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-services/{uuid}/pull/: post: operationId: rancher_services_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/rancher-services/{uuid}/set_erred/: post: operationId: rancher_services_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/rancher-services/{uuid}/set_ok/: post: operationId: rancher_services_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/rancher-services/{uuid}/unlink/: post: operationId: rancher_services_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-services/{uuid}/yaml/: get: operationId: rancher_services_yaml_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RancherServiceFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherService' description: '' put: operationId: rancher_services_yaml_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-services requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherServiceRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherService' description: '' /api/rancher-template-versions/{template_uuid}/{version}/: get: operationId: rancher_template_versions_retrieve parameters: - in: path name: template_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true - in: path name: version schema: type: string pattern: ^[0-9.]+$ required: true tags: - rancher-template-versions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/TemplateVersion' description: '' /api/rancher-templates/: get: operationId: rancher_templates_list parameters: - in: query name: catalog_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_catalogs_retrieve - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/RancherTemplateOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - rancher-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: rancher_templates_count parameters: - in: query name: catalog_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_catalogs_retrieve - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: o schema: type: array items: $ref: '#/components/schemas/RancherTemplateOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - rancher-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-templates/{uuid}/: get: operationId: rancher_templates_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherTemplate' description: '' /api/rancher-users/: get: operationId: rancher_users_list parameters: - in: query name: cluster_uuid schema: type: string format: uuid description: Cluster UUID x-waldur-operation-id: rancher_clusters_retrieve - in: query name: is_active schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: service_settings_retrieve - in: query name: user_full_name schema: type: string description: User full name contains - in: query name: user_username schema: type: string - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - rancher-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherUser' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: rancher_users_count parameters: - in: query name: cluster_uuid schema: type: string format: uuid description: Cluster UUID x-waldur-operation-id: rancher_clusters_retrieve - in: query name: is_active schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings_uuid schema: type: string format: uuid x-waldur-operation-id: service_settings_retrieve - in: query name: user_full_name schema: type: string description: User full name contains - in: query name: user_username schema: type: string - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - rancher-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-users/{uuid}/: get: operationId: rancher_users_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherUser' description: '' /api/rancher-workloads/: get: operationId: rancher_workloads_list parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/RancherWorkloadOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - rancher-workloads security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RancherWorkload' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: rancher_workloads_create tags: - rancher-workloads requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherWorkloadRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RancherWorkload' description: '' head: operationId: rancher_workloads_count parameters: - in: query name: cluster_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_clusters_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: namespace_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_namespaces_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/RancherWorkloadOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: rancher_projects_retrieve - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - rancher-workloads security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/rancher-workloads/{uuid}/: get: operationId: rancher_workloads_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-workloads security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherWorkload' description: '' put: operationId: rancher_workloads_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-workloads requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherWorkloadRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherWorkload' description: '' patch: operationId: rancher_workloads_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-workloads requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRancherWorkloadRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherWorkload' description: '' delete: operationId: rancher_workloads_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-workloads security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/rancher-workloads/{uuid}/redeploy/: post: operationId: rancher_workloads_redeploy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-workloads security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/rancher-workloads/{uuid}/yaml/: get: operationId: rancher_workloads_yaml_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-workloads security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherWorkload' description: '' put: operationId: rancher_workloads_yaml_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - rancher-workloads requestBody: content: application/json: schema: $ref: '#/components/schemas/RancherWorkloadRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RancherWorkload' description: '' /api/remote-eduteams/: post: operationId: remote_eduteams description: Allows to pull user details from remote eduTEAMS instance. tags: - remote-eduteams requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteEduteamsRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteEduteamsUUID' description: '' /api/remote-waldur-api/cancel_termination/{uuid}: post: operationId: remote_waldur_api_cancel_termination description: Cancel termination order parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/import_offering/: post: operationId: remote_waldur_api_import_offering description: Create local offering from remote tags: - remote-waldur-api requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteOfferingCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteOfferingCreateResponse' description: '' /api/remote-waldur-api/pull_offering_details/{uuid}/: post: operationId: remote_waldur_api_pull_offering_details parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/pull_offering_invoices/{uuid}/: post: operationId: remote_waldur_api_pull_offering_invoices parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/pull_offering_orders/{uuid}/: post: operationId: remote_waldur_api_pull_offering_orders parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/pull_offering_resources/{uuid}/: post: operationId: remote_waldur_api_pull_offering_resources parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/pull_offering_robot_accounts/{uuid}/: post: operationId: remote_waldur_api_pull_offering_robot_accounts parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/pull_offering_usage/{uuid}/: post: operationId: remote_waldur_api_pull_offering_usage parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/pull_offering_users/{uuid}/: post: operationId: remote_waldur_api_pull_offering_users parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/pull_order/{uuid}: post: operationId: remote_waldur_api_pull_order description: Schedule order pull task parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/pull_resource_robot_accounts/{uuid}/: post: operationId: remote_waldur_api_pull_resource_robot_accounts parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/push_project_data/{uuid}/: post: operationId: remote_waldur_api_push_project_data parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/remote_categories/: post: operationId: remote_waldur_api_remote_categories description: List remote marketplace categories parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - remote-waldur-api requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteCredentialsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MarketplaceCategory' description: '' description: '' /api/remote-waldur-api/remote_customers/: post: operationId: remote_waldur_api_remote_customers description: List remote customers owned by current user parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - remote-waldur-api requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteCredentialsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteCustomer' description: '' description: '' /api/remote-waldur-api/remote_resource_order_status/{resource_uuid}/: get: operationId: remote_waldur_api_remote_resource_order_status_retrieve description: Get remote order details parameters: - in: path name: resource_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteResourceOrder' description: '' /api/remote-waldur-api/remote_resource_status/{resource_uuid}/: get: operationId: remote_waldur_api_remote_resource_status_retrieve description: Get remote resource sync status parameters: - in: path name: resource_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RemoteResourceSyncStatus' description: '' /api/remote-waldur-api/remote_resource_team_status/{resource_uuid}/: get: operationId: remote_waldur_api_remote_resource_team_status_list description: Get remote resource team members parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: resource_uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteResourceTeamMember' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/remote-waldur-api/shared_offerings/: post: operationId: remote_waldur_api_shared_offerings description: List remote importable offerings for particular customer parameters: - in: query name: customer_uuid schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - remote-waldur-api requestBody: content: application/json: schema: $ref: '#/components/schemas/RemoteCredentialsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteOffering' description: '' description: '' /api/remote-waldur-api/sync_resource/{uuid}/: post: operationId: remote_waldur_api_sync_resource parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/remote-waldur-api/sync_resource_project_permissions/{uuid}/: post: operationId: remote_waldur_api_sync_resource_project_permissions parameters: - in: path name: uuid schema: type: string pattern: ^[a-f0-9]+$ required: true tags: - remote-waldur-api security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/reviewer-bids/: get: operationId: reviewer_bids_list parameters: - in: query name: bid schema: type: array items: $ref: '#/components/schemas/BidEnum' description: |+ Reviewer's preference for reviewing this proposal explode: true style: form - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ReviewerBidOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve tags: - reviewer-bids security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ReviewerBid' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: reviewer_bids_create tags: - reviewer-bids requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerBidRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ReviewerBid' description: '' head: operationId: reviewer_bids_count parameters: - in: query name: bid schema: type: array items: $ref: '#/components/schemas/BidEnum' description: |+ Reviewer's preference for reviewing this proposal explode: true style: form - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ReviewerBidOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve tags: - reviewer-bids security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/reviewer-bids/{uuid}/: get: operationId: reviewer_bids_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-bids security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerBid' description: '' put: operationId: reviewer_bids_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-bids requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerBidRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerBid' description: '' patch: operationId: reviewer_bids_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-bids requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedReviewerBidRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerBid' description: '' delete: operationId: reviewer_bids_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-bids security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/reviewer-bids/bulk-submit/: post: operationId: reviewer_bids_bulk_submit description: Submit multiple bids at once. tags: - reviewer-bids requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerBulkBidRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: submitted: type: integer description: '' /api/reviewer-bids/my-bids/: get: operationId: reviewer_bids_my_bids_list description: Get my bids for a specific call. parameters: - in: query name: bid schema: type: array items: $ref: '#/components/schemas/BidEnum' description: |+ Reviewer's preference for reviewing this proposal explode: true style: form - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ReviewerBidOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve tags: - reviewer-bids security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ReviewerBid' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: reviewer_bids_my_bids_count description: Get number of items in the collection matching the request parameters. parameters: - in: query name: bid schema: type: array items: $ref: '#/components/schemas/BidEnum' description: |+ Reviewer's preference for reviewing this proposal explode: true style: form - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ReviewerBidOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: proposal_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_proposals_retrieve - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve tags: - reviewer-bids security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/reviewer-bids/submit/: post: operationId: reviewer_bids_submit description: Submit a bid on a proposal. tags: - reviewer-bids requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerBidSubmitRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerBid' description: '' /api/reviewer-invitations/{token}/: get: operationId: reviewer_invitations_retrieve description: Get invitation details by token. parameters: - in: path name: token schema: type: string pattern: ^[a-zA-Z0-9_-]+$ required: true tags: - reviewer-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PublicInvitation' description: '' /api/reviewer-invitations/{token}/accept/: post: operationId: reviewer_invitations_accept description: Accept a reviewer invitation. parameters: - in: path name: token schema: type: string pattern: ^[a-zA-Z0-9_-]+$ required: true tags: - reviewer-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/InvitationAcceptRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvitationAcceptResponse' description: '' '400': content: application/json: schema: $ref: '#/components/schemas/InvitationAcceptError' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/InvitationAuthError' description: '' /api/reviewer-invitations/{token}/decline/: post: operationId: reviewer_invitations_decline description: Decline a reviewer invitation. parameters: - in: path name: token schema: type: string pattern: ^[a-zA-Z0-9_-]+$ required: true tags: - reviewer-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/InvitationDeclineRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvitationDeclineResponse' description: '' /api/reviewer-profiles/: get: operationId: reviewer_profiles_list parameters: - in: query name: expertise_category_uuid schema: type: string format: uuid x-waldur-operation-id: expertise_categories_retrieve - in: query name: expertise_keyword schema: type: string - in: query name: has_orcid schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/ReviewerProfileOEnum' description: |+ Ordering explode: false style: form - in: query name: orcid_id schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_email schema: type: string - in: query name: user_name schema: type: string - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ReviewerProfile' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: reviewer_profiles_create tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerProfileRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ReviewerProfile' description: '' head: operationId: reviewer_profiles_count parameters: - in: query name: expertise_category_uuid schema: type: string format: uuid x-waldur-operation-id: expertise_categories_retrieve - in: query name: expertise_keyword schema: type: string - in: query name: has_orcid schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/ReviewerProfileOEnum' description: |+ Ordering explode: false style: form - in: query name: orcid_id schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user_email schema: type: string - in: query name: user_name schema: type: string - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/reviewer-profiles/{reviewer_profile_uuid}/affiliations/: get: operationId: nested_reviewer_profile_affiliations_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ReviewerAffiliation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: nested_reviewer_profile_affiliations_create parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerAffiliationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ReviewerAffiliation' description: '' /api/reviewer-profiles/{reviewer_profile_uuid}/affiliations/{uuid}/: get: operationId: nested_reviewer_profile_affiliations_retrieve parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerAffiliation' description: '' put: operationId: nested_reviewer_profile_affiliations_update parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerAffiliationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerAffiliation' description: '' patch: operationId: nested_reviewer_profile_affiliations_partial_update parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedReviewerAffiliationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerAffiliation' description: '' delete: operationId: nested_reviewer_profile_affiliations_destroy parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/reviewer-profiles/{reviewer_profile_uuid}/expertise/: get: operationId: nested_reviewer_profile_expertise_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ReviewerExpertise' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: nested_reviewer_profile_expertise_create parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerExpertiseRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ReviewerExpertise' description: '' /api/reviewer-profiles/{reviewer_profile_uuid}/expertise/{uuid}/: get: operationId: nested_reviewer_profile_expertise_retrieve parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerExpertise' description: '' put: operationId: nested_reviewer_profile_expertise_update parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerExpertiseRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerExpertise' description: '' patch: operationId: nested_reviewer_profile_expertise_partial_update parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedReviewerExpertiseRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerExpertise' description: '' delete: operationId: nested_reviewer_profile_expertise_destroy parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/reviewer-profiles/{reviewer_profile_uuid}/publications/: get: operationId: nested_reviewer_profile_publications_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ReviewerPublication' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: nested_reviewer_profile_publications_create parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerPublicationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/ReviewerPublication' description: '' /api/reviewer-profiles/{reviewer_profile_uuid}/publications/{uuid}/: get: operationId: nested_reviewer_profile_publications_retrieve parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerPublication' description: '' put: operationId: nested_reviewer_profile_publications_update parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerPublicationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerPublication' description: '' patch: operationId: nested_reviewer_profile_publications_partial_update parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedReviewerPublicationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerPublication' description: '' delete: operationId: nested_reviewer_profile_publications_destroy parameters: - in: path name: reviewer_profile_uuid schema: type: string description: UUID of the parent reviewer profile required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/reviewer-profiles/{uuid}/: get: operationId: reviewer_profiles_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerProfile' description: '' put: operationId: reviewer_profiles_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerProfileRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerProfile' description: '' patch: operationId: reviewer_profiles_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedReviewerProfileRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerProfile' description: '' delete: operationId: reviewer_profiles_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/reviewer-profiles/{uuid}/connect-orcid/: get: operationId: reviewer_profiles_connect_orcid_retrieve description: Get ORCID OAuth authorization URL. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: authorization_url: type: string description: '' /api/reviewer-profiles/{uuid}/connect-orcid/callback/: post: operationId: reviewer_profiles_connect_orcid_callback description: Complete ORCID OAuth connection with authorization code. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/OrcidCallbackRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerProfile' description: '' /api/reviewer-profiles/{uuid}/disconnect-orcid/: post: operationId: reviewer_profiles_disconnect_orcid description: Disconnect ORCID from profile. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerProfileRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrcidDisconnectResponse' description: '' /api/reviewer-profiles/{uuid}/import-publications/: post: operationId: reviewer_profiles_import_publications description: Import publications from ORCID or other sources. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportPublicationsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: imported_count: type: integer description: '' /api/reviewer-profiles/{uuid}/sync-orcid/: post: operationId: reviewer_profiles_sync_orcid description: Sync profile data from ORCID. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerProfileRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/OrcidSyncResponse' description: '' /api/reviewer-profiles/me/: get: operationId: reviewer_profiles_me_retrieve description: Get or create reviewer profile for the current user. tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerProfile' description: '' post: operationId: reviewer_profiles_me description: Get or create reviewer profile for the current user. tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerProfileCreateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerProfile' description: '' patch: operationId: reviewer_profiles_me_partial_update description: Get or create reviewer profile for the current user. tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedReviewerProfileCreateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerProfile' description: '' head: operationId: reviewer_profiles_me_count description: Get number of items in the collection matching the request parameters. tags: - reviewer-profiles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/reviewer-profiles/publish/: post: operationId: reviewer_profiles_publish description: 'Publish reviewer profile for discovery by call managers. Warning: Publishing makes your full profile visible to call managers globally.' tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerProfileRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: is_published: type: boolean published_at: type: string format: date-time warning: type: string description: '' /api/reviewer-profiles/unpublish/: post: operationId: reviewer_profiles_unpublish description: Unpublish reviewer profile to remove it from discovery. tags: - reviewer-profiles requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerProfileRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: object properties: is_published: type: boolean detail: type: string description: '' /api/reviewer-suggestions/: get: operationId: reviewer_suggestions_list parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: min_affinity_score schema: type: number format: float - in: query name: o schema: type: array items: $ref: '#/components/schemas/ReviewerSuggestionOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: status schema: type: array items: $ref: '#/components/schemas/ReviewerSuggestionStatusEnum' explode: true style: form tags: - reviewer-suggestions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ReviewerSuggestion' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: reviewer_suggestions_count parameters: - in: query name: call_uuid schema: type: string format: uuid x-waldur-operation-id: proposal_public_calls_retrieve - in: query name: min_affinity_score schema: type: number format: float - in: query name: o schema: type: array items: $ref: '#/components/schemas/ReviewerSuggestionOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: reviewer_uuid schema: type: string format: uuid x-waldur-operation-id: reviewer_profiles_retrieve - in: query name: status schema: type: array items: $ref: '#/components/schemas/ReviewerSuggestionStatusEnum' explode: true style: form tags: - reviewer-suggestions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/reviewer-suggestions/{uuid}/: get: operationId: reviewer_suggestions_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-suggestions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerSuggestion' description: '' delete: operationId: reviewer_suggestions_destroy description: Delete a reviewer suggestion. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-suggestions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body x-permissions: - permission: PROPOSAL.MANAGE_REVIEW scopes: - call.manager /api/reviewer-suggestions/{uuid}/confirm/: post: operationId: reviewer_suggestions_confirm description: Confirm a reviewer suggestion. The reviewer will be invited to the call. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-suggestions requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewerSuggestionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerSuggestion' description: '' /api/reviewer-suggestions/{uuid}/reject/: post: operationId: reviewer_suggestions_reject description: Reject a reviewer suggestion. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - reviewer-suggestions requestBody: content: application/json: schema: $ref: '#/components/schemas/SuggestionRejectRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReviewerSuggestion' description: '' /api/roles/: get: operationId: roles_list description: Get a list of all available roles. summary: List roles parameters: - in: query name: description schema: type: string - in: query name: field schema: type: array items: $ref: '#/components/schemas/RoleDetailsFieldEnum' - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RoleDetails' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: roles_create description: Allows staff users to create a new custom role with a specific set of permissions. summary: Create a new role tags: - roles requestBody: content: application/json: schema: $ref: '#/components/schemas/RoleModifyRequest' examples: CreateAProject-levelReviewerRole: value: name: PROJECT.REVIEWER description: Can view project. content_type: project permissions: - PROJECT.LIST summary: Create a project-level reviewer role required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RoleDetails' examples: SuccessfulRoleCreationResponse: value: uuid: d8c2d5852d434937985392d24249b6d3 name: PROJECT.REVIEWER description: Can view project. permissions: - PROJECT.LIST is_system_role: false is_active: true users_count: 0 content_type: project summary: Successful role creation response description: '' head: operationId: roles_count description: Get number of items in the collection matching the request parameters. summary: List roles parameters: - in: query name: description schema: type: string - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/roles/{uuid}/: get: operationId: roles_retrieve description: Retrieve the details of a specific role by its UUID. summary: Get role details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/RoleDetailsFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RoleDetails' description: '' put: operationId: roles_update description: Allows staff users to update an existing role's name, description, content type, and permissions. The name of a system role cannot be changed. summary: Update a role parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - roles requestBody: content: application/json: schema: $ref: '#/components/schemas/RoleModifyRequest' examples: AddAPermissionToARole: value: name: PROJECT.REVIEWER description: Can view project and update metadata. content_type: project permissions: - PROJECT.LIST - PROJECT.UPDATE_METADATA summary: Add a permission to a role required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RoleDetails' examples: SuccessfulRoleUpdateResponse: value: uuid: d8c2d5852d434937985392d24249b6d3 name: PROJECT.REVIEWER description: Can view project and update metadata. permissions: - PROJECT.LIST - PROJECT.UPDATE_METADATA is_system_role: false is_active: true users_count: 5 content_type: project summary: Successful role update response description: '' patch: operationId: roles_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - roles requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRoleDetailsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RoleDetails' description: '' delete: operationId: roles_destroy description: Allows staff users to delete a custom role. System roles and roles that are currently in use cannot be deleted. summary: Delete a role parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/roles/{uuid}/disable/: post: operationId: roles_disable description: Allows staff users to disable a role, preventing it from being assigned further. Existing assignments are not affected. summary: Disable a role parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role disabled successfully. /api/roles/{uuid}/enable/: post: operationId: roles_enable description: Allows staff users to enable a role, making it available for assignment. summary: Enable a role parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - roles security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: Role enabled successfully. /api/roles/{uuid}/update_descriptions/: put: operationId: roles_update_descriptions_update description: Allows staff users to update the multilingual descriptions of a role. summary: Update role descriptions parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - roles requestBody: content: application/json: schema: $ref: '#/components/schemas/RoleDescriptionRequest' examples: UpdateEnglishAndEstonianDescriptions: value: description_en: New English description description_et: Uus kirjeldus eesti keeles summary: Update English and Estonian descriptions required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RoleDescription' examples: UpdateEnglishAndEstonianDescriptions: value: description_en: New English description description_et: Uus kirjeldus eesti keeles summary: Update English and Estonian descriptions description: '' /api/service-settings/: get: operationId: service_settings_list parameters: - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: field schema: type: array items: $ref: '#/components/schemas/ServiceSettingsFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: scope_uuid schema: type: string description: Scope UUID - in: query name: shared schema: type: boolean - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: type schema: type: string description: Type tags: - service-settings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ServiceSettings' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: service_settings_count parameters: - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: scope_uuid schema: type: string description: Scope UUID - in: query name: shared schema: type: boolean - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: type schema: type: string description: Type tags: - service-settings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/service-settings/{uuid}/: get: operationId: service_settings_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/ServiceSettingsFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - service-settings security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ServiceSettings' description: '' /api/slurm-allocation-user-usage/: get: operationId: slurm_allocation_user_usage_list parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: slurm_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: slurm_allocations_retrieve - in: query name: month schema: type: integer - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: year schema: type: integer tags: - slurm-allocation-user-usage security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SlurmAllocationUserUsage' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: slurm_allocation_user_usage_count parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: slurm_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: slurm_allocations_retrieve - in: query name: month schema: type: integer - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: year schema: type: integer tags: - slurm-allocation-user-usage security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/slurm-allocation-user-usage/{id}/: get: operationId: slurm_allocation_user_usage_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this allocation user usage. required: true tags: - slurm-allocation-user-usage security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmAllocationUserUsage' description: '' /api/slurm-allocations/: get: operationId: slurm_allocations_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/SlurmAllocationFieldEnum' - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - slurm-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SlurmAllocation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: slurm_allocations_create tags: - slurm-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmAllocationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/SlurmAllocation' description: '' head: operationId: slurm_allocations_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - slurm-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/slurm-allocations/{uuid}/: get: operationId: slurm_allocations_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/SlurmAllocationFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmAllocation' description: '' put: operationId: slurm_allocations_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmAllocationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmAllocation' description: '' patch: operationId: slurm_allocations_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedSlurmAllocationRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmAllocation' description: '' delete: operationId: slurm_allocations_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/slurm-allocations/{uuid}/pull/: post: operationId: slurm_allocations_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/slurm-allocations/{uuid}/set_erred/: post: operationId: slurm_allocations_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/slurm-allocations/{uuid}/set_limits/: post: operationId: slurm_allocations_set_limits parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations requestBody: content: application/json: schema: $ref: '#/components/schemas/SlurmAllocationSetLimitsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmAllocationSetLimits' description: '' /api/slurm-allocations/{uuid}/set_ok/: post: operationId: slurm_allocations_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/slurm-allocations/{uuid}/unlink/: post: operationId: slurm_allocations_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-allocations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/slurm-associations/: get: operationId: slurm_associations_list parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: slurm_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: slurm_allocations_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - slurm-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SlurmAssociation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: slurm_associations_count parameters: - in: query name: allocation schema: type: string format: uri x-waldur-operation-id: slurm_allocations_retrieve - in: query name: allocation_uuid schema: type: string format: uuid x-waldur-operation-id: slurm_allocations_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - slurm-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/slurm-associations/{uuid}/: get: operationId: slurm_associations_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-associations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SlurmAssociation' description: '' /api/slurm-jobs/: get: operationId: slurm_jobs_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/FirecrestJobFieldEnum' - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - slurm-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/FirecrestJob' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: slurm_jobs_create tags: - slurm-jobs requestBody: content: application/json: schema: $ref: '#/components/schemas/FirecrestJobRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FirecrestJobRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/FirecrestJobRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/FirecrestJob' description: '' head: operationId: slurm_jobs_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - slurm-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/slurm-jobs/{uuid}/: get: operationId: slurm_jobs_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/FirecrestJobFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FirecrestJob' description: '' put: operationId: slurm_jobs_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-jobs requestBody: content: application/json: schema: $ref: '#/components/schemas/FirecrestJobRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/FirecrestJobRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/FirecrestJobRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FirecrestJob' description: '' patch: operationId: slurm_jobs_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-jobs requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedFirecrestJobRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/FirecrestJob' description: '' delete: operationId: slurm_jobs_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/slurm-jobs/{uuid}/pull/: post: operationId: slurm_jobs_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/slurm-jobs/{uuid}/set_erred/: post: operationId: slurm_jobs_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-jobs requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/slurm-jobs/{uuid}/set_ok/: post: operationId: slurm_jobs_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/slurm-jobs/{uuid}/unlink/: post: operationId: slurm_jobs_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - slurm-jobs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/stats/celery/: get: operationId: stats_celery_retrieve description: |- Provides a comprehensive snapshot of all Celery workers' status. This endpoint returns detailed information about: - **active**: Tasks currently being executed by workers - **scheduled**: Tasks scheduled for future execution (with ETA) - **reserved**: Tasks received by workers but not yet started - **revoked**: Task IDs that have been cancelled/revoked - **query_task**: Results of task queries (if any) - **stats**: Detailed worker statistics including uptime, pool info, and broker connection Each field is a dictionary where keys are worker names (e.g., 'celery@hostname'). If no workers are available, fields will be `null`. Requires support user permissions. summary: Get Celery worker statistics tags: - stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CeleryStatsResponse' examples: CeleryStatsWithActiveWorkers: value: active: celery@worker1: - id: e3a95109-acd5-4f5a-b4c4-65f2f4e5d123 name: waldur_core.tasks.send_email args: - user@example.com kwargs: subject: Welcome type: waldur_core.tasks.send_email hostname: celery@worker1 time_start: 1703952000.123456 acknowledged: true worker_pid: 12345 scheduled: celery@worker1: [] reserved: celery@worker1: [] revoked: celery@worker1: [] query_task: null stats: celery@worker1: broker: hostname: redis port: 6379 transport: redis virtual_host: '0' clock: '12345' uptime: 86400 pid: 1234 pool: max_concurrency: 4 processes: - 12345 - 12346 - 12347 - 12348 prefetch_count: 16 total: waldur_core.tasks.send_email: 150 waldur_core.tasks.cleanup: 42 summary: Response when Celery workers are running description: Example showing active workers with tasks in various states. NoWorkersAvailable: value: active: null scheduled: null reserved: null revoked: null query_task: null stats: null summary: Response when no Celery workers are running description: All fields are null when workers are offline or unreachable. description: '' /api/stats/database/: get: operationId: stats_database_retrieve description: |- Retrieves comprehensive statistics about the PostgreSQL database including: - **Table statistics**: Top 10 largest tables by size - **Connection statistics**: Active, idle, and waiting connections with utilization - **Database size**: Total size, data size, and index size - **Cache performance**: Buffer cache and index hit ratios (should be >99%) - **Transaction statistics**: Commits, rollbacks, deadlocks - **Lock statistics**: Current locks and waiting queries - **Maintenance statistics**: Dead tuples, vacuum needs, oldest transaction age - **Active queries**: Currently running queries with duration - **Query performance**: Sequential vs index scan ratios - **Replication status**: WAL size and replication lag (if applicable) This information is useful for monitoring, debugging, and performance tuning. Requires support user permissions. summary: Get comprehensive database statistics tags: - stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/DatabaseStatsResponse' description: '' /api/stats/query/: post: operationId: stats_query description: Execute a given SQL query against a read-only database replica. This is a powerful tool for diagnostics and reporting, but should be used with caution. Requires support user permissions. summary: Execute read-only SQL query tags: - stats requestBody: content: application/json: schema: $ref: '#/components/schemas/QueryRequest' examples: ListAllCustomers: value: query: SELECT uuid, name, country FROM structure_customer LIMIT 10; summary: Example of a query to retrieve all customers. required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: {} examples: SuccessfulResponse: value: - - a1b2c3d4-e5f6-a7b8-c9d0-e1f2a3b4c5d6 - Customer A - US - - b2c3d4e5-f6a7-b8c9-d0e1-f2a3b4c5d6a7 - Customer B - DE summary: Example response for a successful query. description: '' '400': description: No response body /api/stats/table-growth/: get: operationId: stats_table_growth_retrieve description: |- Retrieves historical table growth statistics for detecting abnormal patterns. This endpoint returns: - **date**: Current date of the statistics - **weekly_threshold_percent**: Configured alert threshold for weekly growth - **monthly_threshold_percent**: Configured alert threshold for monthly growth - **tables**: List of tables with their growth statistics, sorted by growth rate Each table entry includes: - Current size and row estimates - Size and row estimates from 7 days ago - Size and row estimates from 30 days ago - Weekly and monthly growth percentages Use this data to identify tables that may be experiencing abnormal growth, which could indicate bugs like the version-based get_or_create issue. Query parameters: - **table_name** (optional): Filter to a specific table name - **days** (optional, default 30): Number of days of history to include Requires support user permissions. summary: Get table growth statistics tags: - stats security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/TableGrowthStatsResponse' description: '' /api/support-attachments/: get: operationId: support_attachments_list parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AttachmentFieldEnum' - in: query name: issue schema: type: string format: uri x-waldur-operation-id: support_issues_retrieve - in: query name: issue_uuid schema: type: string format: uuid x-waldur-operation-id: support_issues_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-attachments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Attachment' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: support_attachments_create tags: - support-attachments requestBody: content: application/json: schema: $ref: '#/components/schemas/AttachmentRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/AttachmentRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/AttachmentRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Attachment' description: '' head: operationId: support_attachments_count parameters: - in: query name: issue schema: type: string format: uri x-waldur-operation-id: support_issues_retrieve - in: query name: issue_uuid schema: type: string format: uuid x-waldur-operation-id: support_issues_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-attachments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-attachments/{uuid}/: get: operationId: support_attachments_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/AttachmentFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - support-attachments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Attachment' description: '' delete: operationId: support_attachments_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-attachments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/support-comments/: get: operationId: support_comments_list parameters: - in: query name: author_name schema: type: string - in: query name: author_user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: description schema: type: string - in: query name: is_public schema: type: boolean - in: query name: issue schema: type: string format: uri x-waldur-operation-id: support_issues_retrieve - in: query name: issue_uuid schema: type: string format: uuid x-waldur-operation-id: support_issues_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ThreadSessionOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: remote_id_is_set schema: type: boolean description: Remote ID is set. - name: resource required: false in: query schema: type: string format: uri description: Filter by resource URL. tags: - support-comments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Comment' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: support_comments_count parameters: - in: query name: author_name schema: type: string - in: query name: author_user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: description schema: type: string - in: query name: is_public schema: type: boolean - in: query name: issue schema: type: string format: uri x-waldur-operation-id: support_issues_retrieve - in: query name: issue_uuid schema: type: string format: uuid x-waldur-operation-id: support_issues_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ThreadSessionOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: remote_id_is_set schema: type: boolean description: Remote ID is set. - name: resource required: false in: query schema: type: string format: uri description: Filter by resource URL. tags: - support-comments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-comments/{uuid}/: get: operationId: support_comments_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-comments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Comment' description: '' put: operationId: support_comments_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-comments requestBody: content: application/json: schema: $ref: '#/components/schemas/CommentRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Comment' description: '' patch: operationId: support_comments_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-comments requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedCommentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Comment' description: '' delete: operationId: support_comments_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-comments security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/support-feedback-average-report/: get: operationId: support_feedback_average_report_retrieve tags: - support-feedback-average-report security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/support-feedback-report/: get: operationId: support_feedback_report_retrieve tags: - support-feedback-report security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/support-feedbacks/: get: operationId: support_feedbacks_list parameters: - in: query name: created_after schema: type: string format: date-time - in: query name: created_before schema: type: string format: date-time - in: query name: evaluation schema: type: integer - in: query name: issue schema: type: string format: uri x-waldur-operation-id: support_issues_retrieve - in: query name: issue_key schema: type: string - in: query name: issue_uuid schema: type: string format: uuid x-waldur-operation-id: support_issues_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: user_full_name schema: type: string description: User full name contains - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - support-feedbacks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Feedback' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: support_feedbacks_create tags: - support-feedbacks requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateFeedbackRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/CreateFeedback' description: '' head: operationId: support_feedbacks_count parameters: - in: query name: created_after schema: type: string format: date-time - in: query name: created_before schema: type: string format: date-time - in: query name: evaluation schema: type: integer - in: query name: issue schema: type: string format: uri x-waldur-operation-id: support_issues_retrieve - in: query name: issue_key schema: type: string - in: query name: issue_uuid schema: type: string format: uuid x-waldur-operation-id: support_issues_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: user_full_name schema: type: string description: User full name contains - in: query name: user_uuid schema: type: string format: uuid x-waldur-operation-id: users_retrieve tags: - support-feedbacks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-feedbacks/{uuid}/: get: operationId: support_feedbacks_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-feedbacks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Feedback' description: '' /api/support-issue-statuses/: get: operationId: support_issue_statuses_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-issue-statuses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/IssueStatus' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: support_issue_statuses_create tags: - support-issue-statuses requestBody: content: application/json: schema: $ref: '#/components/schemas/IssueStatusCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/IssueStatusCreate' description: '' head: operationId: support_issue_statuses_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-issue-statuses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-issue-statuses/{uuid}/: get: operationId: support_issue_statuses_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issue-statuses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IssueStatus' description: '' put: operationId: support_issue_statuses_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issue-statuses requestBody: content: application/json: schema: $ref: '#/components/schemas/IssueStatusCreateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IssueStatusCreate' description: '' patch: operationId: support_issue_statuses_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issue-statuses requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedIssueStatusRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IssueStatus' description: '' delete: operationId: support_issue_statuses_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issue-statuses security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/support-issues/: get: operationId: support_issues_list parameters: - in: query name: assignee schema: type: string format: uri x-waldur-operation-id: support_users_retrieve - in: query name: assignee_name schema: type: string - in: query name: caller schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: caller_full_name schema: type: string description: Caller full name contains - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: key schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/IssueOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Summary or key contains - in: query name: remote_id schema: type: string - in: query name: reporter schema: type: string format: uri x-waldur-operation-id: support_users_retrieve - in: query name: reporter_name schema: type: string - in: query name: resolution_year_month schema: type: string - name: resource required: false in: query schema: type: string format: uri description: Filter by resource URL. - in: query name: resource_external_ip schema: type: string description: Resource external IP - in: query name: resource_internal_ip schema: type: string description: Resource internal IP - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: status schema: type: string - in: query name: summary schema: type: string - in: query name: type schema: type: string tags: - support-issues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Issue' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: support_issues_create tags: - support-issues requestBody: content: application/json: schema: $ref: '#/components/schemas/IssueRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Issue' description: '' head: operationId: support_issues_count parameters: - in: query name: assignee schema: type: string format: uri x-waldur-operation-id: support_users_retrieve - in: query name: assignee_name schema: type: string - in: query name: caller schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: caller_full_name schema: type: string description: Caller full name contains - in: query name: customer schema: type: string format: uri x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: key schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/IssueOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uri x-waldur-operation-id: projects_retrieve - in: query name: project_uuid schema: type: string format: uuid x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Summary or key contains - in: query name: remote_id schema: type: string - in: query name: reporter schema: type: string format: uri x-waldur-operation-id: support_users_retrieve - in: query name: reporter_name schema: type: string - in: query name: resolution_year_month schema: type: string - name: resource required: false in: query schema: type: string format: uri description: Filter by resource URL. - in: query name: resource_external_ip schema: type: string description: Resource external IP - in: query name: resource_internal_ip schema: type: string description: Resource internal IP - in: query name: resource_uuid schema: type: string format: uuid description: Resource UUID x-waldur-operation-id: marketplace_resources_retrieve - in: query name: status schema: type: string - in: query name: summary schema: type: string - in: query name: type schema: type: string tags: - support-issues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-issues/{uuid}/: get: operationId: support_issues_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Issue' description: '' put: operationId: support_issues_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issues requestBody: content: application/json: schema: $ref: '#/components/schemas/IssueRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Issue' description: '' patch: operationId: support_issues_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issues requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedIssueRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Issue' description: '' delete: operationId: support_issues_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/support-issues/{uuid}/comment/: post: operationId: support_issues_comment parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issues requestBody: content: application/json: schema: $ref: '#/components/schemas/CommentRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Comment' description: '' /api/support-issues/{uuid}/sync/: post: operationId: support_issues_sync parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-issues requestBody: content: application/json: schema: $ref: '#/components/schemas/IssueRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Issue' description: '' /api/support-jira-webhook/: post: operationId: support_jira_webhook tags: - support-jira-webhook requestBody: content: application/json: schema: $ref: '#/components/schemas/WebHookReceiverRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebHookReceiver' description: '' /api/support-priorities/: get: operationId: support_priorities_list parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-priorities security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Priority' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: support_priorities_count parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-priorities security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-priorities/{uuid}/: get: operationId: support_priorities_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-priorities security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Priority' description: '' /api/support-request-types/: get: operationId: support_request_types_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-request-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RequestType' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: support_request_types_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-request-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-request-types-admin/: get: operationId: support_request_types_admin_list parameters: - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-request-types-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/RequestTypeAdmin' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: support_request_types_admin_create tags: - support-request-types-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdmin' description: '' head: operationId: support_request_types_admin_count parameters: - in: query name: is_active schema: type: boolean - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-request-types-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-request-types-admin/{uuid}/: get: operationId: support_request_types_admin_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-request-types-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdmin' description: '' put: operationId: support_request_types_admin_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-request-types-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdmin' description: '' patch: operationId: support_request_types_admin_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-request-types-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedRequestTypeAdminRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdmin' description: '' delete: operationId: support_request_types_admin_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-request-types-admin security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/support-request-types-admin/{uuid}/activate/: post: operationId: support_request_types_admin_activate description: Activate a request type so it appears in issue creation. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-request-types-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdmin' description: '' /api/support-request-types-admin/{uuid}/deactivate/: post: operationId: support_request_types_admin_deactivate description: Deactivate a request type so it no longer appears in issue creation. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-request-types-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdmin' description: '' /api/support-request-types-admin/reorder/: post: operationId: support_request_types_admin_reorder description: Bulk update order for multiple request types. tags: - support-request-types-admin requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdminRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestTypeAdmin' description: '' /api/support-request-types/{uuid}/: get: operationId: support_request_types_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-request-types security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/RequestType' description: '' /api/support-smax-webhook/: post: operationId: support_smax_webhook tags: - support-smax-webhook requestBody: content: application/json: schema: $ref: '#/components/schemas/SmaxWebHookReceiverRequest' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/SmaxWebHookReceiver' description: '' /api/support-statistics/: get: operationId: support_statistics_retrieve tags: - support-statistics security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupportStats' description: '' /api/support-templates/: get: operationId: support_templates_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Template' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: support_templates_create tags: - support-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/TemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Template' description: '' head: operationId: support_templates_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-templates/{uuid}/: get: operationId: support_templates_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Template' description: '' put: operationId: support_templates_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/TemplateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Template' description: '' patch: operationId: support_templates_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedTemplateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Template' description: '' delete: operationId: support_templates_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/support-templates/{uuid}/create_attachments/: post: operationId: support_templates_create_attachments description: This view attaches documents to template. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateAttachmentsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body '400': description: No response body /api/support-templates/{uuid}/delete_attachments/: post: operationId: support_templates_delete_attachments parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-templates requestBody: content: application/json: schema: $ref: '#/components/schemas/DeleteAttachmentsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/support-users/: get: operationId: support_users_list parameters: - in: query name: backend_id schema: type: string - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: integer tags: - support-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SupportUser' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: support_users_count parameters: - in: query name: backend_id schema: type: string - in: query name: name schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: user schema: type: integer tags: - support-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/support-users/{uuid}/: get: operationId: support_users_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - support-users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SupportUser' description: '' /api/support-zammad-webhook/: post: operationId: support_zammad_webhook tags: - support-zammad-webhook responses: '200': description: No response body /api/support/settings/atlassian/: get: operationId: support_settings_atlassian_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body post: operationId: support_settings_atlassian_create tags: - support security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': description: No response body /api/support/settings/atlassian/{id}/: get: operationId: support_settings_atlassian_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this issue. required: true tags: - support security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body put: operationId: support_settings_atlassian_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this issue. required: true tags: - support security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body patch: operationId: support_settings_atlassian_partial_update parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this issue. required: true tags: - support security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body delete: operationId: support_settings_atlassian_destroy parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this issue. required: true tags: - support security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/support/settings/atlassian/current_settings/: get: operationId: support_settings_atlassian_current_settings_retrieve description: Get current Atlassian settings (masked secrets). tags: - support security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/support/settings/atlassian/discover_custom_fields/: post: operationId: support_settings_atlassian_discover_custom_fields description: Discover available custom fields. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverCustomFieldsRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AtlassianCustomFieldResponse' description: '' description: '' /api/support/settings/atlassian/discover_priorities/: post: operationId: support_settings_atlassian_discover_priorities description: Discover available priorities. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverPrioritiesRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AtlassianPriorityResponse' description: '' description: '' /api/support/settings/atlassian/discover_projects/: post: operationId: support_settings_atlassian_discover_projects description: Discover available Service Desk projects. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverProjectsRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AtlassianProjectResponse' description: '' description: '' /api/support/settings/atlassian/discover_request_types/: post: operationId: support_settings_atlassian_discover_request_types description: Discover request types for a selected project. parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - support requestBody: content: application/json: schema: $ref: '#/components/schemas/DiscoverRequestTypesRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/AtlassianRequestTypeResponse' description: '' description: '' /api/support/settings/atlassian/preview_settings/: post: operationId: support_settings_atlassian_preview_settings description: Generate preview of settings to be saved. tags: - support requestBody: content: application/json: schema: $ref: '#/components/schemas/AtlassianSettingsPreviewRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/support/settings/atlassian/save_settings/: post: operationId: support_settings_atlassian_save_settings description: Save selected settings to constance. tags: - support requestBody: content: application/json: schema: $ref: '#/components/schemas/AtlassianSettingsSaveRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/support/settings/atlassian/validate_credentials/: post: operationId: support_settings_atlassian_validate_credentials description: Validate Atlassian credentials without saving them. tags: - support requestBody: content: application/json: schema: $ref: '#/components/schemas/AtlassianCredentialsRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/sync-issues/: get: operationId: sync_issues_retrieve description: This view triggers synchronization of issues from backend. tags: - sync-issues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body '403': description: No response body post: operationId: sync_issues description: This view triggers synchronization of issues from backend. tags: - sync-issues security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': description: No response body '403': description: No response body /api/system-logs/: get: operationId: system_logs_list parameters: - in: query name: created_from schema: type: number - in: query name: created_to schema: type: number - in: query name: instance schema: type: string - in: query name: level schema: $ref: '#/components/schemas/SystemLogLevelEnum' - in: query name: level_gte schema: type: integer description: 'Min level: 20=INFO, 30=WARNING, 40=ERROR, 50=CRITICAL' - in: query name: logger_name schema: type: string - in: query name: message schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SystemLogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: source schema: $ref: '#/components/schemas/SystemLogSourceEnum' tags: - system-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SystemLog' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: system_logs_count parameters: - in: query name: created_from schema: type: number - in: query name: created_to schema: type: number - in: query name: instance schema: type: string - in: query name: level schema: $ref: '#/components/schemas/SystemLogLevelEnum' - in: query name: level_gte schema: type: integer description: 'Min level: 20=INFO, 30=WARNING, 40=ERROR, 50=CRITICAL' - in: query name: logger_name schema: type: string - in: query name: message schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SystemLogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: source schema: $ref: '#/components/schemas/SystemLogSourceEnum' tags: - system-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/system-logs/{id}/: get: operationId: system_logs_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this system log. required: true tags: - system-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SystemLog' description: '' /api/system-logs/instances/: get: operationId: system_logs_instances_list description: List all known instances (pods/containers) with their last activity. summary: List system log instances parameters: - in: query name: created_from schema: type: number - in: query name: created_to schema: type: number - in: query name: instance schema: type: string - in: query name: level schema: $ref: '#/components/schemas/SystemLogLevelEnum' - in: query name: level_gte schema: type: integer description: 'Min level: 20=INFO, 30=WARNING, 40=ERROR, 50=CRITICAL' - in: query name: logger_name schema: type: string - in: query name: message schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SystemLogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: source schema: $ref: '#/components/schemas/SystemLogSourceEnum' tags: - system-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SystemLogInstance' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: system_logs_instances_count description: Get number of items in the collection matching the request parameters. summary: List system log instances parameters: - in: query name: created_from schema: type: number - in: query name: created_to schema: type: number - in: query name: instance schema: type: string - in: query name: level schema: $ref: '#/components/schemas/SystemLogLevelEnum' - in: query name: level_gte schema: type: integer description: 'Min level: 20=INFO, 30=WARNING, 40=ERROR, 50=CRITICAL' - in: query name: logger_name schema: type: string - in: query name: message schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/SystemLogOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: source schema: $ref: '#/components/schemas/SystemLogSourceEnum' tags: - system-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/system-logs/stats/: get: operationId: system_logs_stats_retrieve description: Return log count statistics per source and instance, plus total table size. summary: Get system log statistics tags: - system-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SystemLogStatsResponse' description: '' head: operationId: system_logs_stats_count description: Get number of items in the collection matching the request parameters. summary: Get system log statistics tags: - system-logs security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-action-executions/: get: operationId: user_action_executions_list parameters: - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - user-action-executions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserActionExecution' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: user_action_executions_count parameters: - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - user-action-executions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/user-action-executions/{id}/: get: operationId: user_action_executions_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user action execution. required: true tags: - user-action-executions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserActionExecution' description: '' /api/user-action-providers/: get: operationId: user_action_providers_list parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - user-action-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserActionProvider' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: user_action_providers_count parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - user-action-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/user-action-providers/{id}/: get: operationId: user_action_providers_retrieve parameters: - in: path name: id schema: type: integer description: A unique integer value identifying this user action provider. required: true tags: - user-action-providers security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserActionProvider' description: '' /api/user-actions/: get: operationId: user_actions_list parameters: - in: query name: action_type schema: type: string - in: query name: created_after schema: type: string format: date-time - in: query name: created_before schema: type: string format: date-time - in: query name: due_within_days schema: type: number - in: query name: include_silenced schema: type: boolean - in: query name: is_silenced schema: type: boolean - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: overdue schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: urgency schema: $ref: '#/components/schemas/UrgencyEnum' - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID (staff only). x-waldur-operation-id: users_retrieve tags: - user-actions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserAction' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: user_actions_count parameters: - in: query name: action_type schema: type: string - in: query name: created_after schema: type: string format: date-time - in: query name: created_before schema: type: string format: date-time - in: query name: due_within_days schema: type: number - in: query name: include_silenced schema: type: boolean - in: query name: is_silenced schema: type: boolean - name: o required: false in: query description: Which field to use when ordering the results. schema: type: string - in: query name: overdue schema: type: boolean - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: urgency schema: $ref: '#/components/schemas/UrgencyEnum' - in: query name: user_uuid schema: type: string format: uuid description: Filter by user UUID (staff only). x-waldur-operation-id: users_retrieve tags: - user-actions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/user-actions/{uuid}/: get: operationId: user_actions_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-actions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserAction' description: '' /api/user-actions/{uuid}/execute_action/: post: operationId: user_actions_execute_action description: Execute a corrective action parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-actions requestBody: content: application/json: schema: $ref: '#/components/schemas/ExecuteActionRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExecuteActionResponse' description: '' '404': content: application/json: schema: $ref: '#/components/schemas/ExecuteActionErrorResponse' description: '' '500': content: application/json: schema: $ref: '#/components/schemas/ExecuteActionErrorResponse' description: '' /api/user-actions/{uuid}/silence/: post: operationId: user_actions_silence description: Silence an action temporarily or permanently parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-actions requestBody: content: application/json: schema: $ref: '#/components/schemas/SilenceActionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SilenceActionResponse' description: '' /api/user-actions/{uuid}/unsilence/: post: operationId: user_actions_unsilence description: Remove silence from an action parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-actions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UnsilenceActionResponse' description: '' /api/user-actions/bulk_silence/: post: operationId: user_actions_bulk_silence description: Bulk silence actions by filters tags: - user-actions requestBody: content: application/json: schema: $ref: '#/components/schemas/SilenceActionRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/BulkSilenceResponse' description: '' /api/user-actions/summary/: get: operationId: user_actions_summary_retrieve description: Get action summary counts tags: - user-actions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserActionSummary' description: '' head: operationId: user_actions_summary_count description: Get number of items in the collection matching the request parameters. tags: - user-actions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-actions/update_actions/: post: operationId: user_actions_update_actions description: Trigger update of user actions tags: - user-actions requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateActionsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/UpdateActionsResponse' description: '' /api/user-agreements/: get: operationId: user_agreements_list description: Retrieve a list of user agreements (Terms of Service and Privacy Policy). Supports filtering by agreement type and language with fallback behavior. summary: List user agreements parameters: - in: query name: agreement_type schema: $ref: '#/components/schemas/AgreementTypeEnum' - in: query name: language schema: type: string description: ISO 639-1 language code (e.g., 'en', 'de', 'et'). Returns requested language or falls back to default version if unavailable. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - user-agreements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserAgreement' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: user_agreements_create tags: - user-agreements requestBody: content: application/json: schema: $ref: '#/components/schemas/UserAgreementRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/UserAgreement' description: '' head: operationId: user_agreements_count description: Get number of items in the collection matching the request parameters. summary: List user agreements parameters: - in: query name: agreement_type schema: $ref: '#/components/schemas/AgreementTypeEnum' - in: query name: language schema: type: string description: ISO 639-1 language code (e.g., 'en', 'de', 'et'). Returns requested language or falls back to default version if unavailable. - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' tags: - user-agreements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-agreements/{uuid}/: get: operationId: user_agreements_retrieve description: Fetch the details of a specific user agreement by its UUID. summary: Retrieve user agreement parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-agreements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserAgreement' description: '' put: operationId: user_agreements_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-agreements requestBody: content: application/json: schema: $ref: '#/components/schemas/UserAgreementRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserAgreement' description: '' patch: operationId: user_agreements_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-agreements requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUserAgreementRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserAgreement' description: '' delete: operationId: user_agreements_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-agreements security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/user-group-invitations/: get: operationId: user_group_invitations_list description: Retrieve a list of group invitations. Unauthenticated users can only see public invitations. summary: List group invitations parameters: - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: is_active schema: type: boolean - in: query name: is_public schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: roles_retrieve - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: scope_type schema: type: string tags: - user-group-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/GroupInvitation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: user_group_invitations_create description: Create a new group invitation, which acts as a template for users to request permissions. summary: Create group invitation tags: - user-group-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/GroupInvitationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/GroupInvitation' description: '' head: operationId: user_group_invitations_count description: Get number of items in the collection matching the request parameters. summary: List group invitations parameters: - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: is_active schema: type: boolean - in: query name: is_public schema: type: boolean - in: query name: o schema: type: array items: $ref: '#/components/schemas/BackendResourceReqOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: roles_retrieve - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: scope_type schema: type: string tags: - user-group-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-group-invitations/{uuid}/: get: operationId: user_group_invitations_retrieve description: Retrieve details of a specific group invitation. Unauthenticated users can only see public invitations. summary: Retrieve group invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-group-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/GroupInvitation' description: '' put: operationId: user_group_invitations_update description: Update an active group invitation. Only active invitations can be edited. summary: Update a group invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-group-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/GroupInvitationUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/GroupInvitationUpdate' description: '' patch: operationId: user_group_invitations_partial_update description: Partially update an active group invitation. Only active invitations can be edited. summary: Partially update a group invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-group-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedGroupInvitationUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/GroupInvitationUpdate' description: '' delete: operationId: user_group_invitations_destroy description: Deletes an inactive group invitation. Only invitations that have been canceled (is_active=False) can be deleted. summary: Delete a group invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-group-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/user-group-invitations/{uuid}/cancel/: post: operationId: user_group_invitations_cancel description: Cancels an active group invitation, preventing new permission requests from being created. summary: Cancel a group invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-group-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-group-invitations/{uuid}/projects/: get: operationId: user_group_invitations_projects_list description: For a group invitation scoped to a customer, this endpoint lists all projects within that customer. summary: List projects for a customer-scoped group invitation parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: path name: uuid schema: type: string format: uuid required: true tags: - user-group-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/NestedProject' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/user-group-invitations/{uuid}/submit_request/: post: operationId: user_group_invitations_submit_request description: Creates a permission request based on a group invitation for the currently authenticated user. If the invitation has auto_approve enabled and the user matches the required patterns, the request is automatically approved. summary: Submit a permission request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-group-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SubmitRequestResponse' description: '' /api/user-invitations/: get: operationId: user_invitations_list description: Retrieve a list of user invitations visible to the current user. summary: List user invitations parameters: - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: email schema: type: string - in: query name: email_exact schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/InvitationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: roles_retrieve - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: scope_description schema: type: string - in: query name: scope_name schema: type: string - in: query name: scope_type schema: type: string - in: query name: state schema: type: array items: $ref: '#/components/schemas/InvitationState' explode: true style: form tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Invitation' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: user_invitations_create description: Create a new user invitation to grant a role in a specific scope (e.g., organization or project). summary: Create user invitation tags: - user-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/InvitationRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/Invitation' description: '' head: operationId: user_invitations_count description: Get number of items in the collection matching the request parameters. summary: List user invitations parameters: - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: email schema: type: string - in: query name: email_exact schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/InvitationOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string - in: query name: role_uuid schema: type: string format: uuid x-waldur-operation-id: roles_retrieve - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: scope_description schema: type: string - in: query name: scope_name schema: type: string - in: query name: scope_type schema: type: string - in: query name: state schema: type: array items: $ref: '#/components/schemas/InvitationState' explode: true style: form tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-invitations/{uuid}/: get: operationId: user_invitations_retrieve description: Retrieve details of a specific user invitation. summary: Retrieve user invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Invitation' description: '' put: operationId: user_invitations_update description: Update an existing user invitation. Only pending invitations can be edited. Allows changing email and role within the same scope. summary: Update user invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/InvitationUpdateRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvitationUpdate' description: '' patch: operationId: user_invitations_partial_update description: Partially update an existing user invitation. Only pending invitations can be edited. Allows changing email and role within the same scope. summary: Partially update user invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedInvitationUpdateRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvitationUpdate' description: '' delete: operationId: user_invitations_destroy description: Delete a user invitation. Only users with invitation management permissions can delete invitations. summary: Delete user invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/user-invitations/{uuid}/accept/: post: operationId: user_invitations_accept description: Accepts an invitation for the currently authenticated user. This grants the user the specified role in the invitation's scope. summary: Accept an invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-invitations/{uuid}/cancel/: post: operationId: user_invitations_cancel description: Cancels a pending or planned (pending_project) invitation. summary: Cancel an invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: description: Invitation has been successfully canceled. description: '' /api/user-invitations/{uuid}/check/: post: operationId: user_invitations_check description: Checks if an invitation is pending and returns its email and whether a civil number is required for acceptance. This endpoint is public and does not require authentication. summary: Check invitation validity parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvitationCheck' description: '' /api/user-invitations/{uuid}/delete/: post: operationId: user_invitations_delete description: Deletes an invitation. This action is restricted to staff users. summary: Delete an invitation (staff only) parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-invitations/{uuid}/details/: get: operationId: user_invitations_details_retrieve description: Retrieves public-facing details of an invitation. This is used to show information to a user before they accept it. summary: Get public invitation details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VisibleInvitationDetails' description: '' /api/user-invitations/{uuid}/send/: post: operationId: user_invitations_send description: Resends an email for a pending, expired, or canceled invitation. If the invitation was expired or canceled, its state is reset to 'pending' and its creation time is updated. summary: Resend an invitation parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-invitations security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-invitations/approve/: post: operationId: user_invitations_approve description: "\n For user's convenience invitation approval is performed\ \ without authentication.\n User UUID and invitation UUID is encoded\ \ into cryptographically signed token.\n " summary: Approve a requested invitation tags: - user-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/TokenRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-invitations/check-duplicates/: post: operationId: user_invitations_check_duplicates description: Returns pending invitations that already exist for the same email and role within the given scope. summary: Check for duplicate invitations tags: - user-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/InvitationDuplicateCheckRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/InvitationDuplicateCheckResponse' description: '' /api/user-invitations/reject/: post: operationId: user_invitations_reject description: "\n For user's convenience invitation reject action is performed\ \ without authentication.\n User UUID and invitation UUID is encoded\ \ into cryptographically signed token.\n " summary: Reject a requested invitation tags: - user-invitations requestBody: content: application/json: schema: $ref: '#/components/schemas/TokenRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-permission-requests/: get: operationId: user_permission_requests_list description: Retrieve a list of permission requests visible to the user. summary: List permission requests parameters: - in: query name: created_by schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: invitation schema: type: string format: uuid x-waldur-operation-id: user_invitations_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProposalReviewOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: state schema: type: array items: $ref: '#/components/schemas/RemoteProjectUpdateRequestStateEnum' explode: true style: form tags: - user-permission-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PermissionRequest' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: user_permission_requests_count description: Get number of items in the collection matching the request parameters. summary: List permission requests parameters: - in: query name: created_by schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: customer_uuid schema: type: string format: uuid x-waldur-operation-id: customers_retrieve - in: query name: invitation schema: type: string format: uuid x-waldur-operation-id: user_invitations_retrieve - in: query name: o schema: type: array items: $ref: '#/components/schemas/ProposalReviewOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - name: scope required: false in: query schema: type: string format: uri description: Filter by scope URL. - in: query name: state schema: type: array items: $ref: '#/components/schemas/RemoteProjectUpdateRequestStateEnum' explode: true style: form tags: - user-permission-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-permission-requests/{uuid}/: get: operationId: user_permission_requests_retrieve description: Retrieve details of a specific permission request. summary: Retrieve permission request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-permission-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/PermissionRequest' description: '' /api/user-permission-requests/{uuid}/approve/: post: operationId: user_permission_requests_approve description: Approves a pending permission request, granting the requesting user the permissions defined in the associated group invitation. summary: Approve a permission request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-permission-requests requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewCommentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-permission-requests/{uuid}/cancel_request/: post: operationId: user_permission_requests_cancel_request description: Cancels a pending or draft permission request. This can be done by the user who created the request or by a staff member. summary: Cancel a permission request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-permission-requests security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/CancelRequestResponse' description: '' /api/user-permission-requests/{uuid}/reject/: post: operationId: user_permission_requests_reject description: Rejects a pending permission request. summary: Reject a permission request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-permission-requests requestBody: content: application/json: schema: $ref: '#/components/schemas/ReviewCommentRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-permissions/: get: operationId: user_permissions_list description: Get a list of all permissions for the current user. Staff and support users can view all user permissions. The list can be filtered by user, scope, role, etc. summary: List user permissions parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: expiration_time schema: type: string format: date-time - in: query name: full_name schema: type: string description: User full name contains - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: native_name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingPermissionOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string description: Role name contains - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: roles_retrieve - in: query name: scope_name schema: type: string description: Scope name - in: query name: scope_type schema: type: string description: Scope type - in: query name: scope_uuid schema: type: string description: Scope UUID - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug contains - in: query name: user_url schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: username schema: type: string tags: - user-permissions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Permission' description: '' examples: ExampleUserPermissionListResponse: value: - - user_uuid: 8f20242b638743b18a485f81ac685e13 user_name: Alice Smith user_slug: alice-smith created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' created_by_full_name: Bob Johnson created_by_username: bob role_name: PROJECT.ADMIN role_description: Project administrator with full control over the project. role_uuid: d8c2d5852d434937985392d24249b6d3 scope_type: project scope_uuid: c81f33f1b4094a319e1fe1a3d5ca76a5 scope_name: Cloud Storage Project customer_uuid: b7e4501a1c6a4f91807d79b932408c62 customer_name: MegaCorp summary: Example user permission list response description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: user_permissions_count description: Get number of items in the collection matching the request parameters. summary: List user permissions parameters: - in: query name: created schema: type: string format: date-time description: Created after - in: query name: expiration_time schema: type: string format: date-time - in: query name: full_name schema: type: string description: User full name contains - in: query name: modified schema: type: string format: date-time description: Modified after - in: query name: native_name schema: type: string - in: query name: o schema: type: array items: $ref: '#/components/schemas/OfferingPermissionOEnum' description: |+ Ordering explode: false style: form - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: role_name schema: type: string description: Role name contains - in: query name: role_uuid schema: type: string format: uuid description: Role UUID x-waldur-operation-id: roles_retrieve - in: query name: scope_name schema: type: string description: Scope name - in: query name: scope_type schema: type: string description: Scope type - in: query name: scope_uuid schema: type: string description: Scope UUID - in: query name: user schema: type: string format: uuid x-waldur-operation-id: users_retrieve - in: query name: user_slug schema: type: string description: User slug contains - in: query name: user_url schema: type: string format: uri x-waldur-operation-id: users_retrieve - in: query name: username schema: type: string tags: - user-permissions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/user-permissions/{uuid}/: get: operationId: user_permissions_retrieve description: Retrieve the details of a specific user permission grant by its UUID. summary: Get permission details parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - user-permissions security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Permission' examples: ExampleUserPermissionDetailResponse: value: user_uuid: 8f20242b638743b18a485f81ac685e13 user_name: Alice Smith user_slug: alice-smith created: '2023-10-26T10:00:00Z' expiration_time: '2024-12-31T23:59:59Z' created_by_full_name: Bob Johnson created_by_username: bob role_name: PROJECT.ADMIN role_description: Project administrator with full control over the project. role_uuid: d8c2d5852d434937985392d24249b6d3 scope_type: project scope_uuid: c81f33f1b4094a319e1fe1a3d5ca76a5 scope_name: Cloud Storage Project customer_uuid: b7e4501a1c6a4f91807d79b932408c62 customer_name: MegaCorp summary: Example user permission detail response description: '' /api/users/: get: operationId: users_list parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserFieldEnum' - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/User' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: users_create tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UserRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/UserRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/User' description: '' head: operationId: users_count parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/users/{uuid}/: get: operationId: users_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' put: operationId: users_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/UserRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/UserRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/UserRequestMultipart' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' patch: operationId: users_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUserRequest' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedUserRequestForm' multipart/form-data: schema: $ref: '#/components/schemas/PatchedUserRequestMultipart' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' delete: operationId: users_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/users/{uuid}/cancel_change_email/: post: operationId: users_cancel_change_email description: Cancel email update request summary: Cancel email change request parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/{uuid}/change_email/: post: operationId: users_change_email description: Allows to change email for user. summary: Request email change parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/UserEmailChangeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/{uuid}/change_password/: post: operationId: users_change_password description: Allows staff user to change password for any user. summary: Change user password parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/PasswordChangeRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/{uuid}/data_access/: get: operationId: users_data_access_retrieve description: Shows who has access to the user's profile data. Includes administrative access (staff/support), organizational access (same customer/project), and service provider access (via consent). Regular users see counts for admin access; staff/support see individual records. summary: Get user data access visibility parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserDataAccess' description: '' /api/users/{uuid}/data_access_history/: get: operationId: users_data_access_history_list description: Shows historical log of who has accessed the user's profile data. Regular users see anonymized accessor categories. Staff/support see full details including accessor identity, IP, and context. summary: Get user data access history parameters: - in: query name: accessor_type schema: type: string description: Filter by accessor type (staff, support, organization_member, self) - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: end_date schema: type: string format: date description: Filter logs until this date (inclusive) - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: start_date schema: type: string format: date description: Filter logs from this date (inclusive) - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserDataAccessLog' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/users/{uuid}/history/: get: operationId: users_history_list description: Returns the version history for this object. Only accessible by staff and support users. summary: Get version history parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: created_after schema: type: string description: Filter versions created after this timestamp (ISO 8601) - in: query name: created_before schema: type: string description: Filter versions created before this timestamp (ISO 8601) - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VersionHistory' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' /api/users/{uuid}/history/at/: get: operationId: users_history_at_retrieve description: Returns the state of the object as it was at the specified timestamp. Only accessible by staff and support users. summary: Get object state at a specific timestamp parameters: - in: query name: timestamp schema: type: string description: ISO 8601 timestamp to query the object state at required: true - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VersionHistory' description: '' '400': content: application/json: schema: type: object additionalProperties: {} description: '' '404': content: application/json: schema: type: object additionalProperties: {} description: '' /api/users/{uuid}/identity_bridge_status/: get: operationId: users_identity_bridge_status_retrieve description: 'Returns diagnostic information about a user''s identity bridge state: active ISDs, per-attribute source tracking with staleness detection, and effective bridge-writable fields. Staff only.' summary: Get identity bridge status for a user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/IdentityBridgeUserStatus' description: '' /api/users/{uuid}/pull_remote_user/: post: operationId: users_pull_remote_user summary: Synchronize user details from eduTEAMS parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/{uuid}/refresh_token/: post: operationId: users_refresh_token summary: Refresh user auth token parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserAuthToken' description: '' /api/users/{uuid}/send_notification/: post: operationId: users_send_notification description: Staff-only action to send a pending actions digest notification to a specific user. summary: Send action notification to a specific user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/SendNotificationResponse' description: '' /api/users/{uuid}/token/: get: operationId: users_token_retrieve summary: Get user auth token parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/UserAuthToken' description: '' /api/users/{uuid}/update_actions/: post: operationId: users_update_actions description: Staff-only action to trigger recalculation of user actions for a specific user. summary: Recalculate user actions for a specific user parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateActionsRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/UpdateActionsResponse' description: '' /api/users/confirm_email/: post: operationId: users_confirm_email description: Confirm email update using code summary: Confirm email change tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/ConfirmEmailRequestRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/me/: get: operationId: users_me_retrieve description: Get current user details, including authentication token and profile completeness status. summary: Get current user details parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/UserFieldEnum' tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' head: operationId: users_me_count description: Get number of items in the collection matching the request parameters. summary: Get current user details tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/profile_completeness/: get: operationId: users_profile_completeness_retrieve description: Check if user profile is complete with all mandatory attributes. summary: Check profile completeness tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ProfileCompleteness' description: '' head: operationId: users_profile_completeness_count description: Get number of items in the collection matching the request parameters. summary: Check profile completeness tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/scim_sync_all/: post: operationId: users_scim_sync_all description: Staff-only action to queue SCIM synchronization for all users. summary: Trigger SCIM synchronization for all users tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ScimSyncAllResponse' description: '' /api/users/user_active_status_count/: get: operationId: users_user_active_status_count_list description: Returns aggregated counts of users by active/inactive status. Staff or support only. summary: Get user counts by active status parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserActiveStatusCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: users_user_active_status_count_count description: Get number of items in the collection matching the request parameters. summary: Get user counts by active status parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/user_language_count/: get: operationId: users_user_language_count_list description: Returns aggregated counts of users by preferred language. Staff or support only. summary: Get user counts by preferred language parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserLanguageCount' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: users_user_language_count_count description: Get number of items in the collection matching the request parameters. summary: Get user counts by preferred language parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/users/user_registration_trend/: get: operationId: users_user_registration_trend_list description: Returns user registration counts aggregated by month. Staff or support only. summary: Get user registration trends by month parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UserRegistrationTrend' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: users_user_registration_trend_count description: Get number of items in the collection matching the request parameters. summary: Get user registration trends by month parameters: - in: query name: agreement_date schema: type: string format: date-time description: Agreement date after - in: query name: civil_number schema: type: string - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: date_joined schema: type: string format: date-time description: Date joined after - in: query name: description schema: type: string - in: query name: email schema: type: string description: Email - in: query name: full_name schema: type: string description: Full name - in: query name: is_active schema: type: boolean description: Is active - in: query name: is_staff schema: type: boolean description: Is staff - in: query name: is_support schema: type: boolean description: Is support - in: query name: job_title schema: type: string description: Job title - in: query name: modified schema: type: string format: date-time description: Date modified after - in: query name: native_name schema: type: string description: Native name - in: query name: o schema: type: array items: $ref: '#/components/schemas/MarketplaceServiceProviderUserOEnum' description: |+ Ordering explode: false style: form - in: query name: organization schema: type: string description: Organization - in: query name: organization_roles schema: type: string description: Organization roles - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: phone_number schema: type: string - in: query name: project_roles schema: type: string description: Project roles - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: query schema: type: string description: Filter by first name, last name, civil number, username or email - in: query name: registration_method schema: type: string - in: query name: user_keyword schema: type: string description: User keyword - in: query name: username schema: type: string description: Username (exact) - in: query name: username_list schema: type: string description: Comma-separated usernames tags: - users security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/version/: get: operationId: version_retrieve description: Retrieves the current installed version of the application and the latest available version from GitHub (if available). Requires staff or support user permissions. summary: Get application version tags: - version security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/Version' description: '' /api/vmware-clusters/: get: operationId: vmware_clusters_list parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VmwareCluster' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: vmware_clusters_count parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/vmware-clusters/{uuid}/: get: operationId: vmware_clusters_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-clusters security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareCluster' description: '' /api/vmware-datastores/: get: operationId: vmware_datastores_list parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-datastores security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VmwareDatastore' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: vmware_datastores_count parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-datastores security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/vmware-datastores/{uuid}/: get: operationId: vmware_datastores_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-datastores security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareDatastore' description: '' /api/vmware-disks/: get: operationId: vmware_disks_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/VmwareDiskFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID - in: query name: vm schema: type: string format: uri x-waldur-operation-id: vmware_virtual_machine_retrieve - in: query name: vm_uuid schema: type: string format: uuid x-waldur-operation-id: vmware_virtual_machine_retrieve tags: - vmware-disks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VmwareDisk' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: vmware_disks_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID - in: query name: vm schema: type: string format: uri x-waldur-operation-id: vmware_virtual_machine_retrieve - in: query name: vm_uuid schema: type: string format: uuid x-waldur-operation-id: vmware_virtual_machine_retrieve tags: - vmware-disks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/vmware-disks/{uuid}/: get: operationId: vmware_disks_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/VmwareDiskFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-disks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareDisk' description: '' delete: operationId: vmware_disks_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-disks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/vmware-disks/{uuid}/extend/: post: operationId: vmware_disks_extend description: Increase disk capacity parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-disks requestBody: content: application/json: schema: $ref: '#/components/schemas/VmwareDiskExtendRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareDiskExtend' description: '' /api/vmware-disks/{uuid}/pull/: post: operationId: vmware_disks_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-disks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/vmware-disks/{uuid}/set_erred/: post: operationId: vmware_disks_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-disks requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/vmware-disks/{uuid}/set_ok/: post: operationId: vmware_disks_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-disks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/vmware-disks/{uuid}/unlink/: post: operationId: vmware_disks_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-disks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/vmware-folders/: get: operationId: vmware_folders_list parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-folders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VmwareFolder' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: vmware_folders_count parameters: - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-folders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/vmware-folders/{uuid}/: get: operationId: vmware_folders_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-folders security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareFolder' description: '' /api/vmware-limits/{uuid}/: get: operationId: vmware_limits_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-limits security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareLimit' description: '' /api/vmware-networks/: get: operationId: vmware_networks_list parameters: - in: query name: customer_pair_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VmwareNetwork' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: vmware_networks_count parameters: - in: query name: customer_pair_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/vmware-networks/{uuid}/: get: operationId: vmware_networks_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-networks security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareNetwork' description: '' /api/vmware-ports/: get: operationId: vmware_ports_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/VmwarePortFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: network schema: type: string format: uri x-waldur-operation-id: vmware_networks_retrieve - in: query name: network_uuid schema: type: string format: uuid x-waldur-operation-id: vmware_networks_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID - in: query name: vm schema: type: string format: uri x-waldur-operation-id: vmware_virtual_machine_retrieve - in: query name: vm_uuid schema: type: string format: uuid x-waldur-operation-id: vmware_virtual_machine_retrieve tags: - vmware-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VmwarePort' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: vmware_ports_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - in: query name: network schema: type: string format: uri x-waldur-operation-id: vmware_networks_retrieve - in: query name: network_uuid schema: type: string format: uuid x-waldur-operation-id: vmware_networks_retrieve - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID - in: query name: vm schema: type: string format: uri x-waldur-operation-id: vmware_virtual_machine_retrieve - in: query name: vm_uuid schema: type: string format: uuid x-waldur-operation-id: vmware_virtual_machine_retrieve tags: - vmware-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/vmware-ports/{uuid}/: get: operationId: vmware_ports_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/VmwarePortFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwarePort' description: '' delete: operationId: vmware_ports_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/vmware-ports/{uuid}/pull/: post: operationId: vmware_ports_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/vmware-ports/{uuid}/set_erred/: post: operationId: vmware_ports_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-ports requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/vmware-ports/{uuid}/set_ok/: post: operationId: vmware_ports_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/vmware-ports/{uuid}/unlink/: post: operationId: vmware_ports_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-ports security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/vmware-templates/: get: operationId: vmware_templates_list parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VmwareTemplate' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' head: operationId: vmware_templates_count parameters: - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: settings schema: type: string format: uri description: Settings URL x-waldur-operation-id: service_settings_retrieve - in: query name: settings_uuid schema: type: string format: uuid description: Settings UUID x-waldur-operation-id: service_settings_retrieve tags: - vmware-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/vmware-templates/{uuid}/: get: operationId: vmware_templates_retrieve parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-templates security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareTemplate' description: '' /api/vmware-virtual-machine/: get: operationId: vmware_virtual_machine_list parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: field schema: type: array items: $ref: '#/components/schemas/VmwareVirtualMachineFieldEnum' - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/VmwareVirtualMachine' description: '' description: '' headers: x-result-count: $ref: '#/components/headers/XResultCount' post: operationId: vmware_virtual_machine_create tags: - vmware-virtual-machine requestBody: content: application/json: schema: $ref: '#/components/schemas/VmwareVirtualMachineRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '201': content: application/json: schema: $ref: '#/components/schemas/VmwareVirtualMachine' description: '' head: operationId: vmware_virtual_machine_count parameters: - in: query name: backend_id schema: type: string description: Backend ID - in: query name: can_manage schema: type: boolean description: Can manage - in: query name: customer schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: customer_abbreviation schema: type: string description: Customer abbreviation - in: query name: customer_name schema: type: string description: Customer name - in: query name: customer_native_name schema: type: string description: Customer native name - in: query name: customer_uuid schema: type: string format: uuid description: Customer UUID x-waldur-operation-id: customers_retrieve - in: query name: description schema: type: string description: Description - in: query name: external_ip schema: type: string description: External IP - in: query name: name schema: type: string description: Name - in: query name: name_exact schema: type: string description: Name (exact) - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageSize' - in: query name: project schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: project_name schema: type: string description: Project name - in: query name: project_uuid schema: type: string format: uuid description: Project UUID x-waldur-operation-id: projects_retrieve - in: query name: runtime_state schema: type: string - in: query name: service_settings_name schema: type: string description: Service settings name - in: query name: service_settings_uuid schema: type: string format: uuid description: Service settings UUID x-waldur-operation-id: service_settings_retrieve - in: query name: state schema: type: array items: $ref: '#/components/schemas/CoreStates' description: |+ State explode: true style: form - in: query name: uuid schema: type: string format: uuid description: UUID tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body description: Get number of items in the collection matching the request parameters. /api/vmware-virtual-machine/{uuid}/: get: operationId: vmware_virtual_machine_retrieve parameters: - in: query name: field schema: type: array items: $ref: '#/components/schemas/VmwareVirtualMachineFieldEnum' - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareVirtualMachine' description: '' put: operationId: vmware_virtual_machine_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine requestBody: content: application/json: schema: $ref: '#/components/schemas/VmwareVirtualMachineRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareVirtualMachine' description: '' patch: operationId: vmware_virtual_machine_partial_update parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedVmwareVirtualMachineRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareVirtualMachine' description: '' delete: operationId: vmware_virtual_machine_destroy parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/vmware-virtual-machine/{uuid}/console/: get: operationId: vmware_virtual_machine_console_retrieve description: This endpoint provides access to Virtual Machine Remote Console aka VMRC. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConsoleUrl' description: '' /api/vmware-virtual-machine/{uuid}/create_disk/: post: operationId: vmware_virtual_machine_create_disk parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine requestBody: content: application/json: schema: $ref: '#/components/schemas/VmwareDiskRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwareDisk' description: '' /api/vmware-virtual-machine/{uuid}/create_port/: post: operationId: vmware_virtual_machine_create_port parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine requestBody: content: application/json: schema: $ref: '#/components/schemas/VmwarePortRequest' required: true security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/VmwarePort' description: '' /api/vmware-virtual-machine/{uuid}/pull/: post: operationId: vmware_virtual_machine_pull description: Schedule an asynchronous pull operation to synchronize resource state from the backend. Returns 202 if the pull was scheduled successfully, or 409 if the pull operation is not implemented for this resource type. summary: Synchronize resource state parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '202': content: application/json: schema: $ref: '#/components/schemas/PullResponse' description: '' '409': content: application/json: schema: $ref: '#/components/schemas/PullConflictResponse' description: '' /api/vmware-virtual-machine/{uuid}/reboot_guest/: post: operationId: vmware_virtual_machine_reboot_guest parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/vmware-virtual-machine/{uuid}/reset/: post: operationId: vmware_virtual_machine_reset parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/vmware-virtual-machine/{uuid}/set_erred/: post: operationId: vmware_virtual_machine_set_erred description: Manually transition the resource to ERRED state. This is useful for resources stuck in transitional states (CREATING, UPDATING, DELETING) that cannot be synced via pull. Staff-only operation. summary: Mark resource as ERRED parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine requestBody: content: application/json: schema: $ref: '#/components/schemas/SetErredRequest' required: false security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetErredResponse' description: '' /api/vmware-virtual-machine/{uuid}/set_ok/: post: operationId: vmware_virtual_machine_set_ok description: Manually transition the resource to OK state and clear error fields. Staff-only operation. summary: Mark resource as OK parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/SetOkResponse' description: '' /api/vmware-virtual-machine/{uuid}/shutdown_guest/: post: operationId: vmware_virtual_machine_shutdown_guest parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/vmware-virtual-machine/{uuid}/start/: post: operationId: vmware_virtual_machine_start parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/vmware-virtual-machine/{uuid}/stop/: post: operationId: vmware_virtual_machine_stop parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/vmware-virtual-machine/{uuid}/suspend/: post: operationId: vmware_virtual_machine_suspend parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': description: No response body /api/vmware-virtual-machine/{uuid}/unlink/: post: operationId: vmware_virtual_machine_unlink description: |- Delete 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. summary: Unlink resource parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '204': description: No response body /api/vmware-virtual-machine/{uuid}/web_console/: get: operationId: vmware_virtual_machine_web_console_retrieve description: This endpoint provides access to HTML Console aka WMKS. parameters: - in: path name: uuid schema: type: string format: uuid required: true tags: - vmware-virtual-machine security: - tokenAuth: [] - waldurOIDCAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ConsoleUrl' description: '' components: schemas: AccessSubnet: type: object description: '' properties: uuid: type: string format: uuid readOnly: true inet: type: string description: type: string maxLength: 4096 customer: type: string format: uri required: - customer - inet - uuid AccessSubnetRequest: type: object description: '' properties: inet: type: string minLength: 1 description: type: string maxLength: 4096 customer: type: string format: uri required: - customer - inet AccessTypeEnum: enum: - staff - support - staff_and_support type: string description: '' AccessorTypeEnum: enum: - staff - support - organization_member - service_provider - self type: string description: '' AccessorUser: type: object description: '' properties: uuid: type: string format: uuid username: type: string full_name: type: string required: - full_name - username - uuid AccountNameGenerationPolicyEnum: enum: - project_slug description: '' ActiveQueriesStats: type: object description: '' properties: count: type: integer readOnly: true description: Number of currently active queries longest_duration_seconds: type: number format: double readOnly: true description: Duration of the longest running query in seconds waiting_on_locks: type: integer readOnly: true description: Number of queries waiting on locks queries: type: array items: $ref: '#/components/schemas/ActiveQuery' readOnly: true description: List of active queries required: - count - longest_duration_seconds - queries - waiting_on_locks ActiveQuery: type: object description: '' properties: pid: type: integer readOnly: true description: Process ID duration_seconds: type: number format: double readOnly: true description: Query duration in seconds state: type: string readOnly: true description: Query state wait_event_type: type: string readOnly: true nullable: true description: Type of event the query is waiting for query_preview: type: string readOnly: true description: First 100 characters of the query required: - duration_seconds - pid - query_preview - state - wait_event_type AdminAnnouncement: type: object description: '' properties: uuid: type: string format: uuid readOnly: true description: type: string maxLength: 4096 active_from: type: string format: date-time active_to: type: string format: date-time is_active: type: boolean readOnly: true type: $ref: '#/components/schemas/AdminAnnouncementTypeEnum' created: type: string format: date-time readOnly: true maintenance_uuid: type: string readOnly: true maintenance_name: type: string readOnly: true maintenance_type: type: string readOnly: true maintenance_state: type: string readOnly: true maintenance_scheduled_start: type: string format: date-time readOnly: true maintenance_scheduled_end: type: string format: date-time readOnly: true maintenance_service_provider: type: string readOnly: true maintenance_affected_offerings: type: array items: type: object properties: uuid: type: string format: uuid name: type: string impact_level: type: string impact_level_display: type: string impact_description: type: string readOnly: true maintenance_external_reference_url: type: string readOnly: true required: [] AdminAnnouncementRequest: type: object description: '' properties: description: type: string maxLength: 4096 active_from: type: string format: date-time active_to: type: string format: date-time type: $ref: '#/components/schemas/AdminAnnouncementTypeEnum' required: - active_from - active_to AdminAnnouncementTypeEnum: enum: - information - warning - danger type: string description: '' AdminUser: type: object description: '' properties: user_uuid: type: string format: uuid username: type: string full_name: type: string access_type: $ref: '#/components/schemas/AccessTypeEnum' required: - access_type - full_name - user_uuid - username AdministrativeAccess: type: object description: '' properties: description: type: string staff_count: type: integer support_count: type: integer users: type: array items: $ref: '#/components/schemas/AdminUser' required: - description AffiliationTypeEnum: enum: - employment - education - visiting - honorary - consulting type: string description: '' AffinityMatrixEntry: type: object description: '' properties: uuid: type: string format: uuid reviewer_uuid: type: string format: uuid reviewer_name: type: string proposal_uuid: type: string format: uuid proposal_name: type: string affinity_score: type: number format: double keyword_score: type: number format: double nullable: true text_score: type: number format: double nullable: true has_conflict: type: boolean coi_type: type: string nullable: true coi_severity: type: string nullable: true coi_status: type: string nullable: true source: type: string required: - affinity_score - coi_severity - coi_status - coi_type - has_conflict - keyword_score - proposal_name - proposal_uuid - reviewer_name - reviewer_uuid - source - text_score - uuid AffinityMatrixResponse: type: object description: '' properties: count: type: integer results: type: array items: $ref: '#/components/schemas/AffinityMatrixEntry' required: - count - results AffinityMethodEnum: enum: - keyword - tfidf - combined type: string description: '' AgentConnectionInfo: type: object description: '' properties: uuid: type: string format: uuid readOnly: true description: Agent identity UUID name: type: string readOnly: true description: Agent name offering_uuid: type: string format: uuid readOnly: true description: Associated offering UUID offering_name: type: string readOnly: true description: Associated offering name version: type: string readOnly: true nullable: true description: Agent version last_restarted: type: string format: date-time readOnly: true description: When the agent was last restarted services: type: array items: $ref: '#/components/schemas/AgentServiceStatus' readOnly: true description: Services running within this agent event_subscriptions: type: array items: $ref: '#/components/schemas/AgentEventSubscriptionWithConnection' readOnly: true description: Event subscriptions with connection status queues: type: array items: $ref: '#/components/schemas/AgentQueueInfo' readOnly: true description: RabbitMQ queues for this agent's offering required: - event_subscriptions - last_restarted - name - offering_name - offering_uuid - queues - services - uuid - version AgentConnectionStatsResponse: type: object description: '' properties: agents: type: array items: $ref: '#/components/schemas/AgentConnectionInfo' readOnly: true description: List of agents with connection status summary: allOf: - $ref: '#/components/schemas/AgentConnectionSummary' readOnly: true description: Summary statistics required: - agents - summary AgentConnectionSummary: type: object description: '' properties: total_agents: type: integer readOnly: true description: Total number of registered agents connected_agents: type: integer readOnly: true description: Number of agents with active RMQ connections disconnected_agents: type: integer readOnly: true description: Number of agents without active connections total_queued_messages: type: integer readOnly: true description: Total messages across all agent queues required: - connected_agents - disconnected_agents - total_agents - total_queued_messages AgentEventSubscriptionCreateRequest: type: object properties: observable_object_type: allOf: - $ref: '#/components/schemas/ObservableObjectTypeEnum' description: The type of object to observe for events description: type: string minLength: 1 description: Optional description for the event subscription maxLength: 500 required: - observable_object_type description: '' AgentEventSubscriptionWithConnection: type: object description: '' properties: uuid: type: string format: uuid readOnly: true description: Event subscription UUID created: type: string format: date-time readOnly: true description: When the subscription was created observable_objects: readOnly: true description: List of observable object configurations rmq_connection: allOf: - $ref: '#/components/schemas/AgentRmqConnection' readOnly: true nullable: true description: RabbitMQ connection status for this subscription required: - created - observable_objects - rmq_connection - uuid AgentIdentity: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true offering: type: string format: uuid description: UUID of an offering with a site-agent compatible type. name: type: string maxLength: 150 version: type: string nullable: true maxLength: 100 dependencies: {} config_file_path: type: string nullable: true description: 'Example: ''/etc/waldur/agent.yaml''' maxLength: 150 config_file_content: type: string nullable: true last_restarted: type: string format: date-time title: Last restarted at created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true services: type: array items: $ref: '#/components/schemas/NestedAgentService' readOnly: true required: - created - modified - name - offering - services - url - uuid description: '' AgentIdentityRequest: type: object properties: offering: type: string format: uuid description: UUID of an offering with a site-agent compatible type. name: type: string minLength: 1 maxLength: 150 version: type: string nullable: true maxLength: 100 dependencies: {} config_file_path: type: string nullable: true description: 'Example: ''/etc/waldur/agent.yaml''' maxLength: 150 config_file_content: type: string nullable: true last_restarted: type: string format: date-time title: Last restarted at required: - name - offering description: '' AgentProcessor: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true service: type: string format: uuid service_name: type: string readOnly: true name: type: string maxLength: 150 last_run: type: string format: date-time nullable: true backend_type: type: string description: Type of the backend, for example SLURM. maxLength: 100 backend_version: type: string nullable: true maxLength: 100 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - backend_type - created - modified - name - service - service_name - url - uuid description: '' AgentProcessorCreateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 backend_type: type: string minLength: 1 description: Type of the backend, for example SLURM. maxLength: 100 backend_version: type: string nullable: true maxLength: 100 required: - backend_type - name description: '' AgentQueueInfo: type: object description: '' properties: name: type: string readOnly: true description: Queue name messages: type: integer readOnly: true description: Number of messages in queue consumers: type: integer readOnly: true description: Number of active consumers object_type: type: string readOnly: true nullable: true description: Parsed object type from queue name required: - consumers - messages - name - object_type AgentRmqConnection: type: object description: '' properties: connected: type: boolean readOnly: true description: Whether the agent has an active connection source_ip: type: string readOnly: true nullable: true description: Client IP address of active connection connected_at: type: string format: date-time readOnly: true nullable: true description: Connection establishment timestamp state: type: string readOnly: true nullable: true description: 'Connection state: ''running'', ''blocked'', ''blocking''' recv_oct: type: integer readOnly: true nullable: true description: Bytes received on this connection send_oct: type: integer readOnly: true nullable: true description: Bytes sent on this connection required: - connected - connected_at - recv_oct - send_oct - source_ip - state AgentService: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true identity: type: string format: uuid identity_name: type: string readOnly: true name: type: string maxLength: 150 mode: type: string nullable: true maxLength: 100 state: allOf: - $ref: '#/components/schemas/AgentServiceState' readOnly: true statistics: {} created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true processors: type: array items: $ref: '#/components/schemas/NestedAgentProcessor' readOnly: true required: - created - identity - identity_name - modified - name - processors - state - url - uuid description: '' AgentServiceCreateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 mode: type: string nullable: true maxLength: 100 required: - name description: '' AgentServiceState: enum: - Active - Idle - Error type: string description: '' AgentServiceStatisticsRequest: type: object properties: statistics: description: Statistics data to be stored for the service required: - statistics description: '' AgentServiceStatus: type: object description: '' properties: uuid: type: string format: uuid readOnly: true description: Service UUID name: type: string readOnly: true description: Service name state: type: string readOnly: true description: 'Service state: ACTIVE, IDLE, or ERROR' modified: type: string format: date-time readOnly: true description: Last modification timestamp required: - modified - name - state - uuid AgentStatsResponse: type: object properties: identities: type: object additionalProperties: {} description: Statistics about agent identities services: type: object additionalProperties: {} description: Statistics about agent services processors: type: object additionalProperties: {} description: Statistics about agent processors required: - identities - processors - services description: '' AgentTaskStatsResponse: type: object properties: active_tasks: type: array items: type: object additionalProperties: {} description: Currently running agent-related tasks scheduled_tasks: type: array items: type: object additionalProperties: {} description: Scheduled agent-related tasks reserved_tasks: type: array items: type: object additionalProperties: {} description: Reserved agent-related tasks error: type: string description: Error message if task inspection failed required: - active_tasks - reserved_tasks - scheduled_tasks description: '' AgentTypeEnum: enum: - Order processing - Usage reporting - Glauth sync - Resource sync - Event processing - unknown type: string description: '' AggregatedUsageTrend: type: object description: '' properties: period: type: string description: Period in YYYY-MM format year: type: integer description: Year month: type: integer description: Month (1-12) total_usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Total usage across all components resource_count: type: integer description: Number of distinct resources with usage component_count: type: integer description: Number of component usage records required: - component_count - month - period - resource_count - total_usage - year AgreementTypeEnum: enum: - TOS - PP type: string description: '' Allocation: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true node_limit: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 groupname: type: string nullable: true maxLength: 64 node_usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ readOnly: true is_active: type: boolean readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] AllocationRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri node_limit: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 groupname: type: string nullable: true maxLength: 64 required: - name - project - service_settings AllocationSetLimits: type: object properties: node_limit: type: integer minimum: -1 required: - node_limit description: '' AllocationSetLimitsRequest: type: object properties: node_limit: type: integer minimum: -1 required: - node_limit description: '' AllocationTimeEnum: enum: - on_decision - fixed_date type: string description: '' AllocationUserUsage: type: object properties: node_usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ month: type: integer maximum: 12 minimum: 1 year: type: integer maximum: 32767 minimum: 0 allocation: type: string format: uri user: type: string format: uri nullable: true username: type: string maxLength: 64 full_name: type: string readOnly: true required: - allocation - full_name - month - username - year description: '' AmountRangeEnum: enum: - none - under_5k - 5k_10k - 10k_50k - over_50k type: string description: '' Answer: type: object description: '' properties: uuid: type: string format: uuid readOnly: true question_description: type: string readOnly: true question_type: type: string readOnly: true question_required: type: boolean readOnly: true answer_data: description: Flexible answer storage for different question types requires_review: type: boolean readOnly: true description: Internal flag - this answer requires additional review user: type: integer readOnly: true user_name: type: string readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - created - modified - question_description - question_required - question_type - requires_review - user - user_name - uuid AnswerSubmitRequest: type: object description: '' properties: question_uuid: type: string format: uuid answer_data: nullable: true required: - answer_data - question_uuid AnswerSubmitResponse: type: object description: '' properties: detail: type: string completion: $ref: '#/components/schemas/ChecklistCompletion' required: - completion - detail ArrowBillingLine: type: object description: '' properties: vendor_name: type: string subscription_reference: type: string license_reference: type: string description: Arrow license reference. Used to fetch consumption data. offer_sku: type: string classification: type: string quantity: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true sell_price: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true buy_price: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true required: - buy_price - classification - license_reference - offer_sku - quantity - sell_price - subscription_reference - vendor_name ArrowBillingSync: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true customer_mapping: type: string format: uri readOnly: true customer_mapping_uuid: type: string format: uuid readOnly: true arrow_reference: type: string description: Arrow customer ID (e.g., 'XSP661245') readOnly: true waldur_customer_name: type: string readOnly: true statement_reference: type: string readOnly: true description: Arrow statement ID report_period: type: string readOnly: true description: Report period in YYYY-MM format arrow_state: type: string readOnly: true description: Arrow billing state (pending/validated) state: allOf: - $ref: '#/components/schemas/ArrowBillingSyncStateEnum' readOnly: true description: Waldur sync state state_display: type: string readOnly: true buy_total: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true description: Total buy amount sell_total: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true description: Total sell amount currency: type: string readOnly: true description: Currency code invoice_uuid: type: string format: uuid readOnly: true error_message: type: string readOnly: true description: Error message if sync failed synced_at: type: string format: date-time readOnly: true nullable: true description: When billing was last synced validated_at: type: string format: date-time readOnly: true nullable: true description: When Arrow validated the billing reconciled_at: type: string format: date-time readOnly: true nullable: true description: When reconciliation was applied items: type: array items: $ref: '#/components/schemas/ArrowBillingSyncItem' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - arrow_reference - arrow_state - buy_total - created - currency - customer_mapping - customer_mapping_uuid - error_message - invoice_uuid - items - modified - reconciled_at - report_period - sell_total - state - state_display - statement_reference - synced_at - url - uuid - validated_at - waldur_customer_name ArrowBillingSyncItem: type: object description: '' properties: uuid: type: string format: uuid readOnly: true arrow_line_reference: type: string readOnly: true description: Arrow line ID invoice_item_uuid: type: string format: uuid readOnly: true original_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true description: Original price for reconciliation tracking compensation_item_uuid: type: string format: uuid readOnly: true vendor_name: type: string readOnly: true description: Vendor name (e.g., Microsoft) subscription_reference: type: string readOnly: true description: Arrow subscription reference classification: type: string readOnly: true description: Classification (IAAS/SAAS) description: type: string readOnly: true description: Line item description quantity: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true description: Quantity created: type: string format: date-time readOnly: true required: - arrow_line_reference - classification - compensation_item_uuid - created - description - invoice_item_uuid - original_price - quantity - subscription_reference - uuid - vendor_name ArrowBillingSyncItemDetail: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true billing_sync: type: string format: uri readOnly: true billing_sync_uuid: type: string format: uuid readOnly: true report_period: type: string description: Report period in YYYY-MM format readOnly: true arrow_line_reference: type: string readOnly: true description: Arrow line ID invoice_item_uuid: type: string format: uuid readOnly: true original_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true description: Original price for reconciliation tracking compensation_item_uuid: type: string format: uuid readOnly: true has_compensation: type: boolean readOnly: true vendor_name: type: string readOnly: true description: Vendor name (e.g., Microsoft) subscription_reference: type: string readOnly: true description: Arrow subscription reference classification: type: string readOnly: true description: Classification (IAAS/SAAS) description: type: string readOnly: true description: Line item description quantity: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true description: Quantity created: type: string format: date-time readOnly: true required: - arrow_line_reference - billing_sync - billing_sync_uuid - classification - compensation_item_uuid - created - description - has_compensation - invoice_item_uuid - original_price - quantity - report_period - subscription_reference - url - uuid - vendor_name ArrowBillingSyncStateEnum: enum: - 1 - 2 - 3 - 4 type: integer description: '' ArrowConsumptionLine: type: object description: '' properties: license_reference: type: string description: Arrow license reference (same as resource backend_id). resource_name: type: string nullable: true resource_uuid: type: string nullable: true description: UUID of the Waldur resource. period: type: string sell_price: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true buy_price: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true error: type: string nullable: true description: Error message if fetch failed. required: - buy_price - license_reference - period - resource_name - resource_uuid - sell_price ArrowConsumptionRecord: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true resource: type: string format: uri readOnly: true resource_uuid: type: string format: uuid readOnly: true resource_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true license_reference: type: string readOnly: true description: Arrow license reference (e.g., 'XSP12345') billing_period: type: string format: date readOnly: true description: First day of the billing month consumed_sell: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true description: Consumed sell amount from Consumption API consumed_buy: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true description: Consumed buy amount from Consumption API final_sell: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true nullable: true description: Final sell amount from billing export final_buy: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true nullable: true description: Final buy amount from billing export invoice_item_uuid: type: string format: uuid readOnly: true compensation_item_uuid: type: string format: uuid readOnly: true last_sync_at: type: string format: date-time readOnly: true nullable: true description: When consumption was last synced from API finalized_at: type: string format: date-time readOnly: true nullable: true description: When billing export data arrived reconciled_at: type: string format: date-time readOnly: true nullable: true description: When reconciliation was applied is_finalized: type: boolean readOnly: true is_reconciled: type: boolean readOnly: true adjustment_amount: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ readOnly: true nullable: true raw_data: readOnly: true description: Raw consumption data for debugging created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - adjustment_amount - billing_period - compensation_item_uuid - consumed_buy - consumed_sell - created - customer_name - customer_uuid - final_buy - final_sell - finalized_at - invoice_item_uuid - is_finalized - is_reconciled - last_sync_at - license_reference - modified - project_name - project_uuid - raw_data - reconciled_at - resource - resource_name - resource_uuid - url - uuid ArrowCredentialsRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Arrow API base URL api_key: type: string minLength: 1 description: Arrow API Key required: - api_key - api_url ArrowCredentialsValidationResponse: type: object description: '' properties: valid: type: boolean message: type: string error: type: string partner_info: type: object additionalProperties: {} required: - valid ArrowCustomerDiscovery: type: object description: '' properties: reference: type: string companyName: type: string email: type: string city: type: string countryCode: type: string required: - companyName - reference ArrowCustomerMapping: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true settings: type: string format: uri settings_uuid: type: string format: uuid readOnly: true arrow_reference: type: string description: Arrow customer ID (e.g., 'XSP661245') maxLength: 255 arrow_company_name: type: string description: Arrow company name maxLength: 500 waldur_customer: type: string format: uri waldur_customer_uuid: type: string format: uuid readOnly: true waldur_customer_name: type: string readOnly: true is_active: type: boolean description: Whether this mapping is active created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - arrow_reference - created - modified - settings - settings_uuid - url - uuid - waldur_customer - waldur_customer_name - waldur_customer_uuid ArrowCustomerMappingCreate: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true settings: type: string format: uuid settings_uuid: type: string format: uuid readOnly: true arrow_reference: type: string description: Arrow customer ID (e.g., 'XSP661245') maxLength: 255 arrow_company_name: type: string description: Arrow company name maxLength: 500 waldur_customer: type: string format: uuid waldur_customer_uuid: type: string format: uuid readOnly: true waldur_customer_name: type: string readOnly: true is_active: type: boolean description: Whether this mapping is active created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - arrow_reference - created - modified - settings - settings_uuid - url - uuid - waldur_customer - waldur_customer_name - waldur_customer_uuid ArrowCustomerMappingCreateRequest: type: object description: '' properties: settings: type: string format: uuid arrow_reference: type: string minLength: 1 description: Arrow customer ID (e.g., 'XSP661245') maxLength: 255 arrow_company_name: type: string description: Arrow company name maxLength: 500 waldur_customer: type: string format: uuid is_active: type: boolean description: Whether this mapping is active required: - arrow_reference - settings - waldur_customer ArrowCustomerMappingRequest: type: object description: '' properties: settings: type: string format: uri arrow_reference: type: string minLength: 1 description: Arrow customer ID (e.g., 'XSP661245') maxLength: 255 arrow_company_name: type: string description: Arrow company name maxLength: 500 waldur_customer: type: string format: uri is_active: type: boolean description: Whether this mapping is active required: - arrow_reference - settings - waldur_customer ArrowLicense: type: object description: '' properties: license_reference: type: string description: Arrow license reference (e.g., XSP12345). Use this as resource backend_id. vendor_name: type: string offer_name: type: string offer_sku: type: string friendly_name: type: string required: - friendly_name - license_reference - offer_name - offer_sku - vendor_name ArrowSettings: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true api_url: type: string format: uri description: Arrow API base URL maxLength: 255 api_key: type: string description: Arrow API Key (leave empty on update to keep current) export_type_reference: type: string description: Billing export template reference maxLength: 255 classification_filter: type: string description: Filter for IaaS/SaaS classification maxLength: 50 is_active: type: boolean description: Whether this settings record is active sync_enabled: type: boolean description: Whether automatic billing sync is enabled partner_reference: type: string readOnly: true description: Arrow partner reference (discovered from API) partner_name: type: string readOnly: true description: Arrow partner name (discovered from API) invoice_price_source: allOf: - $ref: '#/components/schemas/InvoicePriceSourceEnum' description: 'Which price to use for invoice items: sell or buy' invoice_item_prefix: type: string description: Prefix for invoice item names (e.g. 'Arrow consumption') maxLength: 100 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - api_url - created - modified - partner_name - partner_reference - url - uuid ArrowSettingsCreate: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true api_url: type: string format: uri description: Arrow API base URL maxLength: 255 export_type_reference: type: string description: Billing export template reference maxLength: 255 classification_filter: type: string description: Filter for IaaS/SaaS classification maxLength: 50 is_active: type: boolean description: Whether this settings record is active sync_enabled: type: boolean description: Whether automatic billing sync is enabled partner_reference: type: string readOnly: true description: Arrow partner reference (discovered from API) partner_name: type: string readOnly: true description: Arrow partner name (discovered from API) invoice_price_source: allOf: - $ref: '#/components/schemas/InvoicePriceSourceEnum' description: 'Which price to use for invoice items: sell or buy' invoice_item_prefix: type: string description: Prefix for invoice item names (e.g. 'Arrow consumption') maxLength: 100 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - api_url - created - modified - partner_name - partner_reference - url - uuid ArrowSettingsCreateRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Arrow API base URL maxLength: 255 api_key: type: string writeOnly: true minLength: 1 description: Arrow API Key (required for creation) export_type_reference: type: string description: Billing export template reference maxLength: 255 classification_filter: type: string minLength: 1 description: Filter for IaaS/SaaS classification maxLength: 50 is_active: type: boolean description: Whether this settings record is active sync_enabled: type: boolean description: Whether automatic billing sync is enabled invoice_price_source: allOf: - $ref: '#/components/schemas/InvoicePriceSourceEnum' description: 'Which price to use for invoice items: sell or buy' invoice_item_prefix: type: string description: Prefix for invoice item names (e.g. 'Arrow consumption') maxLength: 100 required: - api_key - api_url ArrowSettingsRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Arrow API base URL maxLength: 255 api_key: type: string minLength: 1 description: Arrow API Key (leave empty on update to keep current) export_type_reference: type: string description: Billing export template reference maxLength: 255 classification_filter: type: string minLength: 1 description: Filter for IaaS/SaaS classification maxLength: 50 is_active: type: boolean description: Whether this settings record is active sync_enabled: type: boolean description: Whether automatic billing sync is enabled invoice_price_source: allOf: - $ref: '#/components/schemas/InvoicePriceSourceEnum' description: 'Which price to use for invoice items: sell or buy' invoice_item_prefix: type: string description: Prefix for invoice item names (e.g. 'Arrow consumption') maxLength: 100 required: - api_url ArrowVendorOfferingMapping: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true settings: type: string format: uri settings_uuid: type: string format: uuid readOnly: true arrow_vendor_name: type: string description: Arrow vendor name (e.g., 'Microsoft', 'Amazon Web Services') maxLength: 255 offering: type: string format: uuid offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true offering_type: type: string readOnly: true plan: type: string format: uuid nullable: true plan_uuid: type: string format: uuid readOnly: true plan_name: type: string readOnly: true is_active: type: boolean description: Whether this mapping is active created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - arrow_vendor_name - created - modified - offering - offering_name - offering_type - offering_uuid - plan_name - plan_uuid - settings - settings_uuid - url - uuid ArrowVendorOfferingMappingCreate: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true settings: type: string format: uuid settings_uuid: type: string format: uuid readOnly: true arrow_vendor_name: type: string description: Arrow vendor name (e.g., 'Microsoft', 'Amazon Web Services') maxLength: 255 offering: type: string format: uuid offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true offering_type: type: string readOnly: true plan: type: string format: uuid nullable: true plan_uuid: type: string format: uuid readOnly: true plan_name: type: string readOnly: true is_active: type: boolean description: Whether this mapping is active created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - arrow_vendor_name - created - modified - offering - offering_name - offering_type - offering_uuid - plan_name - plan_uuid - settings - settings_uuid - url - uuid ArrowVendorOfferingMappingCreateRequest: type: object description: '' properties: settings: type: string format: uuid arrow_vendor_name: type: string minLength: 1 description: Arrow vendor name (e.g., 'Microsoft', 'Amazon Web Services') maxLength: 255 offering: type: string format: uuid plan: type: string format: uuid nullable: true is_active: type: boolean description: Whether this mapping is active required: - arrow_vendor_name - offering - settings ArrowVendorOfferingMappingRequest: type: object description: '' properties: settings: type: string format: uri arrow_vendor_name: type: string minLength: 1 description: Arrow vendor name (e.g., 'Microsoft', 'Amazon Web Services') maxLength: 255 offering: type: string format: uuid plan: type: string format: uuid nullable: true is_active: type: boolean description: Whether this mapping is active required: - arrow_vendor_name - offering - settings AssignmentBatch: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true reviewer_pool_entry: type: string format: uri readOnly: true reviewer_pool_entry_uuid: type: string format: uuid readOnly: true reviewer_name: type: string nullable: true description: Get reviewer name from pool entry. readOnly: true reviewer_email: type: string nullable: true description: Get reviewer email from pool entry. readOnly: true reviewer_uuid: type: string nullable: true description: Get reviewer profile UUID if available. readOnly: true status: allOf: - $ref: '#/components/schemas/AssignmentBatchStatus' readOnly: true status_display: type: string readOnly: true sent_at: type: string format: date-time readOnly: true nullable: true description: When the invitation was sent to the reviewer. expires_at: type: string format: date-time readOnly: true nullable: true description: When the invitation expires. responded_at: type: string format: date-time readOnly: true nullable: true description: When the reviewer completed their response. source: allOf: - $ref: '#/components/schemas/AssignmentSource' readOnly: true source_display: type: string readOnly: true created_by: type: string format: uri readOnly: true nullable: true description: User who created/approved this batch. created_by_name: type: string readOnly: true manager_notes: type: string description: Optional notes from call manager to reviewer. items: type: array items: $ref: '#/components/schemas/AssignmentItem' readOnly: true items_count: type: integer description: Total count of items in batch. readOnly: true items_pending_count: type: integer description: Count of pending items. readOnly: true items_accepted_count: type: integer description: Count of accepted items. readOnly: true items_declined_count: type: integer description: Count of declined items. readOnly: true is_expired: type: boolean readOnly: true created: type: string format: date-time readOnly: true required: - call - call_name - call_uuid - created - created_by - created_by_name - expires_at - is_expired - items - items_accepted_count - items_count - items_declined_count - items_pending_count - responded_at - reviewer_email - reviewer_name - reviewer_pool_entry - reviewer_pool_entry_uuid - reviewer_uuid - sent_at - source - source_display - status - status_display - url - uuid AssignmentBatchList: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true reviewer_pool_entry: type: string format: uri readOnly: true reviewer_pool_entry_uuid: type: string format: uuid readOnly: true reviewer_name: type: string nullable: true description: Get reviewer name from pool entry. readOnly: true reviewer_email: type: string nullable: true description: Get reviewer email from pool entry. readOnly: true reviewer_uuid: type: string nullable: true description: Get reviewer profile UUID if available. readOnly: true status: allOf: - $ref: '#/components/schemas/AssignmentBatchStatus' readOnly: true status_display: type: string readOnly: true sent_at: type: string format: date-time readOnly: true nullable: true description: When the invitation was sent to the reviewer. expires_at: type: string format: date-time readOnly: true nullable: true description: When the invitation expires. responded_at: type: string format: date-time readOnly: true nullable: true description: When the reviewer completed their response. source: allOf: - $ref: '#/components/schemas/AssignmentSource' readOnly: true source_display: type: string readOnly: true created_by: type: string format: uri readOnly: true nullable: true description: User who created/approved this batch. created_by_name: type: string readOnly: true manager_notes: type: string description: Optional notes from call manager to reviewer. items_count: type: integer description: Total count of items in batch. readOnly: true items_pending_count: type: integer description: Count of pending items. readOnly: true items_accepted_count: type: integer description: Count of accepted items. readOnly: true items_declined_count: type: integer description: Count of declined items. readOnly: true is_expired: type: boolean readOnly: true created: type: string format: date-time readOnly: true required: - call - call_name - call_uuid - created - created_by - created_by_name - expires_at - is_expired - items_accepted_count - items_count - items_declined_count - items_pending_count - responded_at - reviewer_email - reviewer_name - reviewer_pool_entry - reviewer_pool_entry_uuid - reviewer_uuid - sent_at - source - source_display - status - status_display - url - uuid AssignmentBatchRequest: type: object description: '' properties: manager_notes: type: string description: Optional notes from call manager to reviewer. AssignmentBatchStatus: enum: - draft - sent - responded - expired - cancelled type: string description: '' AssignmentItem: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true batch: type: string format: uri readOnly: true proposal: type: string format: uri readOnly: true proposal_uuid: type: string format: uuid readOnly: true proposal_name: type: string readOnly: true proposal_slug: type: string readOnly: true status: allOf: - $ref: '#/components/schemas/AssignmentItemStatus' readOnly: true status_display: type: string readOnly: true affinity_score: type: number format: double readOnly: true nullable: true description: Affinity score used for assignment (0-1). has_coi: type: boolean readOnly: true description: Whether COI was detected during pre-check. coi_count: type: integer description: Count of COI records blocking this assignment. readOnly: true responded_at: type: string format: date-time readOnly: true nullable: true decline_reason: type: string description: Reason provided by reviewer for declining. review: type: string format: uri readOnly: true nullable: true description: The Review record created when this assignment was accepted. review_uuid: type: string format: uuid readOnly: true reassign_count: type: integer readOnly: true description: Number of times this proposal has been reassigned. created: type: string format: date-time readOnly: true required: - affinity_score - batch - coi_count - created - has_coi - proposal - proposal_name - proposal_slug - proposal_uuid - reassign_count - responded_at - review - review_uuid - status - status_display - url - uuid AssignmentItemDeclineRequest: type: object description: '' properties: reason: type: string description: Reason for declining this assignment AssignmentItemRequest: type: object description: '' properties: decline_reason: type: string description: Reason provided by reviewer for declining. AssignmentItemResponse: type: object description: '' properties: detail: type: string review_uuid: type: string format: uuid nullable: true description: UUID of created review (only on accept) required: - detail AssignmentItemStatus: enum: - pending - accepted - declined - coi_blocked - expired - reassigned type: string description: '' AssignmentSource: enum: - algorithm - manual type: string description: '' Association: type: object properties: uuid: type: string format: uuid readOnly: true username: type: string nullable: true maxLength: 64 groupname: type: string nullable: true maxLength: 64 useridentifier: type: string nullable: true maxLength: 128 allocation: type: string format: uri required: - allocation - uuid description: '' AtlassianCredentialsRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Atlassian API URL (e.g., https://your-domain.atlassian.net) auth_method: allOf: - $ref: '#/components/schemas/AuthMethodEnum' description: Authentication method to use email: type: string format: email token: type: string writeOnly: true personal_access_token: type: string writeOnly: true username: type: string password: type: string writeOnly: true verify_ssl: type: boolean default: true required: - api_url - auth_method AtlassianCustomFieldResponse: type: object description: '' properties: id: type: string name: type: string clause_names: type: array items: type: string field_type: type: string required: type: boolean default: false required: - id - name AtlassianPriorityResponse: type: object description: '' properties: id: type: string name: type: string description: type: string icon_url: type: string format: uri required: - id - name AtlassianProjectResponse: type: object description: '' properties: id: type: string key: type: string name: type: string description: type: string required: - id - key - name AtlassianRequestTypeResponse: type: object description: '' properties: id: type: string name: type: string description: type: string issue_type_id: type: string required: - id - name AtlassianSettingsPreviewRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 auth_method: $ref: '#/components/schemas/AuthMethodEnum' email: type: string format: email token: type: string writeOnly: true personal_access_token: type: string writeOnly: true username: type: string password: type: string writeOnly: true verify_ssl: type: boolean default: true project_id: type: string minLength: 1 issue_types: type: array items: type: string minLength: 1 support_type_mapping: type: object additionalProperties: type: string minLength: 1 description: Mapping from frontend types to backend request types reporter_field: type: string impact_field: type: string organisation_field: type: string project_field: type: string affected_resource_field: type: string caller_field: type: string template_field: type: string sla_field: type: string resolution_sla_field: type: string satisfaction_field: type: string request_feedback_field: type: string waldur_backend_id_field: type: string default_offering_issue_type: type: string description: Default issue type for marketplace request-based orders use_old_api: type: boolean default: false custom_field_mapping_enabled: type: boolean default: true required: - api_url - auth_method - project_id AtlassianSettingsSaveRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 auth_method: $ref: '#/components/schemas/AuthMethodEnum' email: type: string format: email token: type: string writeOnly: true personal_access_token: type: string writeOnly: true username: type: string password: type: string writeOnly: true verify_ssl: type: boolean default: true project_id: type: string minLength: 1 issue_types: type: array items: type: string minLength: 1 support_type_mapping: type: object additionalProperties: type: string minLength: 1 description: Mapping from frontend types to backend request types reporter_field: type: string impact_field: type: string organisation_field: type: string project_field: type: string affected_resource_field: type: string caller_field: type: string template_field: type: string sla_field: type: string resolution_sla_field: type: string satisfaction_field: type: string request_feedback_field: type: string waldur_backend_id_field: type: string default_offering_issue_type: type: string description: Default issue type for marketplace request-based orders use_old_api: type: boolean default: false custom_field_mapping_enabled: type: boolean default: true confirm_save: type: boolean description: Must be True to confirm saving settings required: - api_url - auth_method - confirm_save - project_id Attachment: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true issue: type: string format: uri issue_key: type: string readOnly: true created: type: string format: date-time readOnly: true file: type: string format: uri mime_type: type: string readOnly: true file_size: type: integer readOnly: true file_name: type: string readOnly: true backend_id: type: string readOnly: true destroy_is_available: type: boolean readOnly: true required: [] AttachmentRequest: type: object description: '' properties: issue: type: string format: uri file: type: string format: binary required: - file - issue AttributeSourceDetail: type: object description: '' properties: source: type: string timestamp: type: string age_days: type: number format: double is_stale: type: boolean required: - age_days - is_stale - source - timestamp AuthMethodEnum: enum: - api_token - personal_access_token - basic type: string description: '' AuthResult: type: object properties: uuid: type: string format: uuid readOnly: true token: type: string readOnly: true phone: type: string maxLength: 30 message: type: string readOnly: true description: This message will be shown to user. state: allOf: - $ref: '#/components/schemas/AuthResultStateEnum' readOnly: true error_message: type: string readOnly: true details: type: string readOnly: true description: Cancellation details. required: - details - error_message - message - phone - state - token - uuid description: '' AuthResultRequest: type: object properties: phone: type: string minLength: 1 maxLength: 30 required: - phone description: '' AuthResultStateEnum: enum: - Scheduled - Processing - OK - Canceled - Erred type: string description: '' AuthResultUUIDRequest: type: object properties: uuid: type: string format: uuid description: UUID of the authentication result. required: - uuid description: '' AuthToken: type: object properties: url: type: string format: uri readOnly: true created: type: string format: date-time readOnly: true user: type: string format: uri user_first_name: type: string readOnly: true user_last_name: type: string readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. readOnly: true user_token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. readOnly: true required: - created - url - user - user_first_name - user_is_active - user_last_name - user_token_lifetime - user_username description: '' AvailabilityZoneResponse: type: object description: '' properties: name: type: string state: type: string required: - name - state AvailableArrowCustomersResponse: type: object description: '' properties: settings_uuid: type: string format: uuid arrow_customers: type: array items: $ref: '#/components/schemas/ArrowCustomerDiscovery' waldur_customers: type: array items: $ref: '#/components/schemas/WaldurCustomerBrief' suggestions: type: array items: $ref: '#/components/schemas/CustomerMappingSuggestion' required: - arrow_customers - settings_uuid - suggestions - waldur_customers AvailableChecklist: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string readOnly: true description: type: string readOnly: true checklist_type: type: string readOnly: true questions_count: type: integer readOnly: true category_name: type: string readOnly: true nullable: true category_uuid: type: string format: uuid readOnly: true nullable: true required: - category_name - category_uuid - checklist_type - description - name - questions_count - uuid description: '' AvailableChecklistsResponse: type: object properties: customer_checklist: type: object additionalProperties: {} nullable: true intent_checklist: type: object additionalProperties: {} nullable: true required: - customer_checklist - intent_checklist description: '' AwsImage: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 region: allOf: - $ref: '#/components/schemas/AwsRegion' readOnly: true required: - name - region - url - uuid AwsInstance: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true start_time: type: string format: date-time readOnly: true nullable: true cores: type: integer readOnly: true description: Number of cores in a VM ram: type: integer readOnly: true description: Memory size in MiB disk: type: integer readOnly: true description: Disk size in MiB min_ram: type: integer readOnly: true description: Minimum memory size in MiB min_disk: type: integer readOnly: true description: Minimum disk size in MiB user_data: type: string description: Additional data that will be added to instance on provisioning external_ips: type: array items: type: string format: ipv4 readOnly: true internal_ips: type: array items: type: string format: ipv4 readOnly: true latitude: type: number format: double readOnly: true nullable: true longitude: type: number format: double readOnly: true nullable: true key_name: type: string readOnly: true key_fingerprint: type: string readOnly: true image_name: type: string readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] AwsInstanceRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri ssh_public_key: type: string format: uri writeOnly: true user_data: type: string description: Additional data that will be added to instance on provisioning region: type: string format: uri writeOnly: true image: type: string format: uri writeOnly: true size: type: string format: uri writeOnly: true required: - image - name - project - region - service_settings - size AwsInstanceResize: type: object description: '' properties: size: type: string format: uri required: - size AwsInstanceResizeRequest: type: object description: '' properties: size: type: string format: uri required: - size AwsRegion: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 required: - name - url - uuid AwsSize: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string readOnly: true cores: type: integer maximum: 32767 minimum: 0 description: Number of cores in a VM ram: type: integer maximum: 2147483647 minimum: 0 description: Memory size in MiB disk: type: integer maximum: 2147483647 minimum: 0 description: Disk size in MiB regions: type: array items: $ref: '#/components/schemas/AwsRegion' readOnly: true description: type: string readOnly: true required: - cores - description - disk - name - ram - regions - url - uuid AwsVolume: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true size: type: integer maximum: 2147483647 minimum: 0 description: Size of volume in gigabytes volume_type: $ref: '#/components/schemas/VolumeTypeEnum' device: type: string readOnly: true nullable: true instance: type: string format: uri readOnly: true nullable: true runtime_state: type: string readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] AwsVolumeAttach: type: object description: '' properties: instance: type: string format: uri device: type: string description: The device name for attachment. For example, use /dev/sd[f-p] for Linux instances. maxLength: 128 required: - device - instance AwsVolumeAttachRequest: type: object description: '' properties: instance: type: string format: uri device: type: string minLength: 1 description: The device name for attachment. For example, use /dev/sd[f-p] for Linux instances. maxLength: 128 required: - device - instance AwsVolumeRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri size: type: integer maximum: 2147483647 minimum: 0 description: Size of volume in gigabytes region: type: string format: uri writeOnly: true volume_type: $ref: '#/components/schemas/VolumeTypeEnum' required: - name - project - region - service_settings - size - volume_type AzureImage: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true publisher: type: string maxLength: 255 name: type: string maxLength: 150 sku: type: string maxLength: 255 version: type: string maxLength: 255 required: - name - publisher - sku - url - uuid - version AzureLocation: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true required: - name - url - uuid AzurePublicIP: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string pattern: ^[a-zA-Z][a-zA-Z0-9._-]+$ maxLength: 80 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true location: type: string format: uri resource_group: type: string format: uri marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] AzurePublicIPRequest: type: object description: '' properties: name: type: string minLength: 1 pattern: ^[a-zA-Z][a-zA-Z0-9._-]+$ maxLength: 80 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri location: type: string format: uri resource_group: type: string format: uri required: - location - name - project - resource_group - service_settings AzureResourceGroup: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string pattern: ^[-\w._()]+$ maxLength: 90 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true location: type: string format: uri marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] AzureSize: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 max_data_disk_count: type: integer maximum: 2147483647 minimum: 0 memory_in_mb: type: integer maximum: 2147483647 minimum: 0 number_of_cores: type: integer maximum: 2147483647 minimum: 0 os_disk_size_in_mb: type: integer maximum: 2147483647 minimum: 0 resource_disk_size_in_mb: type: integer maximum: 2147483647 minimum: 0 required: - max_data_disk_count - memory_in_mb - name - number_of_cores - os_disk_size_in_mb - resource_disk_size_in_mb - url - uuid AzureSqlDatabase: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true server: type: string format: uri charset: type: string nullable: true maxLength: 255 collation: type: string nullable: true maxLength: 255 resource_group_name: type: string readOnly: true location_name: type: string readOnly: true server_name: type: string readOnly: true server_uuid: type: string format: uuid readOnly: true server_marketplace_uuid: type: string format: uuid readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] AzureSqlDatabaseCreate: type: object properties: name: type: string maxLength: 150 description: type: string maxLength: 4096 required: - name description: '' AzureSqlDatabaseCreateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 required: - name description: '' AzureSqlDatabaseRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri server: type: string format: uri charset: type: string nullable: true maxLength: 255 collation: type: string nullable: true maxLength: 255 required: - name - project - server - service_settings AzureSqlServer: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string pattern: ^[a-z0-9][a-z0-9-]+[a-z0-9]$ maxLength: 80 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true resource_group: type: string format: uri readOnly: true username: type: string readOnly: true password: type: string readOnly: true storage_mb: type: integer maximum: 4194304 minimum: 5120 nullable: true fqdn: type: string readOnly: true nullable: true resource_group_name: type: string readOnly: true location_name: type: string readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] AzureSqlServerRequest: type: object description: '' properties: name: type: string minLength: 1 pattern: ^[a-z0-9][a-z0-9-]+[a-z0-9]$ maxLength: 80 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri location: type: string format: uri writeOnly: true storage_mb: type: integer maximum: 4194304 minimum: 5120 nullable: true required: - location - name - project - service_settings AzureVirtualMachine: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string pattern: ^[a-zA-Z][a-zA-Z0-9-]{0,13}[a-zA-Z0-9]$ maxLength: 15 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true start_time: type: string format: date-time readOnly: true nullable: true cores: type: integer readOnly: true description: Number of cores in a VM ram: type: integer readOnly: true description: Memory size in MiB disk: type: integer readOnly: true description: Disk size in MiB min_ram: type: integer readOnly: true description: Minimum memory size in MiB min_disk: type: integer readOnly: true description: Minimum disk size in MiB user_data: type: string description: Additional data that will be added to instance on provisioning maxLength: 87380 external_ips: type: array items: type: string format: ipv4 readOnly: true internal_ips: type: array items: type: string format: ipv4 readOnly: true latitude: type: number format: double readOnly: true nullable: true longitude: type: number format: double readOnly: true nullable: true key_name: type: string readOnly: true key_fingerprint: type: string readOnly: true image_name: type: string readOnly: true image: type: string format: uri size: type: string format: uri runtime_state: type: string readOnly: true resource_group: type: string format: uri readOnly: true username: type: string readOnly: true password: type: string readOnly: true resource_group_name: type: string readOnly: true location_name: type: string readOnly: true size_name: type: string readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] AzureVirtualMachineRequest: type: object description: '' properties: name: type: string minLength: 1 pattern: ^[a-zA-Z][a-zA-Z0-9-]{0,13}[a-zA-Z0-9]$ maxLength: 15 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri ssh_public_key: type: string format: uri writeOnly: true nullable: true user_data: type: string description: Additional data that will be added to instance on provisioning maxLength: 87380 image: type: string format: uri size: type: string format: uri location: type: string format: uri writeOnly: true required: - image - location - name - project - service_settings - size BackendIdRequest: type: object properties: backend_id: type: string maxLength: 255 description: '' BackendMetadata: type: object properties: state: type: string readOnly: true description: Backend resource state runtime_state: type: string readOnly: true description: Runtime state of the backend resource action: type: string readOnly: true description: Current action being performed instance_name: type: string readOnly: true nullable: true description: Name of the backend instance required: [] description: '' BackendResource: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true project: type: string format: uuid project_name: type: string readOnly: true project_url: type: string format: uri readOnly: true offering: type: string format: uuid offering_name: type: string readOnly: true offering_url: type: string format: uri readOnly: true backend_id: type: string maxLength: 255 backend_metadata: {} required: - created - modified - name - offering - offering_name - offering_url - project - project_name - project_url - url - uuid BackendResourceImportRequest: type: object properties: plan: type: string format: uuid description: '' BackendResourceReq: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true started: type: string format: date-time readOnly: true nullable: true description: Time when request processing started finished: type: string format: date-time readOnly: true nullable: true description: Time when request processing finished state: allOf: - $ref: '#/components/schemas/BackendResourceReqStateEnum' readOnly: true offering: type: string format: uuid offering_name: type: string readOnly: true offering_url: type: string format: uri readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true required: - created - error_message - error_traceback - finished - modified - offering - offering_name - offering_url - started - state - url - uuid BackendResourceReqRequest: type: object description: '' properties: offering: type: string format: uuid required: - offering BackendResourceReqStateEnum: enum: - Sent - Processing - Done - Erred type: string description: '' BackendResourceRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 project: type: string format: uuid offering: type: string format: uuid backend_id: type: string maxLength: 255 backend_metadata: {} required: - name - offering - project BackendResourceRequestSetErredRequest: type: object description: '' properties: error_message: type: string error_traceback: type: string BaseComponentUsage: type: object description: '' properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true description: type: string maxLength: 4096 type: type: string description: Unique internal name of the measured unit, for example floating_ip. readOnly: true name: type: string description: Display name for the measured unit, for example, Floating IP. readOnly: true measured_unit: type: string description: Unit of measurement, for example, GB. readOnly: true usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ date: type: string format: date-time recurring: type: boolean description: Reported value is reused every month until changed. required: - created - date - measured_unit - name - type - uuid BaseProviderPlan: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string article_code: type: string maxLength: 30 max_amount: type: integer maximum: 32767 minimum: 1 nullable: true description: Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. archived: type: boolean description: Forbids creation of new resources. is_active: type: boolean readOnly: true unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' init_price: type: number format: double readOnly: true switch_price: type: number format: double readOnly: true backend_id: type: string maxLength: 255 organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true components: type: array items: $ref: '#/components/schemas/NestedPlanComponent' readOnly: true prices: type: object additionalProperties: type: number format: double readOnly: true future_prices: type: object additionalProperties: type: number format: double readOnly: true quotas: type: object additionalProperties: type: number format: double readOnly: true resources_count: type: integer readOnly: true plan_type: type: string readOnly: true minimal_price: type: number format: double readOnly: true required: [] BaseProviderPlanRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string article_code: type: string maxLength: 30 max_amount: type: integer maximum: 32767 minimum: 1 nullable: true description: Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. archived: type: boolean description: Forbids creation of new resources. unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' backend_id: type: string maxLength: 255 required: - name BasePublicPlan: type: object description: '' properties: url: type: string format: uri uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string article_code: type: string maxLength: 30 max_amount: type: integer maximum: 32767 minimum: 1 nullable: true description: Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. archived: type: boolean description: Forbids creation of new resources. is_active: type: boolean readOnly: true unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' init_price: type: number format: double readOnly: true switch_price: type: number format: double readOnly: true backend_id: type: string maxLength: 255 organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true components: type: array items: $ref: '#/components/schemas/NestedPlanComponent' readOnly: true prices: type: object additionalProperties: type: number format: double readOnly: true future_prices: type: object additionalProperties: type: number format: double readOnly: true quotas: type: object additionalProperties: type: number format: double readOnly: true resources_count: type: integer readOnly: true plan_type: type: string readOnly: true minimal_price: type: number format: double readOnly: true required: [] BasePublicPlanRequest: type: object description: '' properties: url: type: string format: uri name: type: string minLength: 1 maxLength: 150 description: type: string article_code: type: string maxLength: 30 max_amount: type: integer maximum: 32767 minimum: 1 nullable: true description: Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. archived: type: boolean description: Forbids creation of new resources. unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' backend_id: type: string maxLength: 255 required: - name - url BasicCustomer: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 required: - name - uuid description: '' BasicUser: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 full_name: type: string readOnly: true native_name: type: string maxLength: 100 email: type: string format: email title: Email address maxLength: 320 image: type: string format: uri nullable: true required: [] description: '' BidEnum: enum: - eager - willing - not_willing - conflict type: string description: '' BillingTypeEnum: enum: - fixed - usage - limit - one - few type: string description: '' BillingUnit: enum: - month - quarter - half_month - day - hour - quantity type: string description: '' BlankEnum: enum: - '' description: '' Booking: type: object properties: created_by_full_name: type: string nullable: true readOnly: true start: type: string format: date-time end: type: string format: date-time required: - created_by_full_name - end - start description: '' BookingResource: type: object description: '' properties: offering: type: string format: uri offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true offering_description: type: string readOnly: true offering_image: type: string format: uri readOnly: true offering_thumbnail: type: string format: uri readOnly: true offering_type: type: string readOnly: true offering_shared: type: boolean description: Accessible to all customers. readOnly: true offering_billable: type: boolean description: Purchase and usage is invoiced. readOnly: true offering_plugin_options: description: Public data used by specific plugin, such as storage mode for OpenStack. readOnly: true provider_name: type: string readOnly: true provider_uuid: type: string format: uuid readOnly: true provider_slug: type: string readOnly: true category_title: type: string readOnly: true category_uuid: type: string format: uuid readOnly: true category_icon: type: string format: uri readOnly: true plan: type: string format: uri plan_unit: allOf: - $ref: '#/components/schemas/BillingUnit' readOnly: true nullable: true plan_name: type: string readOnly: true nullable: true plan_uuid: type: string format: uuid readOnly: true nullable: true plan_description: type: string readOnly: true nullable: true attributes: type: object additionalProperties: {} readOnly: true limits: type: object additionalProperties: type: integer readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true url: type: string format: uri readOnly: true scope: type: string readOnly: true description: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/ResourceState' readOnly: true resource_uuid: type: string format: uuid readOnly: true nullable: true backend_id: type: string readOnly: true effective_id: type: string readOnly: true resource_type: type: string nullable: true readOnly: true project: type: string format: uri readOnly: true project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true project_description: type: string readOnly: true project_end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, all project resource will be scheduled for termination. readOnly: true project_end_date_requested_by: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true offering_slug: type: string readOnly: true parent_offering_uuid: type: string format: uuid readOnly: true parent_offering_name: type: string readOnly: true parent_offering_slug: type: string readOnly: true offering_backend_id: type: string readOnly: true parent_uuid: type: string format: uuid readOnly: true parent_name: type: string readOnly: true backend_metadata: allOf: - $ref: '#/components/schemas/BackendMetadata' readOnly: true is_usage_based: type: boolean description: Returns True if the resource has usage-based components that track variable consumption. readOnly: true is_limit_based: type: boolean description: Returns True if the resource has limit-based components with user-adjustable quotas. readOnly: true name: type: string maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ current_usages: type: object additionalProperties: type: number format: double description: Dictionary mapping component types to their latest reported usage amounts. readOnly: true can_terminate: type: boolean readOnly: true report: type: array items: $ref: '#/components/schemas/ReportSection' readOnly: true end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, a resource will be scheduled for termination. end_date_requested_by: type: string format: uri readOnly: true nullable: true username: type: string nullable: true readOnly: true limit_usage: type: object additionalProperties: type: number format: double description: Dictionary mapping limit-based component types to their consumed usage. For monthly periods, maps from current_usages; for longer periods, aggregates historical usage. readOnly: true downscaled: type: boolean restrict_member_access: type: boolean readOnly: true paused: type: boolean endpoints: type: array items: $ref: '#/components/schemas/NestedEndpoint' readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true options: readOnly: true nullable: true available_actions: type: array items: type: string readOnly: true last_sync: type: string format: date-time readOnly: true order_in_progress: allOf: - $ref: '#/components/schemas/OrderDetails' readOnly: true nullable: true creation_order: allOf: - $ref: '#/components/schemas/OrderDetails' readOnly: true nullable: true service_settings_uuid: type: string format: uuid readOnly: true project_slug: type: string readOnly: true customer_slug: type: string readOnly: true user_requires_reconsent: type: boolean description: Check if the current user needs to re-consent for this resource's offering. readOnly: true renewal_date: type: object additionalProperties: type: string format: date nullable: true readOnly: true offering_state: allOf: - $ref: '#/components/schemas/OfferingState' readOnly: true offering_components: type: array items: $ref: '#/components/schemas/OfferingComponent' readOnly: true created_by: type: string format: uri readOnly: true created_by_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true created_by_full_name: type: string readOnly: true consumer_reviewed_by: type: string format: uri readOnly: true consumer_reviewed_by_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true consumer_reviewed_by_full_name: type: string readOnly: true slots: type: array items: $ref: '#/components/schemas/BookingSlot' readOnly: true required: [] BookingSlot: type: object properties: start: type: string format: date-time end: type: string format: date-time backend_id: type: string maxLength: 255 required: [] description: '' BroadcastMessage: type: object description: '' properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true subject: type: string maxLength: 1000 body: type: string query: {} author_full_name: type: string readOnly: true emails: readOnly: true state: allOf: - $ref: '#/components/schemas/BroadcastMessageStateEnum' readOnly: true send_at: type: string format: date nullable: true required: [] BroadcastMessageRequest: type: object description: '' properties: subject: type: string minLength: 1 maxLength: 1000 body: type: string minLength: 1 query: {} send_at: type: string format: date nullable: true required: - body - query - subject BroadcastMessageStateEnum: enum: - DRAFT - SCHEDULED - SENT type: string description: '' BulkSilenceResponse: type: object description: '' properties: status: type: string count: type: integer duration_days: type: integer nullable: true required: - count - status COIDetectionJob: type: object description: '' properties: url: type: string description: Return URL for the job detail endpoint. readOnly: true uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true job_type: allOf: - $ref: '#/components/schemas/COIDetectionJobJobTypeEnum' readOnly: true state: allOf: - $ref: '#/components/schemas/COIDetectionJobStateEnum' readOnly: true total_pairs: type: integer readOnly: true processed_pairs: type: integer readOnly: true progress_percentage: type: number format: double readOnly: true conflicts_found: type: integer readOnly: true started_at: type: string format: date-time readOnly: true nullable: true completed_at: type: string format: date-time readOnly: true nullable: true error_message: type: string readOnly: true created: type: string format: date-time readOnly: true required: - call - call_name - call_uuid - completed_at - conflicts_found - created - error_message - job_type - processed_pairs - progress_percentage - started_at - state - total_pairs - url - uuid COIDetectionJobJobTypeEnum: enum: - full_call - incremental - single_pair type: string description: '' COIDetectionJobStateEnum: enum: - pending - running - completed - failed - cancelled type: string description: '' COIDisclosureFinancialInterest: type: object description: '' properties: uuid: type: string format: uuid readOnly: true entity_name: type: string maxLength: 255 entity_type: $ref: '#/components/schemas/EntityTypeEnum' relationship_type: $ref: '#/components/schemas/RelationshipTypeEnum' amount_range: $ref: '#/components/schemas/AmountRangeEnum' is_ongoing: type: boolean description: type: string required: - amount_range - entity_name - entity_type - relationship_type - uuid COIDisclosureFinancialInterestRequest: type: object description: '' properties: entity_name: type: string minLength: 1 maxLength: 255 entity_type: $ref: '#/components/schemas/EntityTypeEnum' relationship_type: $ref: '#/components/schemas/RelationshipTypeEnum' amount_range: $ref: '#/components/schemas/AmountRangeEnum' is_ongoing: type: boolean description: type: string required: - amount_range - entity_name - entity_type - relationship_type COIDisclosureForm: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true reviewer: type: string format: uri readOnly: true reviewer_uuid: type: string format: uuid readOnly: true reviewer_name: type: string readOnly: true call: type: string format: uri nullable: true description: Null for general annual disclosure call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true certified: type: boolean certification_date: type: string format: date-time readOnly: true nullable: true certification_statement: type: string description: Legal text they agreed to has_financial_interests: type: boolean financial_interests: type: array items: $ref: '#/components/schemas/COIDisclosureFinancialInterest' readOnly: true has_personal_relationships: type: boolean personal_relationships: {} has_other_conflicts: type: boolean other_conflicts_description: type: string valid_until: type: string format: date description: Typically 1 year from certification is_current: type: boolean readOnly: true created: type: string format: date-time readOnly: true required: - call_name - call_uuid - certification_date - created - financial_interests - is_current - reviewer - reviewer_name - reviewer_uuid - url - uuid - valid_until COIDisclosureFormRequest: type: object description: '' properties: call: type: string format: uri nullable: true description: Null for general annual disclosure certified: type: boolean certification_statement: type: string description: Legal text they agreed to has_financial_interests: type: boolean has_personal_relationships: type: boolean personal_relationships: {} has_other_conflicts: type: boolean other_conflicts_description: type: string valid_until: type: string format: date description: Typically 1 year from certification required: - valid_until COISeverityLevel: enum: - real - apparent - potential type: string description: '' COIStatusUpdateRequest: type: object description: '' properties: status: $ref: '#/components/schemas/COIStatusUpdateStatusEnum' review_notes: type: string management_plan: type: string description: Required when status is 'waived' required: - status COIStatusUpdateStatusEnum: enum: - dismissed - waived - recused type: string description: '' CachePerformance: type: object description: '' properties: buffer_cache_hit_ratio: type: number format: double readOnly: true nullable: true description: Buffer cache hit ratio percentage (should be >99%) index_hit_ratio: type: number format: double readOnly: true nullable: true description: Index cache hit ratio percentage shared_buffers: type: string readOnly: true description: Configured shared_buffers setting effective_cache_size: type: string readOnly: true description: Configured effective_cache_size setting required: - buffer_cache_hit_ratio - effective_cache_size - index_hit_ratio - shared_buffers CallApplicantAttributeConfig: type: object description: '' properties: uuid: type: string format: uuid readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true expose_full_name: type: boolean expose_email: type: boolean expose_organization: type: boolean expose_affiliations: type: boolean expose_organization_type: type: boolean expose_organization_country: type: boolean expose_nationality: type: boolean expose_nationalities: type: boolean expose_country_of_residence: type: boolean expose_eduperson_assurance: type: boolean expose_identity_source: type: boolean reviewers_see_applicant_details: type: boolean description: If True, reviewers see applicant identity. If False, proposals are anonymized for reviewers. exposed_fields: type: array items: type: string description: Return list of currently exposed field names. readOnly: true is_default: type: boolean description: Return True if this is a default (unsaved) config. readOnly: true required: - call_name - call_uuid - exposed_fields - is_default - uuid CallApplicantAttributeConfigRequest: type: object description: '' properties: call: type: string format: uuid writeOnly: true expose_full_name: type: boolean expose_email: type: boolean expose_organization: type: boolean expose_affiliations: type: boolean expose_organization_type: type: boolean expose_organization_country: type: boolean expose_nationality: type: boolean expose_nationalities: type: boolean expose_country_of_residence: type: boolean expose_eduperson_assurance: type: boolean expose_identity_source: type: boolean reviewers_see_applicant_details: type: boolean description: If True, reviewers see applicant identity. If False, proposals are anonymized for reviewers. CallAssignmentConfiguration: type: object description: '' properties: uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true auto_reassign_on_decline: type: boolean description: Automatically assign next-best reviewer when someone declines. If False, manager must manually approve reassignments. max_auto_reassign_attempts: type: integer maximum: 2147483647 minimum: 0 description: Maximum automatic reassignment attempts before requiring manual intervention. assignment_expiration_days: type: integer maximum: 2147483647 minimum: 0 description: Days until assignment invitation expires if not responded to. send_reminder_before_expiry_days: type: integer maximum: 2147483647 minimum: 0 description: Days before expiry to send reminder notification. created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - call - call_name - call_uuid - created - modified - uuid CallAssignmentConfigurationRequest: type: object description: '' properties: auto_reassign_on_decline: type: boolean description: Automatically assign next-best reviewer when someone declines. If False, manager must manually approve reassignments. max_auto_reassign_attempts: type: integer maximum: 2147483647 minimum: 0 description: Maximum automatic reassignment attempts before requiring manual intervention. assignment_expiration_days: type: integer maximum: 2147483647 minimum: 0 description: Days until assignment invitation expires if not responded to. send_reminder_before_expiry_days: type: integer maximum: 2147483647 minimum: 0 description: Days before expiry to send reminder notification. CallAttachDocumentsRequest: type: object properties: documents: type: array items: type: string format: binary description: type: string minLength: 1 required: - documents description: '' CallCOIConfiguration: type: object description: '' properties: uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true coauthorship_lookback_years: type: integer maximum: 2147483647 minimum: 0 description: Years to look back for co-authorship detection coauthorship_threshold_papers: type: integer maximum: 2147483647 minimum: 0 description: Minimum shared papers to trigger COI institutional_lookback_years: type: integer maximum: 2147483647 minimum: 0 description: Years to look back for former institution detection include_same_department: type: boolean description: Detect same-department as COI include_same_institution: type: boolean description: Detect same-institution as COI recusal_required_types: type: array items: type: string description: COI types requiring automatic recusal management_allowed_types: type: array items: type: string description: COI types allowing management plan disclosure_only_types: type: array items: type: string description: COI types requiring disclosure only auto_detect_coauthorship: type: boolean description: Enable automated co-authorship detection auto_detect_institutional: type: boolean description: Enable automated institutional affiliation detection auto_detect_named_personnel: type: boolean description: Enable detection of reviewer named in proposals invitation_proposal_disclosure: allOf: - $ref: '#/components/schemas/InvitationProposalDisclosureEnum' description: Level of proposal information disclosed in reviewer invitations created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - call - call_name - call_uuid - created - modified - uuid CallComplianceOverview: type: object description: '' properties: checklist: type: object additionalProperties: {} nullable: true readOnly: true proposals: type: array items: {} readOnly: true required: - checklist - proposals CallComplianceReviewRequest: type: object description: '' properties: proposal_uuid: type: string format: uuid review_notes: type: string required: - proposal_uuid CallDetachDocumentsRequest: type: object properties: documents: type: array items: type: string format: uuid required: - documents description: '' CallDocument: type: object properties: uuid: type: string format: uuid readOnly: true file: type: string format: uri nullable: true description: Documentation for call for proposals. file_name: type: string readOnly: true file_size: type: integer readOnly: true description: type: string maxLength: 4096 created: type: string format: date-time readOnly: true required: [] description: '' CallDocumentRequest: type: object properties: file: type: string format: binary nullable: true description: Documentation for call for proposals. description: type: string maxLength: 4096 description: '' CallManagingOrganisation: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true description: type: string maxLength: 4096 customer: type: string format: uri customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_image: type: string format: uri readOnly: true customer_abbreviation: type: string readOnly: true customer_native_name: type: string readOnly: true customer_country: type: string readOnly: true image: type: string format: uri nullable: true required: - created - customer - customer_abbreviation - customer_country - customer_image - customer_name - customer_native_name - customer_uuid - url - uuid CallManagingOrganisationRequest: type: object description: '' properties: description: type: string maxLength: 4096 customer: type: string format: uri image: type: string format: binary nullable: true required: - customer CallManagingOrganisationStat: type: object properties: open_calls: type: integer readOnly: true active_rounds: type: integer readOnly: true accepted_proposals: type: integer readOnly: true pending_proposals: type: integer readOnly: true pending_review: type: integer readOnly: true rounds_closing_in_one_week: type: integer readOnly: true calls_closing_in_one_week: type: integer readOnly: true offering_requests_pending: type: integer readOnly: true required: - accepted_proposals - active_rounds - calls_closing_in_one_week - offering_requests_pending - open_calls - pending_proposals - pending_review - rounds_closing_in_one_week description: '' CallResourceTemplate: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string readOnly: true name: type: string maxLength: 255 description: type: string maxLength: 4096 attributes: {} limits: {} is_required: type: boolean description: If True, every proposal must include this resource type requested_offering: type: string format: uri requested_offering_name: type: string readOnly: true requested_offering_uuid: type: string format: uuid readOnly: true requested_offering_plan: allOf: - $ref: '#/components/schemas/BasePublicPlan' readOnly: true created_by: type: string format: uri readOnly: true nullable: true created_by_name: type: string readOnly: true created: type: string format: date-time readOnly: true required: [] CallResourceTemplateRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 255 description: type: string maxLength: 4096 attributes: {} limits: {} is_required: type: boolean description: If True, every proposal must include this resource type requested_offering: type: string format: uri required: - name - requested_offering CallReviewerPool: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true reviewer: type: string format: uri readOnly: true nullable: true reviewer_uuid: type: string nullable: true description: Get reviewer profile UUID if available. readOnly: true reviewer_name: type: string nullable: true description: Get reviewer name from profile or invited_user. readOnly: true reviewer_email: type: string nullable: true description: Get email from profile, invited_user, or invited_email. readOnly: true has_profile: type: boolean description: Check if reviewer has a profile. readOnly: true invited_email: type: string format: email readOnly: true description: Email address for direct invitations invited_user: type: string format: uri readOnly: true nullable: true description: Waldur user if email matches existing account invited_user_name: type: string readOnly: true invited_at: type: string format: date-time readOnly: true invitation_status: allOf: - $ref: '#/components/schemas/InvitationStatusEnum' readOnly: true invitation_status_display: type: string readOnly: true response_date: type: string format: date-time readOnly: true nullable: true decline_reason: type: string readOnly: true max_assignments: type: integer maximum: 2147483647 minimum: 0 current_assignments: type: integer readOnly: true expertise_match_score: type: number format: double nullable: true description: Calculated affinity to call topics (0-1) invited_by_name: type: string readOnly: true invitation_token: type: string readOnly: true invitation_expires_at: type: string format: date-time readOnly: true nullable: true created: type: string format: date-time readOnly: true coi_count: type: integer description: Count total COIs for this reviewer in this call. readOnly: true coi_by_severity: type: object additionalProperties: {} description: Count COIs by severity level. readOnly: true reviews_pending: type: integer description: |- Legacy field - always returns 0. Previously counted reviews in 'created' state, but that state has been removed. Reviews are now created directly in 'in_review' state. Kept for backwards compatibility with frontend. readOnly: true reviews_in_progress: type: integer description: Count reviews in 'in_review' state. readOnly: true reviews_completed: type: integer description: Count reviews in 'submitted' state. readOnly: true required: - call - call_name - call_uuid - coi_by_severity - coi_count - created - current_assignments - decline_reason - has_profile - invitation_expires_at - invitation_status - invitation_status_display - invitation_token - invited_at - invited_by_name - invited_email - invited_user - invited_user_name - response_date - reviewer - reviewer_email - reviewer_name - reviewer_uuid - reviews_completed - reviews_in_progress - reviews_pending - url - uuid CallReviewerPoolUpdate: type: object description: '' properties: max_assignments: type: integer maximum: 50 minimum: 1 description: Maximum number of proposals that can be assigned to this reviewer required: - max_assignments CallRound: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true slug: type: string maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ start_time: type: string format: date-time cutoff_time: type: string format: date-time call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true status: allOf: - $ref: '#/components/schemas/RoundStatus' readOnly: true required: - call_name - call_uuid - cutoff_time - start_time - status - url - uuid description: '' CallStates: enum: - draft - active - archived type: string description: '' Campaign: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 url: type: string format: uri readOnly: true start_date: type: string format: date description: Starting from this date, the campaign is active. end_date: type: string format: date description: The last day the campaign is active. coupon: type: string description: If coupon is empty, campaign is available to all users. maxLength: 255 discount_type: $ref: '#/components/schemas/DiscountTypeEnum' discount: type: integer maximum: 2147483647 minimum: -2147483648 stock: type: integer maximum: 2147483647 minimum: 0 nullable: true description: type: string maxLength: 4096 months: type: integer maximum: 2147483647 minimum: 0 description: How many months in a row should the related service (when activated) get special deal (0 for indefinitely until active) auto_apply: type: boolean state: type: string readOnly: true service_provider: type: string format: uri offerings: type: array items: $ref: '#/components/schemas/CampaignOffering' readOnly: true required_offerings: type: array items: type: string format: uuid required: - discount - discount_type - end_date - name - offerings - service_provider - start_date - state - url - uuid CampaignOffering: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 required: - name - uuid description: '' CampaignRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 start_date: type: string format: date description: Starting from this date, the campaign is active. end_date: type: string format: date description: The last day the campaign is active. coupon: type: string description: If coupon is empty, campaign is available to all users. maxLength: 255 discount_type: $ref: '#/components/schemas/DiscountTypeEnum' discount: type: integer maximum: 2147483647 minimum: -2147483648 stock: type: integer maximum: 2147483647 minimum: 0 nullable: true description: type: string maxLength: 4096 months: type: integer maximum: 2147483647 minimum: 0 description: How many months in a row should the related service (when activated) get special deal (0 for indefinitely until active) auto_apply: type: boolean service_provider: type: string format: uri offerings: type: array items: type: string format: uuid writeOnly: true writeOnly: true required_offerings: type: array items: type: string format: uuid required: - discount - discount_type - end_date - name - offerings - service_provider - start_date CancelRequestResponse: type: object properties: uuid: type: string description: UUID of the canceled permission request scope_name: type: string description: Name of the invitation scope scope_uuid: type: string description: UUID of the invitation scope required: - scope_name - scope_uuid - uuid description: '' CascadeConfig: type: object properties: steps: type: array items: $ref: '#/components/schemas/CascadeStep' required: - steps description: '' CascadeConfigRequest: type: object properties: steps: type: array items: $ref: '#/components/schemas/CascadeStepRequest' required: - steps description: '' CascadeStep: type: object properties: name: type: string label: type: string type: $ref: '#/components/schemas/CascadeStepTypeEnum' depends_on: type: string choices: {} choices_map: {} required: - label - name - type description: '' CascadeStepRequest: type: object properties: name: type: string minLength: 1 label: type: string minLength: 1 type: $ref: '#/components/schemas/CascadeStepTypeEnum' depends_on: type: string minLength: 1 choices: {} choices_map: {} required: - label - name - type description: '' CascadeStepTypeEnum: enum: - select_string - select_string_multi type: string description: '' CatalogSummary: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string description: Catalog name (e.g., EESSI, Spack) maxLength: 100 version: type: string description: Catalog version (e.g., 2023.06, 0.21.0) maxLength: 50 description: type: string required: [] CatalogSummaryRequest: type: object description: '' properties: name: type: string minLength: 1 description: Catalog name (e.g., EESSI, Spack) maxLength: 100 version: type: string minLength: 1 description: Catalog version (e.g., 2023.06, 0.21.0) maxLength: 50 description: type: string required: - name - version CatalogTypeEnum: enum: - binary_runtime - source_package - package_manager type: string description: '' CategoryColumn: type: object properties: uuid: type: string format: uuid readOnly: true index: type: integer maximum: 32767 minimum: 0 description: Index allows to reorder columns. title: type: string description: Title is rendered as column header. maxLength: 255 attribute: type: string description: Resource attribute is rendered as table cell. maxLength: 255 widget: nullable: true description: Widget field allows to customise table cell rendering. oneOf: - $ref: '#/components/schemas/WidgetEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' category: type: string format: uri required: - category - index - title - uuid description: '' CategoryColumnRequest: type: object properties: index: type: integer maximum: 32767 minimum: 0 description: Index allows to reorder columns. title: type: string minLength: 1 description: Title is rendered as column header. maxLength: 255 attribute: type: string description: Resource attribute is rendered as table cell. maxLength: 255 widget: nullable: true description: Widget field allows to customise table cell rendering. oneOf: - $ref: '#/components/schemas/WidgetEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' category: type: string format: uri required: - category - index - title description: '' CategoryComponent: type: object properties: type: type: string description: Unique internal name of the measured unit, for example floating_ip. pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 50 name: type: string description: Display name for the measured unit, for example, Floating IP. maxLength: 150 description: type: string maxLength: 4096 measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 required: [] description: '' CategoryComponentRequest: type: object properties: type: type: string minLength: 1 description: Unique internal name of the measured unit, for example floating_ip. pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 50 name: type: string minLength: 1 description: Display name for the measured unit, for example, Floating IP. maxLength: 150 description: type: string maxLength: 4096 measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 required: - name - type description: '' CategoryComponentUsage: type: object description: '' properties: name: type: string description: Display name for the measured unit, for example, Floating IP. readOnly: true type: type: string description: Unique internal name of the measured unit, for example floating_ip. readOnly: true measured_unit: type: string description: Unit of measurement, for example, GB. readOnly: true category_title: type: string readOnly: true category_uuid: type: string format: uuid readOnly: true date: type: string format: date reported_usage: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 nullable: true fixed_usage: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 nullable: true scope: type: string required: [] CategoryComponents: type: object properties: uuid: type: string format: uuid readOnly: true type: type: string description: Unique internal name of the measured unit, for example floating_ip. pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 50 name: type: string description: Display name for the measured unit, for example, Floating IP. maxLength: 150 description: type: string maxLength: 4096 measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 category: $ref: '#/components/schemas/CategorySerializerForForNestedFields' required: - category - name - type - uuid description: '' CategoryComponentsRequest: type: object properties: type: type: string minLength: 1 description: Unique internal name of the measured unit, for example floating_ip. pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 50 name: type: string minLength: 1 description: Display name for the measured unit, for example, Floating IP. maxLength: 150 description: type: string maxLength: 4096 measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 category: $ref: '#/components/schemas/CategorySerializerForForNestedFieldsRequest' required: - category - name - type description: '' CategoryEnum: enum: - view - approve - reject - extend - terminate - backup - migrate - contact - escalate - configure - repair - monitor type: string description: '' CategoryGroup: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true title: type: string maxLength: 255 description: type: string icon: type: string format: uri nullable: true required: [] CategoryGroupRequest: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true required: - title CategoryHelpArticle: type: object properties: title: type: string nullable: true maxLength: 255 url: type: string format: uri maxLength: 200 required: [] description: '' CategoryHelpArticleRequest: type: object properties: title: type: string nullable: true maxLength: 255 url: type: string format: uri minLength: 1 maxLength: 200 required: - url description: '' CategoryHelpArticles: type: object properties: title: type: string nullable: true maxLength: 255 url: type: string format: uri maxLength: 200 categories: type: array items: $ref: '#/components/schemas/CategorySerializerForForNestedFields' required: - categories - url description: '' CategoryHelpArticlesRequest: type: object properties: title: type: string nullable: true maxLength: 255 url: type: string format: uri minLength: 1 maxLength: 200 categories: type: array items: $ref: '#/components/schemas/CategorySerializerForForNestedFieldsRequest' required: - categories - url description: '' CategorySerializerForForNestedFields: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true title: type: string maxLength: 255 required: - title - url - uuid description: '' CategorySerializerForForNestedFieldsRequest: type: object properties: title: type: string minLength: 1 maxLength: 255 required: - title description: '' CeleryBroker: type: object description: '' properties: hostname: type: string readOnly: true description: Broker hostname userid: type: string readOnly: true description: Broker user ID virtual_host: type: string readOnly: true description: Virtual host port: type: integer readOnly: true description: Broker port insist: type: boolean readOnly: true ssl: type: boolean readOnly: true transport: type: string readOnly: true description: Transport protocol connect_timeout: type: integer readOnly: true description: Connection timeout in seconds transport_options: type: object additionalProperties: {} readOnly: true description: Additional transport options login_method: type: string readOnly: true description: Authentication method uri_prefix: type: string readOnly: true heartbeat: type: number format: double readOnly: true description: Heartbeat interval failover_strategy: type: string readOnly: true alternates: type: array items: type: string readOnly: true required: - alternates - connect_timeout - failover_strategy - heartbeat - hostname - insist - login_method - port - ssl - transport - transport_options - uri_prefix - userid - virtual_host CeleryScheduledTask: type: object description: '' properties: eta: type: string readOnly: true description: Estimated time of arrival for the task priority: type: integer readOnly: true description: Task priority level request: allOf: - $ref: '#/components/schemas/CeleryTask' readOnly: true description: Task request details required: - eta - priority - request CeleryStatsResponse: type: object description: '' properties: active: type: object additionalProperties: type: array items: $ref: '#/components/schemas/CeleryTask' readOnly: true nullable: true description: Currently executing tasks per worker. Keys are worker names, values are lists of active tasks. scheduled: type: object additionalProperties: type: array items: $ref: '#/components/schemas/CeleryScheduledTask' readOnly: true nullable: true description: Tasks scheduled for future execution per worker. Keys are worker names, values are lists of scheduled tasks with ETA. reserved: type: object additionalProperties: type: array items: $ref: '#/components/schemas/CeleryTask' readOnly: true nullable: true description: Tasks that have been received but not yet started per worker. Keys are worker names, values are lists of reserved tasks. revoked: type: object additionalProperties: type: array items: type: string readOnly: true nullable: true description: IDs of revoked (cancelled) tasks per worker. Keys are worker names, values are lists of task IDs. query_task: type: object additionalProperties: {} readOnly: true nullable: true description: Query results for specific tasks. May be null if no query was performed. stats: type: object additionalProperties: $ref: '#/components/schemas/CeleryWorkerStats' readOnly: true nullable: true description: Detailed statistics per worker including uptime, pool info, and resource usage. Keys are worker names. required: - active - query_task - reserved - revoked - scheduled - stats CeleryTask: type: object description: '' properties: id: type: string readOnly: true description: Unique task identifier name: type: string readOnly: true description: Name of the task args: type: array items: {} readOnly: true description: Positional arguments passed to the task kwargs: type: object additionalProperties: {} readOnly: true description: Keyword arguments passed to the task type: type: string readOnly: true description: Task type hostname: type: string readOnly: true description: Worker hostname executing the task time_start: type: number format: double readOnly: true description: Unix timestamp when task started acknowledged: type: boolean readOnly: true description: Whether task has been acknowledged delivery_info: type: object additionalProperties: {} readOnly: true description: Message delivery information worker_pid: type: integer readOnly: true description: Worker process ID required: - acknowledged - args - delivery_info - hostname - id - kwargs - name - time_start - type - worker_pid CeleryWorkerPool: type: object description: '' properties: max_concurrency: type: integer readOnly: true description: Maximum number of concurrent processes processes: type: array items: type: integer readOnly: true description: List of worker process IDs max_tasks_per_child: type: integer readOnly: true description: Maximum tasks per child process put_guarded_by_semaphore: type: boolean readOnly: true timeouts: type: array items: type: integer readOnly: true description: Timeout values writes: type: object additionalProperties: {} readOnly: true description: Write statistics required: - max_concurrency - max_tasks_per_child - processes - put_guarded_by_semaphore - timeouts - writes CeleryWorkerStats: type: object description: '' properties: broker: allOf: - $ref: '#/components/schemas/CeleryBroker' readOnly: true description: Broker connection information clock: type: string readOnly: true description: Logical clock value uptime: type: number format: double readOnly: true description: Worker uptime in seconds pid: type: integer readOnly: true description: Worker process ID pool: allOf: - $ref: '#/components/schemas/CeleryWorkerPool' readOnly: true description: Worker pool statistics prefetch_count: type: integer readOnly: true description: Number of tasks prefetched rusage: type: object additionalProperties: {} readOnly: true description: Resource usage statistics total: type: object additionalProperties: {} readOnly: true description: Total task counts by type required: - broker - clock - pid - pool - prefetch_count - rusage - total - uptime ChatRequestModeEnum: enum: - reload - edit type: string description: '' ChatRequestRequest: type: object properties: input: type: string minLength: 1 description: User input text for the chat model. maxLength: 50000 thread_uuid: type: string format: uuid nullable: true description: Existing thread UUID. If omitted, a new thread is created. update_thread_name: type: string format: uuid nullable: true description: Thread UUID whose name should be set to the assistant's response. Skips message persistence for this call. mode: nullable: true description: '''reload'': replace the last assistant response. ''edit'': edit a user message and re-stream. Omit for normal new-message behavior.' oneOf: - $ref: '#/components/schemas/ChatRequestModeEnum' - $ref: '#/components/schemas/NullEnum' edit_message_uuid: type: string format: uuid nullable: true description: UUID of the user message to edit. Required when mode='edit'. required: - input description: '' ChatResponse: type: object description: '' properties: k: type: string description: Component Alias (e.g. 'markdown', 'code', 'table'). c: type: string description: Content payload. t: type: string description: Tag or language for dynamic blocks. e: type: string description: Error message. h: type: array items: {} description: Table headers. r: type: array items: {} description: Table rows. n: type: integer description: Total row count. m: type: object additionalProperties: {} description: System metadata. ChatSession: type: object description: '' properties: uuid: type: string format: uuid readOnly: true user: type: string format: uuid readOnly: true user_username: type: string readOnly: true user_full_name: type: string readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: [] CheckUniqueBackendIDRequest: type: object properties: backend_id: type: string minLength: 1 description: Backend identifier to check maxLength: 255 check_all_offerings: type: boolean default: false description: Check across all offerings use_offering_rules: type: boolean default: false description: Apply the offering's backend_id_rules for format and uniqueness validation required: - backend_id description: '' CheckUniqueBackendIDResponse: type: object properties: is_unique: type: boolean description: Whether the backend ID is unique is_valid_format: type: boolean nullable: true description: Whether the backend ID matches the offering's format regex (null if no rules configured) errors: type: array items: type: string description: List of validation error messages required: - is_unique description: '' Checklist: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 checklist_type: allOf: - $ref: '#/components/schemas/ChecklistTypeEnum' description: Type of compliance this checklist addresses questions_count: type: integer readOnly: true required: - name - questions_count - url - uuid ChecklistCompletion: type: object description: '' properties: uuid: type: string format: uuid readOnly: true is_completed: type: boolean readOnly: true description: Whether all required questions have been answered completion_percentage: type: number format: double readOnly: true unanswered_required_questions: type: array items: {} readOnly: true checklist_name: type: string readOnly: true checklist_description: type: string readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - checklist_description - checklist_name - completion_percentage - created - is_completed - modified - unanswered_required_questions - uuid ChecklistCompletionReviewer: type: object description: '' properties: uuid: type: string format: uuid readOnly: true is_completed: type: boolean readOnly: true description: Whether all required questions have been answered completion_percentage: type: number format: double readOnly: true unanswered_required_questions: type: array items: {} readOnly: true checklist_name: type: string readOnly: true checklist_description: type: string readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true requires_review: type: boolean readOnly: true description: Whether any answers triggered review requirements reviewed_by: type: integer nullable: true description: User who reviewed the checklist completion reviewed_by_name: type: string readOnly: true reviewed_at: type: string format: date-time nullable: true review_notes: type: string description: Notes from the reviewer review_trigger_summary: type: array items: {} readOnly: true required: - checklist_description - checklist_name - completion_percentage - created - is_completed - modified - requires_review - review_trigger_summary - reviewed_by_name - unanswered_required_questions - uuid ChecklistInfo: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string readOnly: true checklist_type: type: string readOnly: true required: - checklist_type - name - uuid ChecklistOperators: enum: - equals - not_equals - contains - in - not_in type: string description: '' ChecklistRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 checklist_type: allOf: - $ref: '#/components/schemas/ChecklistTypeEnum' description: Type of compliance this checklist addresses required: - name ChecklistResponse: type: object description: '' properties: checklist: type: object additionalProperties: {} readOnly: true completion: $ref: '#/components/schemas/ChecklistCompletion' questions: type: array items: $ref: '#/components/schemas/QuestionWithAnswer' required: - checklist - completion - questions ChecklistReviewerResponse: type: object description: '' properties: checklist: type: object additionalProperties: {} readOnly: true completion: $ref: '#/components/schemas/ChecklistCompletionReviewer' questions: type: array items: $ref: '#/components/schemas/QuestionWithAnswerReviewer' required: - checklist - completion - questions ChecklistTemplate: type: object description: '' properties: checklist: type: object additionalProperties: {} readOnly: true questions: type: array items: $ref: '#/components/schemas/Question' initial_visible_questions: type: array items: $ref: '#/components/schemas/Question' required: - checklist - initial_visible_questions - questions ChecklistTypeEnum: enum: - project_compliance - proposal_compliance - offering_compliance - project_metadata - onboarding_customer - onboarding_intent type: string description: '' CircuitBreakerConfig: type: object description: '' properties: failure_threshold: type: integer readOnly: true description: Number of failures before opening circuit recovery_timeout: type: integer readOnly: true description: Seconds to wait before attempting recovery success_threshold: type: integer readOnly: true description: Successful calls needed in half-open state to close required: - failure_threshold - recovery_timeout - success_threshold CircuitBreakerReset: type: object description: '' properties: status: type: string readOnly: true description: Operation status state: type: string readOnly: true description: New circuit breaker state after reset required: - state - status CircuitBreakerStateChange: type: object description: '' properties: timestamp: type: number format: double readOnly: true description: Unix timestamp of state change from_state: type: string readOnly: true nullable: true description: Previous state to_state: type: string readOnly: true description: New state reason: type: string readOnly: true description: Reason for state change required: - from_state - reason - timestamp - to_state CircuitBreakerStatus: type: object description: '' properties: state: type: string readOnly: true description: 'Current state: closed, open, or half_open' failure_count: type: integer readOnly: true description: Number of consecutive failures success_count: type: integer readOnly: true description: Successful calls since last state change last_failure_time: type: number format: double readOnly: true nullable: true description: Unix timestamp of last failure last_state_change: type: number format: double readOnly: true nullable: true description: Unix timestamp of last state change config: allOf: - $ref: '#/components/schemas/CircuitBreakerConfig' readOnly: true description: Circuit breaker configuration state_history: type: array items: $ref: '#/components/schemas/CircuitBreakerStateChange' readOnly: true description: Recent state transitions (last 50) required: - config - failure_count - last_failure_time - last_state_change - state - state_history - success_count CleanupConsumptionRequestRequest: type: object description: '' properties: period_from: type: string minLength: 1 description: YYYY-MM format period_to: type: string minLength: 1 description: YYYY-MM format resource_uuid: type: string format: uuid only_finalized: type: boolean default: false only_unfinalized: type: boolean default: false dry_run: type: boolean default: true CleanupConsumptionResponse: type: object description: '' properties: dry_run: type: boolean records_to_delete: type: integer records_deleted: type: integer compensation_items_affected: type: integer invoice_items_affected: type: integer required: - compensation_items_affected - dry_run - invoice_items_affected - records_deleted - records_to_delete CleanupRequestRequest: type: object properties: dry_run: type: boolean default: true description: If true, only return what would be deleted without actually deleting older_than_hours: type: integer minimum: 1 default: 24 description: Delete entries older than this many hours description: '' CleanupResponse: type: object properties: deleted_count: type: integer description: Number of items deleted (or would be deleted in dry run) dry_run: type: boolean description: Whether this was a dry run items: type: array items: type: object additionalProperties: {} description: List of deleted (or to-be-deleted) items required: - deleted_count - dry_run - items description: '' ClusterSecurityGroup: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string readOnly: true description: type: string readOnly: true rules: type: array items: $ref: '#/components/schemas/RancherClusterSecurityGroupRule' required: - description - name - rules - uuid description: '' ClusterSecurityGroupRequest: type: object properties: rules: type: array items: $ref: '#/components/schemas/RancherClusterSecurityGroupRuleRequest' required: - rules description: '' CoiTypeEnum: enum: - INST_SAME - FIN_DIRECT - REL_FAMILY - ROLE_NAMED - COLLAB_ACTIVE - REL_MENTOR - REL_SUPERVISOR - COAUTH_RECENT - INST_DEPT - INST_FORMER - ROLE_CONF - COLLAB_GRANT - REL_EDITORIAL - COMPET - COAUTH_OLD - INST_CONSORT - CONF_ATTEND - SOC_MEMBER type: string description: '' Comment: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true issue: type: string format: uri readOnly: true issue_key: type: string readOnly: true description: type: string is_public: type: boolean author_name: type: string readOnly: true author_uuid: type: string format: uuid readOnly: true author_user: type: string format: uri readOnly: true author_email: type: string format: email title: Email address readOnly: true backend_id: type: string readOnly: true nullable: true remote_id: type: string nullable: true maxLength: 255 created: type: string format: date-time readOnly: true update_is_available: type: boolean readOnly: true destroy_is_available: type: boolean readOnly: true required: - author_email - author_name - author_user - author_uuid - backend_id - created - description - destroy_is_available - issue - issue_key - update_is_available - url - uuid CommentRequest: type: object description: '' properties: description: type: string minLength: 1 is_public: type: boolean required: - description ComplianceOverview: type: object description: '' properties: total_projects: type: integer readOnly: true projects_with_completions: type: integer readOnly: true fully_completed_projects: type: integer readOnly: true projects_requiring_review: type: integer readOnly: true average_completion_percentage: type: number format: double readOnly: true required: - average_completion_percentage - fully_completed_projects - projects_requiring_review - projects_with_completions - total_projects ComponentMultiplierConfig: type: object properties: component_type: type: string factor: type: integer minimum: 1 min_limit: type: integer minimum: 0 max_limit: type: integer minimum: 0 required: - component_type - factor description: '' ComponentMultiplierConfigRequest: type: object properties: component_type: type: string minLength: 1 factor: type: integer minimum: 1 min_limit: type: integer minimum: 0 max_limit: type: integer minimum: 0 required: - component_type - factor description: '' ComponentStats: type: object properties: type: type: string readOnly: true name: type: string readOnly: true description: type: string readOnly: true measured_unit: type: string readOnly: true billing_type: type: string readOnly: true usage: type: integer readOnly: true limit_usage: type: integer readOnly: true limit: type: integer readOnly: true offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true required: - billing_type - description - limit - limit_usage - measured_unit - name - offering_name - offering_uuid - type - usage description: '' ComponentUsage: type: object description: '' properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true description: type: string maxLength: 4096 type: type: string description: Unique internal name of the measured unit, for example floating_ip. readOnly: true name: type: string description: Display name for the measured unit, for example, Floating IP. readOnly: true measured_unit: type: string description: Unit of measurement, for example, GB. readOnly: true usage: type: integer readOnly: true date: type: string format: date-time recurring: type: boolean description: Reported value is reused every month until changed. resource_name: type: string readOnly: true resource_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true project_uuid: type: string readOnly: true customer_name: type: string readOnly: true customer_uuid: type: string readOnly: true billing_period: type: string format: date modified_by: type: integer nullable: true required: [] ComponentUsageCreateRequest: type: object properties: usages: type: array items: $ref: '#/components/schemas/ComponentUsageItemRequest' description: List of component usage items to report plan_period: type: string format: uuid description: UUID of the specific resource plan period for usage reporting resource: type: string format: uuid description: UUID of the resource for usage reporting (required if plan_period not provided) date: type: string format: date-time description: Date for usage reporting (staff and service providers for limit-based components). If not provided, current date is used. required: - usages description: '' ComponentUsageItemRequest: type: object properties: type: type: string minLength: 1 description: Type of the component amount: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Usage amount description: type: string description: Optional description of usage recurring: type: boolean default: false description: Whether this usage is recurring required: - amount - type description: '' ComponentUsagesPerMonthStats: type: object properties: usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Total usage amount offering_uuid: type: string format: uuid description: UUID of the offering component_type: type: string description: Type of the component offering_country: type: string readOnly: true description: Country of the offering organization_group_name: type: string readOnly: true description: Name of the organization group organization_group_uuid: type: string readOnly: true description: UUID of the organization group month: type: integer description: Month of the billing period year: type: integer description: Year of the billing period required: - component_type - month - offering_country - offering_uuid - organization_group_name - organization_group_uuid - usage - year description: '' ComponentUsagesPerProject: type: object properties: project_uuid: type: string format: uuid description: UUID of the project component_type: type: string description: Type of the component usage: type: integer readOnly: true description: Total usage for the component required: - component_type - project_uuid - usage description: '' ComponentUsagesStats: type: object properties: usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Total usage amount offering_uuid: type: string format: uuid description: UUID of the offering component_type: type: string description: Type of the component offering_country: type: string readOnly: true description: Country of the offering organization_group_name: type: string readOnly: true description: Name of the organization group organization_group_uuid: type: string readOnly: true description: UUID of the organization group required: - component_type - offering_country - offering_uuid - organization_group_name - organization_group_uuid - usage description: '' ComponentUserUsage: type: object description: '' properties: uuid: type: string format: uuid readOnly: true user: type: string format: uri username: type: string maxLength: 100 component_usage: type: string format: uri usage: type: integer readOnly: true measured_unit: type: string description: Unit of measurement, for example, GB. readOnly: true description: type: string maxLength: 4096 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string maxLength: 255 resource_name: type: string readOnly: true resource_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true component_type: type: string description: Unique internal name of the measured unit, for example floating_ip. readOnly: true date: type: string format: date-time readOnly: true billing_period: type: string format: date readOnly: true required: [] ComponentUserUsageBulkCreateRequest: type: object properties: usages: type: array items: $ref: '#/components/schemas/ComponentUserUsageCreateRequest' required: - usages description: '' ComponentUserUsageCreateRequest: type: object properties: usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ username: type: string minLength: 1 maxLength: 100 user: type: string format: uri date: type: string format: date-time description: Date for usage reporting (staff and service providers for limit-based components). If not provided, current date is used. required: - username description: '' ComponentUserUsageLimit: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true resource: type: string format: uri component: type: string format: uuid component_type: type: string description: Unique internal name of the measured unit, for example floating_ip. readOnly: true user: type: string format: uri limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ required: - component - component_type - resource - url - user - uuid description: '' ComponentUserUsageLimitRequest: type: object properties: resource: type: string format: uri component: type: string format: uuid user: type: string format: uri limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ required: - component - resource - user description: '' ComponentsUsageStats: type: object properties: components: type: array items: $ref: '#/components/schemas/ComponentStats' readOnly: true required: - components description: '' ComputeAffinitiesResponse: type: object description: '' properties: computed_count: type: integer message: type: string required: - computed_count - message ConfirmEmailRequestRequest: type: object properties: code: type: string minLength: 1 required: - code description: '' ConflictOfInterest: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true reviewer: type: string format: uri readOnly: true reviewer_uuid: type: string format: uuid readOnly: true reviewer_name: type: string readOnly: true proposal: type: string format: uri readOnly: true nullable: true proposal_uuid: type: string format: uuid readOnly: true proposal_name: type: string readOnly: true round_uuid: type: string format: uuid readOnly: true round_name: type: string readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true coi_type: allOf: - $ref: '#/components/schemas/CoiTypeEnum' readOnly: true coi_type_display: type: string readOnly: true severity: allOf: - $ref: '#/components/schemas/COISeverityLevel' readOnly: true severity_display: type: string readOnly: true detection_method: allOf: - $ref: '#/components/schemas/DetectionMethodEnum' readOnly: true detected_at: type: string format: date-time readOnly: true evidence_description: type: string readOnly: true evidence_data: readOnly: true description: 'Structured evidence: {"papers": [...], "affiliation_overlap": {...}}' status: $ref: '#/components/schemas/ConflictOfInterestStatusEnum' status_display: type: string readOnly: true reviewed_by: type: string format: uri readOnly: true nullable: true reviewed_by_name: type: string readOnly: true reviewed_at: type: string format: date-time readOnly: true nullable: true review_notes: type: string management_plan: type: string description: If waived, how is it managed conflicting_user: type: string format: uri readOnly: true nullable: true description: Specific person causing conflict conflicting_user_name: type: string readOnly: true conflicting_organization: type: string format: uri readOnly: true nullable: true conflicting_organization_name: type: string readOnly: true created: type: string format: date-time readOnly: true required: - call - call_name - call_uuid - coi_type - coi_type_display - conflicting_organization - conflicting_organization_name - conflicting_user - conflicting_user_name - created - detected_at - detection_method - evidence_data - evidence_description - proposal - proposal_name - proposal_uuid - reviewed_at - reviewed_by - reviewed_by_name - reviewer - reviewer_name - reviewer_uuid - round_name - round_uuid - severity - severity_display - status_display - url - uuid ConflictOfInterestRequest: type: object description: '' properties: status: $ref: '#/components/schemas/ConflictOfInterestStatusEnum' review_notes: type: string management_plan: type: string description: If waived, how is it managed ConflictOfInterestStatusEnum: enum: - pending - dismissed - waived - recused type: string description: '' ConflictSummaryResponse: type: object description: '' properties: total: type: integer by_status: type: object additionalProperties: type: integer by_severity: type: object additionalProperties: type: integer by_type: type: object additionalProperties: type: integer required: - by_severity - by_status - by_type - total ConnectionStats: type: object description: '' properties: active: type: integer readOnly: true description: Number of active connections idle: type: integer readOnly: true description: Number of idle connections idle_in_transaction: type: integer readOnly: true description: Number of connections idle in transaction waiting: type: integer readOnly: true description: Number of connections waiting for a lock max_connections: type: integer readOnly: true description: Maximum allowed connections utilization_percent: type: number format: double readOnly: true description: Percentage of max connections in use required: - active - idle - idle_in_transaction - max_connections - utilization_percent - waiting ConsoleUrl: type: object properties: url: type: string format: uri readOnly: true required: - url description: '' ConstanceSettings: type: object properties: SITE_NAME: type: string SITE_DESCRIPTION: type: string HOMEPORT_URL: type: string RANCHER_USERNAME_INPUT_LABEL: type: string DISCLAIMER_AREA_TEXT: type: string SITE_ADDRESS: type: string SITE_EMAIL: type: string SITE_PHONE: type: string CURRENCY_NAME: type: string THUMBNAIL_SIZE: type: string ANONYMOUS_USER_CAN_VIEW_OFFERINGS: type: boolean ANONYMOUS_USER_CAN_VIEW_PLANS: type: boolean RESTRICTED_OFFERING_VISIBILITY_MODE: $ref: '#/components/schemas/RESTRICTEDOFFERINGVISIBILITYMODEEnum' ALLOW_SERVICE_PROVIDER_OFFERING_MANAGEMENT: type: boolean NOTIFY_STAFF_ABOUT_APPROVALS: type: boolean NOTIFY_ABOUT_RESOURCE_CHANGE: type: boolean DISABLE_SENDING_NOTIFICATIONS_ABOUT_RESOURCE_UPDATE: type: boolean MARKETPLACE_LANDING_PAGE: type: string ENABLE_STALE_RESOURCE_NOTIFICATIONS: type: boolean TELEMETRY_URL: type: string TELEMETRY_VERSION: type: integer SCRIPT_RUN_MODE: $ref: '#/components/schemas/SCRIPTRUNMODEEnum' DOCKER_CLIENT: type: string DOCKER_RUN_OPTIONS: type: string DOCKER_SCRIPT_DIR: type: string DOCKER_REMOVE_CONTAINER: type: boolean DOCKER_IMAGES: type: string DOCKER_VOLUME_NAME: type: string K8S_NAMESPACE: type: string K8S_CONFIG_PATH: type: string K8S_JOB_TIMEOUT: type: integer ENABLE_STRICT_CHECK_ACCEPTING_INVITATION: type: boolean INVITATION_DISABLE_MULTIPLE_ROLES: type: boolean DEFAULT_IDP: oneOf: - $ref: '#/components/schemas/DEFAULTIDPEnum' - $ref: '#/components/schemas/BlankEnum' DOCS_URL: type: string format: uri SHORT_PAGE_TITLE: type: string FULL_PAGE_TITLE: type: string PROJECT_END_DATE_MANDATORY: type: boolean ENABLE_ORDER_START_DATE: type: boolean BRAND_COLOR: type: string pattern: ^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$ HERO_LINK_LABEL: type: string HERO_LINK_URL: type: string format: uri SUPPORT_PORTAL_URL: type: string format: uri COMMON_FOOTER_TEXT: type: string COMMON_FOOTER_HTML: type: string LANGUAGE_CHOICES: type: string DISABLE_DARK_THEME: type: boolean POWERED_BY_LOGO: type: string format: uri nullable: true HERO_IMAGE: type: string format: uri nullable: true MARKETPLACE_HERO_IMAGE: type: string format: uri nullable: true CALL_MANAGEMENT_HERO_IMAGE: type: string format: uri nullable: true SIDEBAR_LOGO: type: string format: uri nullable: true SIDEBAR_LOGO_DARK: type: string format: uri nullable: true SIDEBAR_LOGO_MOBILE: type: string format: uri nullable: true SIDEBAR_STYLE: $ref: '#/components/schemas/SIDEBARSTYLEEnum' FONT_FAMILY: $ref: '#/components/schemas/FONTFAMILYEnum' LOGIN_LOGO: type: string format: uri nullable: true LOGIN_LOGO_MULTILINGUAL: type: object additionalProperties: type: string format: uri nullable: true LOGIN_PAGE_LAYOUT: $ref: '#/components/schemas/LOGINPAGELAYOUTEnum' LOGIN_PAGE_VIDEO_URL: type: string format: uri LOGIN_PAGE_STATS: type: array items: {} LOGIN_PAGE_CAROUSEL_SLIDES: type: array items: {} LOGIN_PAGE_NEWS: type: array items: {} FAVICON: type: string format: uri nullable: true OFFERING_LOGO_PLACEHOLDER: type: string format: uri nullable: true DISCLAIMER_AREA_LOGO: type: string format: uri nullable: true WALDUR_SUPPORT_ENABLED: type: boolean WALDUR_SUPPORT_ACTIVE_BACKEND_TYPE: $ref: '#/components/schemas/WALDURSUPPORTACTIVEBACKENDTYPEEnum' WALDUR_SUPPORT_DISPLAY_REQUEST_TYPE: type: boolean ATLASSIAN_MAP_WALDUR_USERS_TO_SERVICEDESK_AGENTS: type: boolean ATLASSIAN_API_URL: type: string format: uri ATLASSIAN_USERNAME: type: string ATLASSIAN_PASSWORD: type: string ATLASSIAN_EMAIL: type: string format: email ATLASSIAN_USE_OLD_API: type: boolean ATLASSIAN_TOKEN: type: string ATLASSIAN_PERSONAL_ACCESS_TOKEN: type: string ATLASSIAN_OAUTH2_CLIENT_ID: type: string ATLASSIAN_OAUTH2_ACCESS_TOKEN: type: string ATLASSIAN_OAUTH2_TOKEN_TYPE: type: string ATLASSIAN_VERIFY_SSL: type: boolean ATLASSIAN_PROJECT_ID: type: string ATLASSIAN_SHARED_USERNAME: type: boolean ATLASSIAN_CUSTOM_ISSUE_FIELD_MAPPING_ENABLED: type: boolean ATLASSIAN_DEFAULT_OFFERING_ISSUE_TYPE: type: string ATLASSIAN_EXCLUDED_ATTACHMENT_TYPES: type: string ATLASSIAN_DESCRIPTION_TEMPLATE: type: string ATLASSIAN_SUMMARY_TEMPLATE: type: string ATLASSIAN_AFFECTED_RESOURCE_FIELD: type: string ATLASSIAN_IMPACT_FIELD: type: string ATLASSIAN_ORGANISATION_FIELD: type: string ATLASSIAN_RESOLUTION_SLA_FIELD: type: string ATLASSIAN_PROJECT_FIELD: type: string ATLASSIAN_REPORTER_FIELD: type: string ATLASSIAN_CALLER_FIELD: type: string ATLASSIAN_SLA_FIELD: type: string ATLASSIAN_LINKED_ISSUE_TYPE: type: string ATLASSIAN_SATISFACTION_FIELD: type: string ATLASSIAN_REQUEST_FEEDBACK_FIELD: type: string ATLASSIAN_TEMPLATE_FIELD: type: string ATLASSIAN_WALDUR_BACKEND_ID_FIELD: type: string ZAMMAD_API_URL: type: string format: uri ZAMMAD_TOKEN: type: string ZAMMAD_GROUP: type: string ZAMMAD_ARTICLE_TYPE: $ref: '#/components/schemas/ZAMMADARTICLETYPEEnum' ZAMMAD_COMMENT_MARKER: type: string ZAMMAD_COMMENT_PREFIX: type: string ZAMMAD_COMMENT_COOLDOWN_DURATION: type: integer SMAX_API_URL: type: string format: uri SMAX_TENANT_ID: type: string SMAX_LOGIN: type: string SMAX_PASSWORD: type: string SMAX_ORGANISATION_FIELD: type: string SMAX_PROJECT_FIELD: type: string SMAX_AFFECTED_RESOURCE_FIELD: type: string SMAX_TIMES_TO_PULL: type: integer SMAX_SECONDS_TO_WAIT: type: integer SMAX_CREATION_SOURCE_NAME: type: string SMAX_REQUESTS_OFFERING: type: string SMAX_VERIFY_SSL: type: boolean ENABLE_MOCK_SERVICE_ACCOUNT_BACKEND: type: boolean ENABLE_MOCK_COURSE_ACCOUNT_BACKEND: type: boolean PROPOSAL_REVIEW_DURATION: type: integer ORCID_CLIENT_ID: type: string ORCID_CLIENT_SECRET: type: string ORCID_REDIRECT_URI: type: string format: uri ORCID_API_URL: type: string format: uri ORCID_AUTH_URL: type: string format: uri ORCID_SANDBOX_MODE: type: boolean SEMANTIC_SCHOLAR_API_KEY: type: string CROSSREF_MAILTO: type: string format: email REVIEWER_PROFILES_ENABLED: type: boolean COI_DETECTION_ENABLED: type: boolean COI_DISCLOSURE_REQUIRED: type: boolean AUTOMATED_MATCHING_ENABLED: type: boolean COI_COAUTHORSHIP_LOOKBACK_YEARS: type: integer COI_COAUTHORSHIP_THRESHOLD_PAPERS: type: integer COI_INSTITUTIONAL_LOOKBACK_YEARS: type: integer USER_TABLE_COLUMNS: type: string AUTO_APPROVE_USER_TOS: type: boolean FREEIPA_ENABLED: type: boolean FREEIPA_HOSTNAME: type: string FREEIPA_USERNAME: type: string FREEIPA_PASSWORD: type: string FREEIPA_VERIFY_SSL: type: boolean FREEIPA_USERNAME_PREFIX: type: string FREEIPA_GROUPNAME_PREFIX: type: string FREEIPA_BLACKLISTED_USERNAMES: type: array items: type: string FREEIPA_GROUP_SYNCHRONIZATION_ENABLED: type: boolean SCIM_MEMBERSHIP_SYNC_ENABLED: type: boolean SCIM_API_URL: type: string SCIM_API_KEY: type: string SCIM_URN_NAMESPACE: type: string KEYCLOAK_ICON: type: string format: uri nullable: true COUNTRIES: type: array items: type: string OIDC_AUTH_URL: type: string OIDC_INTROSPECTION_URL: type: string OIDC_CLIENT_ID: type: string OIDC_CLIENT_SECRET: type: string OIDC_USER_FIELD: type: string OIDC_CACHE_TIMEOUT: type: integer OIDC_ACCESS_TOKEN_ENABLED: type: boolean OIDC_BLOCK_CREATION_OF_UNINVITED_USERS: type: boolean OIDC_MATCHMAKING_BY_EMAIL: type: boolean DEACTIVATE_USER_IF_NO_ROLES: type: boolean WALDUR_AUTH_SOCIAL_ROLE_CLAIM: type: string REMOTE_EDUTEAMS_REFRESH_TOKEN: type: string DEFAULT_OFFERING_USER_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' INVITATION_ALLOWED_FIELDS: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' ENABLED_USER_PROFILE_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' MANDATORY_USER_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' ENFORCE_MANDATORY_USER_ATTRIBUTES: type: boolean MAINTENANCE_ANNOUNCEMENT_NOTIFY_BEFORE_MINUTES: type: integer MAINTENANCE_ANNOUNCEMENT_NOTIFY_SYSTEM: type: array items: oneOf: - $ref: '#/components/schemas/NotifySystemEnum' - $ref: '#/components/schemas/BlankEnum' ENFORCE_USER_CONSENT_FOR_OFFERINGS: type: boolean ENFORCE_OFFERING_USER_PROFILE_COMPLETENESS: type: boolean DISABLED_OFFERING_TYPES: type: array items: oneOf: - $ref: '#/components/schemas/OfferingTypeEnum' - $ref: '#/components/schemas/BlankEnum' ONBOARDING_VALIDATION_METHODS: type: array items: oneOf: - $ref: '#/components/schemas/OnboardingValidationEnum' - $ref: '#/components/schemas/BlankEnum' ONBOARDING_VERIFICATION_EXPIRY_HOURS: type: integer ONBOARDING_ARIREGISTER_BASE_URL: type: string format: uri ONBOARDING_ARIREGISTER_USERNAME: type: string ONBOARDING_ARIREGISTER_PASSWORD: type: string ONBOARDING_ARIREGISTER_TIMEOUT: type: integer ONBOARDING_WICO_API_URL: type: string format: uri ONBOARDING_WICO_TOKEN: type: string ONBOARDING_BOLAGSVERKET_API_URL: type: string format: uri ONBOARDING_BOLAGSVERKET_TOKEN_API_URL: type: string format: uri ONBOARDING_BOLAGSVERKET_CLIENT_ID: type: string ONBOARDING_BOLAGSVERKET_CLIENT_SECRET: type: string ONBOARDING_BREG_API_URL: type: string format: uri LLM_CHAT_ENABLED: type: boolean LLM_INFERENCES_BACKEND_TYPE: type: string LLM_INFERENCES_API_URL: type: string format: uri LLM_INFERENCES_API_TOKEN: type: string LLM_INFERENCES_MODEL: type: string LLM_TOKEN_LIMIT_DAILY: type: integer LLM_TOKEN_LIMIT_WEEKLY: type: integer LLM_TOKEN_LIMIT_MONTHLY: type: integer LLM_CHAT_SESSION_RETENTION_DAYS: type: integer LLM_CHAT_HISTORY_LIMIT: type: integer LLM_INJECTION_ALLOWLIST: type: string SOFTWARE_CATALOG_EESSI_UPDATE_ENABLED: type: boolean SOFTWARE_CATALOG_EESSI_VERSION: type: string SOFTWARE_CATALOG_EESSI_API_URL: type: string SOFTWARE_CATALOG_EESSI_INCLUDE_EXTENSIONS: type: boolean SOFTWARE_CATALOG_SPACK_UPDATE_ENABLED: type: boolean SOFTWARE_CATALOG_SPACK_VERSION: type: string SOFTWARE_CATALOG_SPACK_DATA_URL: type: string SOFTWARE_CATALOG_UPDATE_EXISTING_PACKAGES: type: boolean SOFTWARE_CATALOG_CLEANUP_ENABLED: type: boolean SOFTWARE_CATALOG_RETENTION_DAYS: type: integer SYSTEM_LOG_ENABLED: type: boolean SYSTEM_LOG_MAX_ROWS_PER_SOURCE: type: integer TABLE_GROWTH_MONITORING_ENABLED: type: boolean TABLE_GROWTH_WEEKLY_THRESHOLD_PERCENT: type: integer TABLE_GROWTH_MONTHLY_THRESHOLD_PERCENT: type: integer TABLE_GROWTH_RETENTION_DAYS: type: integer TABLE_GROWTH_MIN_SIZE_BYTES: type: integer USER_ACTIONS_ENABLED: type: boolean USER_ACTIONS_PENDING_ORDER_HOURS: type: integer USER_ACTIONS_HIGH_URGENCY_NOTIFICATION: type: boolean USER_ACTIONS_NOTIFICATION_THRESHOLD: type: integer USER_ACTIONS_EXECUTION_RETENTION_DAYS: type: integer USER_ACTIONS_DEFAULT_EXPIRATION_REMINDERS: type: array items: type: string USER_DATA_ACCESS_LOGGING_ENABLED: type: boolean USER_DATA_ACCESS_LOG_RETENTION_DAYS: type: integer USER_DATA_ACCESS_LOG_SELF_ACCESS: type: boolean ARROW_AUTO_RECONCILIATION: type: boolean ARROW_SYNC_INTERVAL_HOURS: type: integer ARROW_CONSUMPTION_SYNC_ENABLED: type: boolean ARROW_CONSUMPTION_SYNC_INTERVAL_HOURS: type: integer ARROW_BILLING_CHECK_INTERVAL_HOURS: type: integer SLURM_POLICY_EVALUATION_LOG_RETENTION_DAYS: type: integer FEDERATED_IDENTITY_SYNC_ENABLED: type: boolean FEDERATED_IDENTITY_SYNC_ALLOWED_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' FEDERATED_IDENTITY_DEACTIVATION_POLICY: $ref: '#/components/schemas/FEDERATEDIDENTITYDEACTIVATIONPOLICYEnum' ENABLE_PROJECT_DIGEST: type: boolean description: '' ConstanceSettingsRequest: type: object properties: SITE_NAME: type: string SITE_DESCRIPTION: type: string HOMEPORT_URL: type: string RANCHER_USERNAME_INPUT_LABEL: type: string DISCLAIMER_AREA_TEXT: type: string minLength: 1 SITE_ADDRESS: type: string SITE_EMAIL: type: string SITE_PHONE: type: string CURRENCY_NAME: type: string THUMBNAIL_SIZE: type: string ANONYMOUS_USER_CAN_VIEW_OFFERINGS: type: boolean ANONYMOUS_USER_CAN_VIEW_PLANS: type: boolean RESTRICTED_OFFERING_VISIBILITY_MODE: $ref: '#/components/schemas/RESTRICTEDOFFERINGVISIBILITYMODEEnum' ALLOW_SERVICE_PROVIDER_OFFERING_MANAGEMENT: type: boolean NOTIFY_STAFF_ABOUT_APPROVALS: type: boolean NOTIFY_ABOUT_RESOURCE_CHANGE: type: boolean DISABLE_SENDING_NOTIFICATIONS_ABOUT_RESOURCE_UPDATE: type: boolean MARKETPLACE_LANDING_PAGE: type: string ENABLE_STALE_RESOURCE_NOTIFICATIONS: type: boolean TELEMETRY_URL: type: string TELEMETRY_VERSION: type: integer SCRIPT_RUN_MODE: $ref: '#/components/schemas/SCRIPTRUNMODEEnum' DOCKER_CLIENT: type: string minLength: 1 DOCKER_RUN_OPTIONS: type: string minLength: 1 DOCKER_SCRIPT_DIR: type: string DOCKER_REMOVE_CONTAINER: type: boolean DOCKER_IMAGES: type: string minLength: 1 DOCKER_VOLUME_NAME: type: string K8S_NAMESPACE: type: string K8S_CONFIG_PATH: type: string K8S_JOB_TIMEOUT: type: integer ENABLE_STRICT_CHECK_ACCEPTING_INVITATION: type: boolean INVITATION_DISABLE_MULTIPLE_ROLES: type: boolean DEFAULT_IDP: oneOf: - $ref: '#/components/schemas/DEFAULTIDPEnum' - $ref: '#/components/schemas/BlankEnum' DOCS_URL: type: string format: uri SHORT_PAGE_TITLE: type: string FULL_PAGE_TITLE: type: string PROJECT_END_DATE_MANDATORY: type: boolean ENABLE_ORDER_START_DATE: type: boolean BRAND_COLOR: type: string pattern: ^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$ HERO_LINK_LABEL: type: string HERO_LINK_URL: type: string format: uri SUPPORT_PORTAL_URL: type: string format: uri COMMON_FOOTER_TEXT: type: string minLength: 1 COMMON_FOOTER_HTML: type: string minLength: 1 LANGUAGE_CHOICES: type: string DISABLE_DARK_THEME: type: boolean POWERED_BY_LOGO: type: string format: binary nullable: true HERO_IMAGE: type: string format: binary nullable: true MARKETPLACE_HERO_IMAGE: type: string format: binary nullable: true CALL_MANAGEMENT_HERO_IMAGE: type: string format: binary nullable: true SIDEBAR_LOGO: type: string format: binary nullable: true SIDEBAR_LOGO_DARK: type: string format: binary nullable: true SIDEBAR_LOGO_MOBILE: type: string format: binary nullable: true SIDEBAR_STYLE: $ref: '#/components/schemas/SIDEBARSTYLEEnum' FONT_FAMILY: $ref: '#/components/schemas/FONTFAMILYEnum' LOGIN_LOGO: type: string format: binary nullable: true LOGIN_LOGO_MULTILINGUAL: type: object additionalProperties: type: string format: binary nullable: true LOGIN_PAGE_LAYOUT: $ref: '#/components/schemas/LOGINPAGELAYOUTEnum' LOGIN_PAGE_VIDEO_URL: type: string format: uri LOGIN_PAGE_STATS: type: array items: {} LOGIN_PAGE_CAROUSEL_SLIDES: type: array items: {} LOGIN_PAGE_NEWS: type: array items: {} FAVICON: type: string format: binary nullable: true OFFERING_LOGO_PLACEHOLDER: type: string format: binary nullable: true DISCLAIMER_AREA_LOGO: type: string format: binary nullable: true WALDUR_SUPPORT_ENABLED: type: boolean WALDUR_SUPPORT_ACTIVE_BACKEND_TYPE: $ref: '#/components/schemas/WALDURSUPPORTACTIVEBACKENDTYPEEnum' WALDUR_SUPPORT_DISPLAY_REQUEST_TYPE: type: boolean ATLASSIAN_MAP_WALDUR_USERS_TO_SERVICEDESK_AGENTS: type: boolean ATLASSIAN_API_URL: type: string format: uri ATLASSIAN_USERNAME: type: string ATLASSIAN_PASSWORD: type: string ATLASSIAN_EMAIL: type: string format: email minLength: 1 ATLASSIAN_USE_OLD_API: type: boolean ATLASSIAN_TOKEN: type: string ATLASSIAN_PERSONAL_ACCESS_TOKEN: type: string ATLASSIAN_OAUTH2_CLIENT_ID: type: string ATLASSIAN_OAUTH2_ACCESS_TOKEN: type: string ATLASSIAN_OAUTH2_TOKEN_TYPE: type: string ATLASSIAN_VERIFY_SSL: type: boolean ATLASSIAN_PROJECT_ID: type: string ATLASSIAN_SHARED_USERNAME: type: boolean ATLASSIAN_CUSTOM_ISSUE_FIELD_MAPPING_ENABLED: type: boolean ATLASSIAN_DEFAULT_OFFERING_ISSUE_TYPE: type: string ATLASSIAN_EXCLUDED_ATTACHMENT_TYPES: type: string ATLASSIAN_DESCRIPTION_TEMPLATE: type: string ATLASSIAN_SUMMARY_TEMPLATE: type: string ATLASSIAN_AFFECTED_RESOURCE_FIELD: type: string ATLASSIAN_IMPACT_FIELD: type: string ATLASSIAN_ORGANISATION_FIELD: type: string ATLASSIAN_RESOLUTION_SLA_FIELD: type: string ATLASSIAN_PROJECT_FIELD: type: string ATLASSIAN_REPORTER_FIELD: type: string ATLASSIAN_CALLER_FIELD: type: string ATLASSIAN_SLA_FIELD: type: string ATLASSIAN_LINKED_ISSUE_TYPE: type: string ATLASSIAN_SATISFACTION_FIELD: type: string ATLASSIAN_REQUEST_FEEDBACK_FIELD: type: string ATLASSIAN_TEMPLATE_FIELD: type: string ATLASSIAN_WALDUR_BACKEND_ID_FIELD: type: string ZAMMAD_API_URL: type: string format: uri ZAMMAD_TOKEN: type: string ZAMMAD_GROUP: type: string ZAMMAD_ARTICLE_TYPE: $ref: '#/components/schemas/ZAMMADARTICLETYPEEnum' ZAMMAD_COMMENT_MARKER: type: string ZAMMAD_COMMENT_PREFIX: type: string ZAMMAD_COMMENT_COOLDOWN_DURATION: type: integer SMAX_API_URL: type: string format: uri SMAX_TENANT_ID: type: string SMAX_LOGIN: type: string SMAX_PASSWORD: type: string SMAX_ORGANISATION_FIELD: type: string SMAX_PROJECT_FIELD: type: string SMAX_AFFECTED_RESOURCE_FIELD: type: string SMAX_TIMES_TO_PULL: type: integer SMAX_SECONDS_TO_WAIT: type: integer SMAX_CREATION_SOURCE_NAME: type: string SMAX_REQUESTS_OFFERING: type: string SMAX_VERIFY_SSL: type: boolean ENABLE_MOCK_SERVICE_ACCOUNT_BACKEND: type: boolean ENABLE_MOCK_COURSE_ACCOUNT_BACKEND: type: boolean PROPOSAL_REVIEW_DURATION: type: integer ORCID_CLIENT_ID: type: string ORCID_CLIENT_SECRET: type: string ORCID_REDIRECT_URI: type: string format: uri ORCID_API_URL: type: string format: uri ORCID_AUTH_URL: type: string format: uri ORCID_SANDBOX_MODE: type: boolean SEMANTIC_SCHOLAR_API_KEY: type: string CROSSREF_MAILTO: type: string format: email minLength: 1 REVIEWER_PROFILES_ENABLED: type: boolean COI_DETECTION_ENABLED: type: boolean COI_DISCLOSURE_REQUIRED: type: boolean AUTOMATED_MATCHING_ENABLED: type: boolean COI_COAUTHORSHIP_LOOKBACK_YEARS: type: integer COI_COAUTHORSHIP_THRESHOLD_PAPERS: type: integer COI_INSTITUTIONAL_LOOKBACK_YEARS: type: integer USER_TABLE_COLUMNS: type: string AUTO_APPROVE_USER_TOS: type: boolean FREEIPA_ENABLED: type: boolean FREEIPA_HOSTNAME: type: string FREEIPA_USERNAME: type: string FREEIPA_PASSWORD: type: string FREEIPA_VERIFY_SSL: type: boolean FREEIPA_USERNAME_PREFIX: type: string FREEIPA_GROUPNAME_PREFIX: type: string FREEIPA_BLACKLISTED_USERNAMES: type: array items: type: string minLength: 1 FREEIPA_GROUP_SYNCHRONIZATION_ENABLED: type: boolean SCIM_MEMBERSHIP_SYNC_ENABLED: type: boolean SCIM_API_URL: type: string SCIM_API_KEY: type: string SCIM_URN_NAMESPACE: type: string KEYCLOAK_ICON: type: string format: binary nullable: true COUNTRIES: type: array items: type: string minLength: 1 OIDC_AUTH_URL: type: string OIDC_INTROSPECTION_URL: type: string OIDC_CLIENT_ID: type: string OIDC_CLIENT_SECRET: type: string OIDC_USER_FIELD: type: string OIDC_CACHE_TIMEOUT: type: integer OIDC_ACCESS_TOKEN_ENABLED: type: boolean OIDC_BLOCK_CREATION_OF_UNINVITED_USERS: type: boolean OIDC_MATCHMAKING_BY_EMAIL: type: boolean DEACTIVATE_USER_IF_NO_ROLES: type: boolean WALDUR_AUTH_SOCIAL_ROLE_CLAIM: type: string REMOTE_EDUTEAMS_REFRESH_TOKEN: type: string DEFAULT_OFFERING_USER_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' INVITATION_ALLOWED_FIELDS: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' ENABLED_USER_PROFILE_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' MANDATORY_USER_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' ENFORCE_MANDATORY_USER_ATTRIBUTES: type: boolean MAINTENANCE_ANNOUNCEMENT_NOTIFY_BEFORE_MINUTES: type: integer MAINTENANCE_ANNOUNCEMENT_NOTIFY_SYSTEM: type: array items: oneOf: - $ref: '#/components/schemas/NotifySystemEnum' - $ref: '#/components/schemas/BlankEnum' ENFORCE_USER_CONSENT_FOR_OFFERINGS: type: boolean ENFORCE_OFFERING_USER_PROFILE_COMPLETENESS: type: boolean DISABLED_OFFERING_TYPES: type: array items: oneOf: - $ref: '#/components/schemas/OfferingTypeEnum' - $ref: '#/components/schemas/BlankEnum' ONBOARDING_VALIDATION_METHODS: type: array items: oneOf: - $ref: '#/components/schemas/OnboardingValidationEnum' - $ref: '#/components/schemas/BlankEnum' ONBOARDING_VERIFICATION_EXPIRY_HOURS: type: integer ONBOARDING_ARIREGISTER_BASE_URL: type: string format: uri ONBOARDING_ARIREGISTER_USERNAME: type: string ONBOARDING_ARIREGISTER_PASSWORD: type: string ONBOARDING_ARIREGISTER_TIMEOUT: type: integer ONBOARDING_WICO_API_URL: type: string format: uri ONBOARDING_WICO_TOKEN: type: string ONBOARDING_BOLAGSVERKET_API_URL: type: string format: uri ONBOARDING_BOLAGSVERKET_TOKEN_API_URL: type: string format: uri ONBOARDING_BOLAGSVERKET_CLIENT_ID: type: string ONBOARDING_BOLAGSVERKET_CLIENT_SECRET: type: string ONBOARDING_BREG_API_URL: type: string format: uri LLM_CHAT_ENABLED: type: boolean LLM_INFERENCES_BACKEND_TYPE: type: string LLM_INFERENCES_API_URL: type: string format: uri LLM_INFERENCES_API_TOKEN: type: string LLM_INFERENCES_MODEL: type: string LLM_TOKEN_LIMIT_DAILY: type: integer LLM_TOKEN_LIMIT_WEEKLY: type: integer LLM_TOKEN_LIMIT_MONTHLY: type: integer LLM_CHAT_SESSION_RETENTION_DAYS: type: integer LLM_CHAT_HISTORY_LIMIT: type: integer LLM_INJECTION_ALLOWLIST: type: string SOFTWARE_CATALOG_EESSI_UPDATE_ENABLED: type: boolean SOFTWARE_CATALOG_EESSI_VERSION: type: string SOFTWARE_CATALOG_EESSI_API_URL: type: string SOFTWARE_CATALOG_EESSI_INCLUDE_EXTENSIONS: type: boolean SOFTWARE_CATALOG_SPACK_UPDATE_ENABLED: type: boolean SOFTWARE_CATALOG_SPACK_VERSION: type: string SOFTWARE_CATALOG_SPACK_DATA_URL: type: string SOFTWARE_CATALOG_UPDATE_EXISTING_PACKAGES: type: boolean SOFTWARE_CATALOG_CLEANUP_ENABLED: type: boolean SOFTWARE_CATALOG_RETENTION_DAYS: type: integer SYSTEM_LOG_ENABLED: type: boolean SYSTEM_LOG_MAX_ROWS_PER_SOURCE: type: integer TABLE_GROWTH_MONITORING_ENABLED: type: boolean TABLE_GROWTH_WEEKLY_THRESHOLD_PERCENT: type: integer TABLE_GROWTH_MONTHLY_THRESHOLD_PERCENT: type: integer TABLE_GROWTH_RETENTION_DAYS: type: integer TABLE_GROWTH_MIN_SIZE_BYTES: type: integer USER_ACTIONS_ENABLED: type: boolean USER_ACTIONS_PENDING_ORDER_HOURS: type: integer USER_ACTIONS_HIGH_URGENCY_NOTIFICATION: type: boolean USER_ACTIONS_NOTIFICATION_THRESHOLD: type: integer USER_ACTIONS_EXECUTION_RETENTION_DAYS: type: integer USER_ACTIONS_DEFAULT_EXPIRATION_REMINDERS: type: array items: type: string minLength: 1 USER_DATA_ACCESS_LOGGING_ENABLED: type: boolean USER_DATA_ACCESS_LOG_RETENTION_DAYS: type: integer USER_DATA_ACCESS_LOG_SELF_ACCESS: type: boolean ARROW_AUTO_RECONCILIATION: type: boolean ARROW_SYNC_INTERVAL_HOURS: type: integer ARROW_CONSUMPTION_SYNC_ENABLED: type: boolean ARROW_CONSUMPTION_SYNC_INTERVAL_HOURS: type: integer ARROW_BILLING_CHECK_INTERVAL_HOURS: type: integer SLURM_POLICY_EVALUATION_LOG_RETENTION_DAYS: type: integer FEDERATED_IDENTITY_SYNC_ENABLED: type: boolean FEDERATED_IDENTITY_SYNC_ALLOWED_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' FEDERATED_IDENTITY_DEACTIVATION_POLICY: $ref: '#/components/schemas/FEDERATEDIDENTITYDEACTIVATIONPOLICYEnum' ENABLE_PROJECT_DIGEST: type: boolean description: '' ConsumptionStatisticsResponse: type: object description: '' properties: total_records: type: integer pending_records: type: integer finalized_records: type: integer reconciled_records: type: integer total_consumed_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ total_adjustments: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ period_breakdown: type: array items: $ref: '#/components/schemas/PeriodBreakdown' required: - finalized_records - pending_records - period_breakdown - reconciled_records - total_adjustments - total_consumed_sell - total_records ConsumptionStatusResponse: type: object description: '' properties: global_sync_enabled: type: boolean settings_sync_enabled: type: boolean settings_uuid: type: string format: uuid nullable: true last_sync_run: type: string format: date-time nullable: true required: - global_sync_enabled - last_sync_run - settings_sync_enabled - settings_uuid ContainerFormatEnum: enum: - bare - ovf - aki - ami - ari type: string description: '' CoreAuthToken: type: object properties: token: type: string readOnly: true description: Authentication token for API access required: - token description: '' CoreStates: enum: - CREATION_SCHEDULED - CREATING - UPDATE_SCHEDULED - UPDATING - DELETION_SCHEDULED - DELETING - OK - ERRED type: string description: '' CorrectiveAction: type: object description: '' properties: label: type: string category: $ref: '#/components/schemas/CategoryEnum' severity: $ref: '#/components/schemas/CorrectiveActionSeverityEnum' method: type: string default: GET api_endpoint: type: boolean default: false confirmation_required: type: boolean default: false permissions_required: type: array items: type: string metadata: type: object additionalProperties: {} route_name: type: string nullable: true route_params: type: object additionalProperties: {} required: - category - label - severity CorrectiveActionSeverityEnum: enum: - safe - low - medium - high - critical type: string description: '' CostsForPeriod: type: object properties: total_price: type: string readOnly: true start_date: type: string format: date readOnly: true end_date: type: string format: date readOnly: true required: - end_date - start_date - total_price description: '' CountProjectsOfServiceProviders: type: object properties: service_provider_uuid: type: string format: uuid readOnly: true description: UUID of the service provider customer_uuid: type: string format: uuid readOnly: true description: UUID of the customer customer_name: type: string readOnly: true description: Name of the customer customer_organization_group_uuid: type: string readOnly: true description: UUID of the customer's organization group customer_organization_group_name: type: string readOnly: true description: Name of the customer's organization group count: type: integer readOnly: true description: Count value required: - count - customer_name - customer_organization_group_name - customer_organization_group_uuid - customer_uuid - service_provider_uuid description: '' CountProjectsOfServiceProvidersGroupedByOecd: type: object properties: service_provider_uuid: type: string format: uuid readOnly: true description: UUID of the service provider customer_uuid: type: string format: uuid readOnly: true description: UUID of the customer customer_name: type: string readOnly: true description: Name of the customer customer_organization_group_uuid: type: string readOnly: true description: UUID of the customer's organization group customer_organization_group_name: type: string readOnly: true description: Name of the customer's organization group count: type: integer readOnly: true description: Count value oecd_fos_2007_name: type: string readOnly: true required: - count - customer_name - customer_organization_group_name - customer_organization_group_uuid - customer_uuid - oecd_fos_2007_name - service_provider_uuid description: '' CountStats: type: object properties: name: type: string readOnly: true description: Name from the record uuid: type: string readOnly: true description: UUID from the record count: type: integer readOnly: true description: Count value from the record required: - count - name - uuid description: '' CountUniqueUsersConnectedWithActiveResourcesOfServiceProvider: type: object properties: customer_uuid: type: string format: uuid readOnly: true description: UUID of the customer customer_name: type: string readOnly: true description: Name of the customer count_users: type: integer readOnly: true description: Number of unique users required: - count_users - customer_name - customer_uuid description: '' CountUsersOfServiceProviders: type: object properties: service_provider_uuid: type: string format: uuid readOnly: true description: UUID of the service provider customer_uuid: type: string format: uuid readOnly: true description: UUID of the customer customer_name: type: string readOnly: true description: Name of the customer customer_organization_group_uuid: type: string readOnly: true description: UUID of the customer's organization group customer_organization_group_name: type: string readOnly: true description: Name of the customer's organization group count: type: integer readOnly: true description: Count value required: - count - customer_name - customer_organization_group_name - customer_organization_group_uuid - customer_uuid - service_provider_uuid description: '' Country: type: object properties: label: type: string readOnly: true value: type: string readOnly: true required: - label - value description: '' CountryEnum: enum: - AW - AF - AO - AI - AX - AL - AD - AE - AR - AM - AS - AQ - TF - AG - AU - AT - AZ - BI - BE - BJ - BQ - BF - BD - BG - BH - BS - BA - BL - BY - BZ - BM - BO - BR - BB - BN - BT - BV - BW - CF - CA - CC - CH - CL - CN - CI - CM - CD - CG - CK - CO - KM - CV - CR - CU - CW - CX - KY - CY - CZ - DE - DJ - DM - DK - DO - DZ - EC - EG - ER - EH - ES - EE - ET - FI - FJ - FK - FR - FO - FM - GA - GB - GE - GG - GH - GI - GN - GP - GM - GW - GQ - GR - GD - GL - GT - GF - GU - GY - HK - HM - HN - HR - HT - HU - ID - IM - IN - IO - IE - IR - IQ - IS - IL - IT - JM - JE - JO - JP - KZ - KE - KG - KH - KI - KN - KR - KW - LA - LB - LR - LY - LC - LI - LK - LS - LT - LU - LV - MO - MF - MA - MC - MD - MG - MV - MX - MH - MK - ML - MT - MM - ME - MN - MP - MZ - MR - MS - MQ - MU - MW - MY - YT - NA - NC - NE - NF - NG - NI - NU - NL - 'NO' - NP - NR - NZ - OM - PK - PA - PN - PE - PH - PW - PG - PL - PR - KP - PT - PY - PS - PF - QA - RE - RO - RU - RW - SA - SD - SN - SG - GS - SH - SJ - SB - SL - SV - SM - SO - PM - RS - SS - ST - SR - SK - SI - SE - SZ - SX - SC - SY - TC - TD - TG - TH - TJ - TK - TM - TL - TO - TT - TN - TR - TV - TW - TZ - UG - UA - UM - UY - US - UZ - VA - VC - VE - VG - VI - VN - VU - WF - WS - YE - ZA - ZM - ZW - EU type: string description: '' CourseAccount: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true project: type: string format: uuid project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true project_slug: type: string readOnly: true project_start_date: type: string format: date readOnly: true project_end_date: type: string format: date readOnly: true user_uuid: type: string format: uuid readOnly: true username: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/ServiceAccountState' readOnly: true email: type: string format: email maxLength: 320 description: type: string maxLength: 4096 error_message: type: string readOnly: true error_traceback: type: string readOnly: true required: - created - customer_name - customer_uuid - error_message - error_traceback - modified - project - project_end_date - project_name - project_slug - project_start_date - project_uuid - state - url - user_uuid - username - uuid description: '' CourseAccountCreateNestedRequest: type: object properties: email: type: string format: email minLength: 1 maxLength: 320 description: type: string maxLength: 4096 description: '' CourseAccountRequest: type: object properties: project: type: string format: uuid email: type: string format: email minLength: 1 maxLength: 320 description: type: string maxLength: 4096 required: - project description: '' CourseAccountsBulkCreateRequest: type: object properties: course_accounts: type: array items: $ref: '#/components/schemas/CourseAccountCreateNestedRequest' project: type: string format: uuid required: - course_accounts - project description: '' CreateAttachmentsRequest: type: object properties: attachments: type: array items: type: string format: binary description: List of files to attach required: - attachments description: '' CreateCustomerCredit: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true value: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ customer: type: string format: uri customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_slug: type: string readOnly: true offerings: type: array items: type: string format: uri nullable: true end_date: type: string format: date nullable: true expected_consumption: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ minimal_consumption: type: number format: double readOnly: true minimal_consumption_logic: $ref: '#/components/schemas/MinimalConsumptionLogicEnum' grace_coefficient: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,0})?$ apply_as_minimal_consumption: type: boolean allocated_to_projects: type: number format: double readOnly: true consumption_last_month: type: number format: double readOnly: true required: - allocated_to_projects - consumption_last_month - customer - customer_name - customer_slug - customer_uuid - minimal_consumption - url - uuid description: '' CreateCustomerCreditRequest: type: object properties: value: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ customer: type: string format: uri offerings: type: array items: type: string format: uri nullable: true end_date: type: string format: date nullable: true expected_consumption: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ minimal_consumption_logic: $ref: '#/components/schemas/MinimalConsumptionLogicEnum' grace_coefficient: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,0})?$ apply_as_minimal_consumption: type: boolean required: - customer description: '' CreateFeedback: type: object properties: uuid: type: string format: uuid readOnly: true issue: type: string format: uri readOnly: true comment: type: string evaluation: type: integer maximum: 10 minimum: 1 required: - evaluation - issue - uuid description: '' CreateFeedbackRequest: type: object properties: comment: type: string evaluation: type: integer maximum: 10 minimum: 1 token: type: string writeOnly: true minLength: 1 required: - evaluation - token description: '' CreateManualAssignmentRequest: type: object description: '' properties: reviewer_pool_entry_uuid: type: string format: uuid description: UUID of the reviewer pool entry to assign proposals to proposal_uuids: type: array items: type: string format: uuid description: List of proposal UUIDs to assign to the reviewer minItems: 1 manager_notes: type: string description: Optional notes about this assignment required: - proposal_uuids - reviewer_pool_entry_uuid CreateManualAssignmentResponse: type: object description: '' properties: batch_uuid: type: string format: uuid items_created: type: integer skipped_proposals: type: array items: type: object additionalProperties: {} description: Proposals that were skipped with reasons required: - batch_uuid - items_created - skipped_proposals CreateRouter: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true tenant: type: string format: uri description: OpenStack tenant this router belongs to name: type: string project: type: string format: uri readOnly: true service_settings: type: string format: uri readOnly: true required: - name - project - service_settings - tenant - url - uuid description: '' CreateRouterRequest: type: object properties: tenant: type: string format: uri description: OpenStack tenant this router belongs to name: type: string minLength: 1 required: - name - tenant description: '' CredentialsValidationResponse: type: object description: '' properties: valid: type: boolean message: type: string error: type: string server_info: allOf: - $ref: '#/components/schemas/ServerInfo' nullable: true required: - valid CurrentQosStatusEnum: enum: - normal - notification - slowdown - blocked type: string description: '' Customer: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true description: Organization groups this customer belongs to display_name: type: string readOnly: true description: Display name of the organization (includes native name if available) backend_id: type: string description: Organization identifier in another application. maxLength: 255 image: type: string format: uri nullable: true blocked: type: boolean archived: type: boolean display_billing_info_in_projects: type: boolean default_tax_percent: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,2})?$ accounting_start_date: type: string format: date-time title: Start date of accounting projects_count: type: integer readOnly: true description: Number of projects in this organization users_count: type: integer readOnly: true description: Number of users with access to this organization sponsor_number: type: integer maximum: 2147483647 minimum: 0 nullable: true description: External ID of the sponsor covering the costs country_name: type: string readOnly: true description: Human-readable country name max_service_accounts: type: integer maximum: 32767 minimum: 0 nullable: true description: Maximum number of service accounts allowed project_metadata_checklist: type: string format: uuid nullable: true description: Checklist to be used for project metadata validation in this organization grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). name: type: string maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 160 abbreviation: type: string maxLength: 12 description: type: string maxLength: 4096 contact_details: type: string maxLength: 500 agreement_number: type: string maxLength: 160 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 access_subnets: type: string description: Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. registration_code: type: string maxLength: 160 homepage: type: string format: uri maxLength: 255 domain: type: string maxLength: 255 vat_code: type: string description: VAT number maxLength: 20 postal: type: string maxLength: 20 address: type: string maxLength: 300 bank_name: type: string maxLength: 150 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true bank_account: type: string maxLength: 50 country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 payment_profiles: type: array items: $ref: '#/components/schemas/PaymentProfile' readOnly: true customer_credit: type: number format: double nullable: true readOnly: true customer_unallocated_credit: type: number format: double nullable: true readOnly: true is_service_provider: type: boolean readOnly: true service_provider: type: string format: uri readOnly: true nullable: true service_provider_uuid: type: string format: uuid readOnly: true nullable: true call_managing_organization_uuid: type: string nullable: true readOnly: true billing_price_estimate: allOf: - $ref: '#/components/schemas/NestedPriceEstimate' readOnly: true required: [] CustomerBillingSummaryBillingSync: type: object description: '' properties: uuid: type: string format: uuid report_period: type: string state: type: string sell_total: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true items_count: type: integer created: type: string format: date-time required: - created - items_count - report_period - sell_total - state - uuid CustomerBillingSummaryConsumptionRecord: type: object description: '' properties: uuid: type: string format: uuid license_reference: type: string resource_name: type: string nullable: true billing_period: type: string format: date consumed_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ final_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true is_finalized: type: boolean is_reconciled: type: boolean required: - billing_period - consumed_sell - final_sell - is_finalized - is_reconciled - license_reference - resource_name - uuid CustomerBillingSummaryResponse: type: object description: '' properties: customer_mapping_uuid: type: string format: uuid arrow_reference: type: string arrow_company_name: type: string waldur_customer_uuid: type: string format: uuid waldur_customer_name: type: string total_consumption_records: type: integer total_consumed_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ total_final_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true pending_records: type: integer finalized_records: type: integer reconciled_records: type: integer total_billing_syncs: type: integer total_billing_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true recent_consumption_records: type: array items: $ref: '#/components/schemas/CustomerBillingSummaryConsumptionRecord' recent_billing_syncs: type: array items: $ref: '#/components/schemas/CustomerBillingSummaryBillingSync' required: - arrow_company_name - arrow_reference - customer_mapping_uuid - finalized_records - pending_records - recent_billing_syncs - recent_consumption_records - reconciled_records - total_billing_sell - total_billing_syncs - total_consumed_sell - total_consumption_records - total_final_sell - waldur_customer_name - waldur_customer_uuid CustomerComponentUsagePolicy: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true scope: type: string format: uri scope_name: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true actions: type: string maxLength: 255 created: type: string format: date-time readOnly: true created_by_full_name: type: string readOnly: true created_by_username: type: string readOnly: true has_fired: type: boolean readOnly: true fired_datetime: type: string format: date-time readOnly: true options: description: Fields for saving actions extra data. Keys are name of actions. component_limits_set: type: array items: $ref: '#/components/schemas/NestedCustomerUsagePolicyComponent' required: - actions - component_limits_set - created - created_by_full_name - created_by_username - fired_datetime - has_fired - scope - scope_name - scope_uuid - url - uuid description: '' CustomerComponentUsagePolicyRequest: type: object properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. component_limits_set: type: array items: $ref: '#/components/schemas/NestedCustomerUsagePolicyComponentRequest' required: - actions - component_limits_set - scope description: '' CustomerContactUpdate: type: object properties: contact_details: type: string maxLength: 500 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 homepage: type: string format: uri maxLength: 255 notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 description: '' CustomerContactUpdateRequest: type: object properties: contact_details: type: string maxLength: 500 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 homepage: type: string format: uri maxLength: 255 notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 description: '' CustomerCredit: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true value: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ customer: type: string format: uri customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_slug: type: string readOnly: true offerings: type: array items: $ref: '#/components/schemas/NestedProviderOffering' readOnly: true end_date: type: string format: date nullable: true expected_consumption: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ minimal_consumption: type: number format: double readOnly: true minimal_consumption_logic: $ref: '#/components/schemas/MinimalConsumptionLogicEnum' grace_coefficient: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,0})?$ apply_as_minimal_consumption: type: boolean allocated_to_projects: type: number format: double readOnly: true consumption_last_month: type: number format: double readOnly: true required: - allocated_to_projects - consumption_last_month - customer - customer_name - customer_slug - customer_uuid - minimal_consumption - offerings - url - uuid description: '' CustomerCreditConsumption: type: object properties: date: type: string format: date readOnly: true price: type: string format: decimal pattern: ^-?\d{0,20}(?:\.\d{0,2})?$ readOnly: true required: - date - price description: '' CustomerCreditRequest: type: object properties: value: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ customer: type: string format: uri end_date: type: string format: date nullable: true expected_consumption: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ minimal_consumption_logic: $ref: '#/components/schemas/MinimalConsumptionLogicEnum' grace_coefficient: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,0})?$ apply_as_minimal_consumption: type: boolean required: - customer description: '' CustomerDetails: type: object properties: name: type: string maxLength: 150 address: type: string maxLength: 300 country: type: string maxLength: 2 country_name: type: string nullable: true readOnly: true email: type: string format: email title: Email address maxLength: 75 postal: type: string maxLength: 20 phone_number: type: string maxLength: 255 bank_name: type: string maxLength: 150 bank_account: type: string maxLength: 50 vat_code: type: string description: VAT number maxLength: 20 required: [] description: '' CustomerEstimatedCostPolicy: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true scope: type: string format: uri scope_name: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true actions: type: string maxLength: 255 created: type: string format: date-time readOnly: true created_by_full_name: type: string readOnly: true created_by_username: type: string readOnly: true has_fired: type: boolean readOnly: true fired_datetime: type: string format: date-time readOnly: true options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 period_name: type: string readOnly: true customer_credit: type: integer readOnly: true billing_price_estimate: allOf: - $ref: '#/components/schemas/NestedPriceEstimate' readOnly: true required: - actions - billing_price_estimate - created - created_by_full_name - created_by_username - customer_credit - fired_datetime - has_fired - limit_cost - period_name - scope - scope_name - scope_uuid - url - uuid CustomerEstimatedCostPolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 required: - actions - limit_cost - scope CustomerIndustryFlagStats: type: object properties: name: type: string readOnly: true description: Name from the record uuid: type: string readOnly: true description: UUID from the record count: type: integer readOnly: true description: Count value from the record abbreviation: type: string readOnly: true description: Customer abbreviation from the record is_industry: type: string description: Industry classification flag required: - abbreviation - count - is_industry - name - uuid description: '' CustomerMappingInputRequest: type: object description: '' properties: arrow_reference: type: string minLength: 1 waldur_customer_uuid: type: string format: uuid required: - arrow_reference - waldur_customer_uuid CustomerMappingSuggestion: type: object description: '' properties: arrow_customer: $ref: '#/components/schemas/ArrowCustomerDiscovery' suggested_waldur_customer: $ref: '#/components/schemas/WaldurCustomerBrief' confidence: type: number format: double existing_mapping: type: boolean default: false required: - arrow_customer CustomerMemberCount: type: object properties: uuid: type: string format: uuid readOnly: true description: UUID of the customer name: type: string readOnly: true description: Name of the customer abbreviation: type: string readOnly: true description: Abbreviation of the customer count: type: integer readOnly: true description: Number of members has_resources: type: boolean readOnly: true description: Whether the customer has resources required: - abbreviation - count - has_resources - name - uuid description: '' CustomerMemberSummary: type: object description: '' properties: total_organizations: type: integer description: Total number of organizations total_members: type: integer description: Total number of members across all organizations organizations_with_resources: type: integer description: Number of organizations with active resources average_members_per_org: type: integer description: Average number of members per organization required: - average_members_per_org - organizations_with_resources - total_members - total_organizations CustomerOecdCodeStats: type: object properties: name: type: string readOnly: true description: Name from the record uuid: type: string readOnly: true description: UUID from the record count: type: integer readOnly: true description: Count value from the record abbreviation: type: string readOnly: true description: Customer abbreviation from the record oecd: type: string required: - abbreviation - count - name - oecd - uuid description: '' CustomerPermissionReview: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true reviewer_full_name: type: string readOnly: true nullable: true reviewer_uuid: type: string format: uuid readOnly: true nullable: true is_pending: type: boolean readOnly: true created: type: string format: date-time readOnly: true closed: type: string format: date-time readOnly: true nullable: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true required: - closed - created - customer_name - customer_uuid - is_pending - reviewer_full_name - reviewer_uuid - url - uuid CustomerQuotas: type: object properties: customer_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true value: type: integer readOnly: true required: - customer_abbreviation - customer_name - value description: '' CustomerRequest: type: object description: '' properties: backend_id: type: string description: Organization identifier in another application. maxLength: 255 image: type: string format: binary nullable: true blocked: type: boolean archived: type: boolean display_billing_info_in_projects: type: boolean default_tax_percent: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,2})?$ accounting_start_date: type: string format: date-time title: Start date of accounting sponsor_number: type: integer maximum: 2147483647 minimum: 0 nullable: true description: External ID of the sponsor covering the costs max_service_accounts: type: integer maximum: 32767 minimum: 0 nullable: true description: Maximum number of service accounts allowed project_metadata_checklist: type: string format: uuid nullable: true description: Checklist to be used for project metadata validation in this organization grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 160 abbreviation: type: string maxLength: 12 description: type: string maxLength: 4096 contact_details: type: string maxLength: 500 agreement_number: type: string maxLength: 160 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 access_subnets: type: string description: Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. registration_code: type: string maxLength: 160 homepage: type: string format: uri maxLength: 255 domain: type: string maxLength: 255 vat_code: type: string description: VAT number maxLength: 20 postal: type: string maxLength: 20 address: type: string maxLength: 300 bank_name: type: string maxLength: 150 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true bank_account: type: string maxLength: 50 country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 required: - name CustomerServiceAccount: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true username: type: string maxLength: 32 description: type: string error_message: type: string readOnly: true error_traceback: type: string state: allOf: - $ref: '#/components/schemas/ServiceAccountState' readOnly: true token: type: string nullable: true readOnly: true email: type: string format: email maxLength: 320 expires_at: type: string nullable: true readOnly: true preferred_identifier: type: string maxLength: 32 customer: type: string format: uuid customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true required: - created - customer - customer_name - customer_uuid - error_message - expires_at - modified - state - token - url - uuid description: '' CustomerServiceAccountRequest: type: object properties: username: type: string maxLength: 32 description: type: string error_traceback: type: string email: type: string format: email minLength: 1 maxLength: 320 preferred_identifier: type: string maxLength: 32 customer: type: string format: uuid required: - customer description: '' CustomerUser: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 full_name: type: string readOnly: true email: type: string format: email title: Email address maxLength: 320 role_name: type: string nullable: true readOnly: true projects: type: array items: $ref: '#/components/schemas/NestedProjectPermission' readOnly: true expiration_time: type: string format: date-time nullable: true readOnly: true image: type: string format: uri nullable: true required: [] DEFAULTIDPEnum: enum: - tara - eduteams - keycloak type: string description: '' DLQQueue: type: object description: '' properties: vhost: type: string readOnly: true description: Virtual host name queue_name: type: string readOnly: true description: DLQ queue name messages: type: integer readOnly: true description: Total messages in DLQ messages_ready: type: integer readOnly: true description: Messages ready for delivery consumers: type: integer readOnly: true description: Number of consumers attached required: - consumers - messages - messages_ready - queue_name - vhost DailyMaintenanceStats: type: object description: '' properties: date: type: string format: date description: Date count: type: integer description: Number of maintenances on this day by_state: type: object additionalProperties: type: integer description: Maintenance counts grouped by state required: - by_state - count - date DailyOrderStats: type: object description: '' properties: date: type: string format: date description: Date of the statistics total: type: integer description: Total number of orders total_cost: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true description: Total cost of orders revenue: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true description: Revenue from create/update orders by_state: type: object additionalProperties: type: integer description: Order counts grouped by state by_type: type: object additionalProperties: type: integer description: Order counts grouped by type required: - by_state - by_type - date - revenue - total - total_cost DataAccessSummary: type: object description: '' properties: total_administrative_access: type: integer nullable: true total_organizational_access: type: integer total_provider_access: type: integer required: - total_administrative_access - total_organizational_access - total_provider_access DataVolume: type: object description: '' properties: size: type: integer volume_type: type: string format: uri nullable: true filesystem: type: string mount_point: type: string required: - mount_point - size DataVolumeRequest: type: object description: '' properties: size: type: integer volume_type: type: string format: uri nullable: true filesystem: type: string minLength: 1 mount_point: type: string minLength: 1 required: - mount_point - size DatabaseSizeStats: type: object description: '' properties: database_name: type: string readOnly: true description: Name of the database total_size_bytes: type: integer readOnly: true description: Total database size in bytes data_size_bytes: type: integer readOnly: true description: Size of data excluding indexes in bytes index_size_bytes: type: integer readOnly: true description: Total size of all indexes in bytes required: - data_size_bytes - database_name - index_size_bytes - total_size_bytes DatabaseStatsResponse: type: object description: '' properties: table_stats: type: array items: $ref: '#/components/schemas/TableSize' readOnly: true description: Top largest tables by size connections: allOf: - $ref: '#/components/schemas/ConnectionStats' readOnly: true description: Connection statistics database_size: allOf: - $ref: '#/components/schemas/DatabaseSizeStats' readOnly: true description: Database size information cache_performance: allOf: - $ref: '#/components/schemas/CachePerformance' readOnly: true description: Cache hit ratios and memory settings transactions: allOf: - $ref: '#/components/schemas/TransactionStats' readOnly: true description: Transaction commit/rollback statistics locks: allOf: - $ref: '#/components/schemas/LockStats' readOnly: true description: Current lock statistics maintenance: allOf: - $ref: '#/components/schemas/MaintenanceStats' readOnly: true description: Vacuum and maintenance statistics active_queries: allOf: - $ref: '#/components/schemas/ActiveQueriesStats' readOnly: true description: Currently running queries query_performance: allOf: - $ref: '#/components/schemas/QueryPerformance' readOnly: true description: Query performance indicators replication: allOf: - $ref: '#/components/schemas/ReplicationStats' readOnly: true description: Replication status (if applicable) required: - active_queries - cache_performance - connections - database_size - locks - maintenance - query_performance - replication - table_stats - transactions DeadLetterQueue: type: object description: '' properties: total_dlq_messages: type: integer readOnly: true description: Total messages across all DLQs dlq_count: type: integer readOnly: true description: Number of DLQ queues found dlq_queues: type: array items: $ref: '#/components/schemas/DLQQueue' readOnly: true description: List of DLQ queues with their statistics note: type: string readOnly: true description: Informational note about DLQs required: - dlq_count - dlq_queues - note - total_dlq_messages DecidingEntityEnum: enum: - by_call_manager - automatic type: string description: '' DefaultPermissionEnum: enum: - '2770' - '2775' - '2777' - '770' - '775' - '777' type: string description: '' DeleteAttachmentsRequest: type: object properties: attachment_ids: type: array items: type: string format: uuid required: - attachment_ids description: '' DemoPreset: type: object description: '' properties: name: type: string readOnly: true title: type: string readOnly: true description: type: string readOnly: true version: type: string readOnly: true entity_counts: type: object additionalProperties: type: integer readOnly: true scenarios: type: array items: type: string readOnly: true required: - description - entity_counts - name - scenarios - title - version DemoPresetLoadRequestRequest: type: object description: '' properties: dry_run: type: boolean default: false description: Preview changes without applying them cleanup_first: type: boolean default: true description: Clean up existing data before loading the preset skip_users: type: boolean default: false description: Skip user import/cleanup skip_roles: type: boolean default: false description: Skip role import/cleanup DemoPresetLoadResponse: type: object description: '' properties: success: type: boolean message: type: string output: type: string users: type: array items: $ref: '#/components/schemas/DemoPresetUser' required: - message - success DemoPresetUser: type: object description: '' properties: username: type: string password: type: string email: type: string is_staff: type: boolean default: false is_support: type: boolean default: false required: - password - username DependencyLogicOperatorEnum: enum: - and - or type: string description: '' DeploymentModeEnum: enum: - self_managed - managed type: string description: '' DeprecatedNetworkRBACPolicy: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true network: type: string format: uri readOnly: true network_name: type: string readOnly: true target_tenant: type: string format: uri target_tenant_name: type: string readOnly: true backend_id: type: string readOnly: true policy_type: allOf: - $ref: '#/components/schemas/PolicyTypeEnum' default: access_as_shared description: Type of access granted - either shared access or external network access created: type: string format: date-time readOnly: true required: - backend_id - created - network - network_name - target_tenant - target_tenant_name - url - uuid DeprecatedNetworkRBACPolicyRequest: type: object description: '' properties: target_tenant: type: string format: uri policy_type: allOf: - $ref: '#/components/schemas/PolicyTypeEnum' default: access_as_shared description: Type of access granted - either shared access or external network access required: - target_tenant DetailState: type: object properties: detail: type: string readOnly: true state: type: string readOnly: true required: - detail - state description: '' DetectionMethodEnum: enum: - automated - self_disclosed - reported - manager_identified type: string description: '' DigitalOceanDroplet: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true start_time: type: string format: date-time readOnly: true nullable: true cores: type: integer readOnly: true description: Number of cores in a VM ram: type: integer readOnly: true description: Memory size in MiB disk: type: integer readOnly: true description: Disk size in MiB min_ram: type: integer readOnly: true description: Minimum memory size in MiB min_disk: type: integer readOnly: true description: Minimum disk size in MiB user_data: type: string description: Additional data that will be added to instance on provisioning external_ips: type: array items: type: string format: ipv4 readOnly: true internal_ips: type: array items: type: string format: ipv4 readOnly: true latitude: type: number format: double readOnly: true nullable: true longitude: type: number format: double readOnly: true nullable: true key_name: type: string readOnly: true key_fingerprint: type: string readOnly: true image_name: type: string readOnly: true runtime_state: type: string readOnly: true region_name: type: string readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] DigitalOceanDropletRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri ssh_public_key: type: string format: uri writeOnly: true user_data: type: string description: Additional data that will be added to instance on provisioning region: type: string format: uri writeOnly: true image: type: string format: uri writeOnly: true size: type: string format: uri writeOnly: true required: - image - name - project - region - service_settings - size DigitalOceanDropletResize: type: object properties: disk: type: boolean required: - disk description: '' DigitalOceanDropletResizeRequest: type: object properties: size: type: string format: uri writeOnly: true disk: type: boolean required: - disk - size description: '' DigitalOceanImage: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 distribution: type: string maxLength: 100 type: type: string maxLength: 100 regions: type: array items: $ref: '#/components/schemas/DigitalOceanRegion' readOnly: true is_official: type: boolean description: Is image provided by DigitalOcean created_at: type: string format: date-time nullable: true min_disk_size: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum disk required for a size to use this image required: - distribution - name - regions - type - url - uuid DigitalOceanRegion: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 required: - name - url - uuid DigitalOceanSize: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 cores: type: integer maximum: 32767 minimum: 0 description: Number of cores in a VM ram: type: integer maximum: 2147483647 minimum: 0 description: Memory size in MiB disk: type: integer maximum: 2147483647 minimum: 0 description: Disk size in MiB transfer: type: integer maximum: 2147483647 minimum: 0 description: Amount of transfer bandwidth in MiB regions: type: array items: $ref: '#/components/schemas/DigitalOceanRegion' readOnly: true required: - cores - disk - name - ram - regions - transfer - url - uuid DirectionEnum: enum: - ingress - egress type: string description: '' DiscountConfigRequest: type: object description: '' properties: discount_threshold: type: integer minimum: 1 nullable: true description: Minimum quantity to be eligible for discount. discount_rate: type: integer maximum: 100 minimum: 0 nullable: true description: Discount rate in percentage (0-100). DiscountTypeEnum: enum: - discount - special_price type: string description: '' DiscountsUpdateRequest: type: object description: '' properties: discounts: type: object additionalProperties: $ref: '#/components/schemas/DiscountConfigRequest' description: Dictionary mapping component types to their discount configuration. required: - discounts DiscoverCustomFieldsRequestRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Atlassian API URL (e.g., https://your-domain.atlassian.net) auth_method: allOf: - $ref: '#/components/schemas/AuthMethodEnum' description: Authentication method to use email: type: string format: email token: type: string writeOnly: true personal_access_token: type: string writeOnly: true username: type: string password: type: string writeOnly: true verify_ssl: type: boolean default: true project_id: type: string request_type_id: type: string description: 'Optional: Filter fields by request type' required: - api_url - auth_method DiscoverCustomersRequestRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Arrow API base URL api_key: type: string minLength: 1 description: Arrow API Key required: - api_key - api_url DiscoverCustomersResponse: type: object description: '' properties: arrow_customers: type: array items: $ref: '#/components/schemas/ArrowCustomerDiscovery' waldur_customers: type: array items: $ref: '#/components/schemas/WaldurCustomerBrief' suggestions: type: array items: $ref: '#/components/schemas/CustomerMappingSuggestion' export_types: type: array items: $ref: '#/components/schemas/ExportTypeCompatibility' required: - arrow_customers - export_types - suggestions - waldur_customers DiscoverExternalNetworksRequestRequest: type: object description: '' properties: auth_url: type: string format: uri minLength: 1 description: Keystone auth URL (e.g., https://cloud.example.com:5000/v3) username: type: string minLength: 1 password: type: string writeOnly: true minLength: 1 user_domain_name: type: string minLength: 1 default: Default description: Keystone user domain name project_domain_name: type: string minLength: 1 default: Default description: Keystone project domain name project_name: type: string minLength: 1 default: admin description: Keystone project (tenant) name verify_ssl: type: boolean default: false certificate: type: string writeOnly: true description: PEM-encoded CA certificate for SSL verification required: - auth_url - password - username DiscoverFlavorsRequestRequest: type: object description: '' properties: auth_url: type: string format: uri minLength: 1 description: Keystone auth URL (e.g., https://cloud.example.com:5000/v3) username: type: string minLength: 1 password: type: string writeOnly: true minLength: 1 user_domain_name: type: string minLength: 1 default: Default description: Keystone user domain name project_domain_name: type: string minLength: 1 default: Default description: Keystone project domain name project_name: type: string minLength: 1 default: admin description: Keystone project (tenant) name verify_ssl: type: boolean default: false certificate: type: string writeOnly: true description: PEM-encoded CA certificate for SSL verification required: - auth_url - password - username DiscoverInstanceAvailabilityZonesRequestRequest: type: object description: '' properties: auth_url: type: string format: uri minLength: 1 description: Keystone auth URL (e.g., https://cloud.example.com:5000/v3) username: type: string minLength: 1 password: type: string writeOnly: true minLength: 1 user_domain_name: type: string minLength: 1 default: Default description: Keystone user domain name project_domain_name: type: string minLength: 1 default: Default description: Keystone project domain name project_name: type: string minLength: 1 default: admin description: Keystone project (tenant) name verify_ssl: type: boolean default: false certificate: type: string writeOnly: true description: PEM-encoded CA certificate for SSL verification required: - auth_url - password - username DiscoverLicensesResponse: type: object description: '' properties: customer_mapping_uuid: type: string format: uuid arrow_reference: type: string waldur_customer_name: type: string arrow_licenses: type: array items: $ref: '#/components/schemas/ArrowLicense' description: Arrow licenses from billing export for this customer. waldur_resources: type: array items: $ref: '#/components/schemas/WaldurResourceForLinking' description: Waldur resources for this customer. suggestions: type: array items: $ref: '#/components/schemas/LicenseSuggestion' description: Suggested matches based on name similarity. error: type: string nullable: true required: - arrow_licenses - arrow_reference - customer_mapping_uuid - error - suggestions - waldur_customer_name - waldur_resources DiscoverMetadataRequestRequest: type: object properties: discovery_url: type: string format: uri minLength: 1 description: OIDC discovery URL (e.g., https://idp.example.com/.well-known/openid-configuration) verify_ssl: type: boolean default: true description: Whether to verify SSL certificate required: - discovery_url description: '' DiscoverMetadataResponse: type: object properties: claims_supported: type: array items: type: string description: List of claims supported by the OIDC provider scopes_supported: type: array items: type: string description: List of scopes supported by the OIDC provider endpoints: type: object additionalProperties: type: string description: OIDC endpoints (authorization, token, userinfo, logout) waldur_fields: type: array items: $ref: '#/components/schemas/WaldurFieldSuggestion' description: Waldur User fields with suggested OIDC claim mappings suggested_scopes: type: array items: type: string description: Recommended scopes to request based on claim mappings required: - claims_supported - endpoints - scopes_supported - suggested_scopes - waldur_fields description: '' DiscoverPrioritiesRequestRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Atlassian API URL (e.g., https://your-domain.atlassian.net) auth_method: allOf: - $ref: '#/components/schemas/AuthMethodEnum' description: Authentication method to use email: type: string format: email token: type: string writeOnly: true personal_access_token: type: string writeOnly: true username: type: string password: type: string writeOnly: true verify_ssl: type: boolean default: true required: - api_url - auth_method DiscoverProjectsRequestRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Atlassian API URL (e.g., https://your-domain.atlassian.net) auth_method: allOf: - $ref: '#/components/schemas/AuthMethodEnum' description: Authentication method to use email: type: string format: email token: type: string writeOnly: true personal_access_token: type: string writeOnly: true username: type: string password: type: string writeOnly: true verify_ssl: type: boolean default: true required: - api_url - auth_method DiscoverRequestTypesRequestRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Atlassian API URL (e.g., https://your-domain.atlassian.net) auth_method: allOf: - $ref: '#/components/schemas/AuthMethodEnum' description: Authentication method to use email: type: string format: email token: type: string writeOnly: true personal_access_token: type: string writeOnly: true username: type: string password: type: string writeOnly: true verify_ssl: type: boolean default: true project_id: type: string minLength: 1 description: Service Desk project ID or key required: - api_url - auth_method - project_id DiscoverVolumeAvailabilityZonesRequestRequest: type: object description: '' properties: auth_url: type: string format: uri minLength: 1 description: Keystone auth URL (e.g., https://cloud.example.com:5000/v3) username: type: string minLength: 1 password: type: string writeOnly: true minLength: 1 user_domain_name: type: string minLength: 1 default: Default description: Keystone user domain name project_domain_name: type: string minLength: 1 default: Default description: Keystone project domain name project_name: type: string minLength: 1 default: admin description: Keystone project (tenant) name verify_ssl: type: boolean default: false certificate: type: string writeOnly: true description: PEM-encoded CA certificate for SSL verification required: - auth_url - password - username DiscoverVolumeTypesRequestRequest: type: object description: '' properties: auth_url: type: string format: uri minLength: 1 description: Keystone auth URL (e.g., https://cloud.example.com:5000/v3) username: type: string minLength: 1 password: type: string writeOnly: true minLength: 1 user_domain_name: type: string minLength: 1 default: Default description: Keystone user domain name project_domain_name: type: string minLength: 1 default: Default description: Keystone project domain name project_name: type: string minLength: 1 default: admin description: Keystone project (tenant) name verify_ssl: type: boolean default: false certificate: type: string writeOnly: true description: PEM-encoded CA certificate for SSL verification required: - auth_url - password - username DiskFormatEnum: enum: - qcow2 - raw - vhd - vmdk - vdi - iso - aki - ami - ari type: string description: '' DryRun: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true order_attributes: readOnly: true order_type: type: string readOnly: true order_offering: type: string format: uri nullable: true state: allOf: - $ref: '#/components/schemas/DryRunStateEnum' readOnly: true get_state_display: type: string readOnly: true output: type: string readOnly: true created: type: string format: date-time readOnly: true required: - created - get_state_display - order_attributes - order_type - output - state - url - uuid description: '' DryRunRequest: type: object properties: plan: type: string format: uri writeOnly: true nullable: true type: allOf: - $ref: '#/components/schemas/DryRunTypeEnum' writeOnly: true default: Create attributes: writeOnly: true order_offering: type: string format: uri nullable: true description: '' DryRunStateEnum: enum: - 1 - 2 - 3 - 4 type: integer description: '' DryRunTypeEnum: enum: - Create - Update - Terminate - Restore - Pull type: string description: '' EligibilityCheck: type: object description: '' properties: is_eligible: type: boolean restrictions: type: array items: type: string required: - is_eligible - restrictions EmailHook: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true is_active: type: boolean author_uuid: type: string format: uuid readOnly: true event_types: type: array items: $ref: '#/components/schemas/EventTypesEnum' event_groups: type: array items: $ref: '#/components/schemas/EventGroupsEnum' created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true hook_type: type: string readOnly: true author_fullname: type: string readOnly: true author_username: type: string readOnly: true author_email: type: string readOnly: true email: type: string format: email maxLength: 320 required: - author_email - author_fullname - author_username - author_uuid - created - email - hook_type - modified - url - uuid description: '' EmailHookRequest: type: object properties: is_active: type: boolean event_types: type: array items: $ref: '#/components/schemas/EventTypesEnum' event_groups: type: array items: $ref: '#/components/schemas/EventGroupsEnum' email: type: string format: email minLength: 1 maxLength: 320 required: - email description: '' EmailInvitationRequest: type: object description: '' properties: email: type: string format: email minLength: 1 description: Email address to send the invitation to invitation_message: type: string description: Custom message to include in invitation email max_assignments: type: integer minimum: 1 default: 5 required: - email EmailLog: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true sent_at: type: string format: date-time readOnly: true subject: type: string maxLength: 255 body: type: string emails: type: array items: type: string format: email maxLength: 254 required: - body - emails - sent_at - subject - url - uuid description: '' EndpointUUID: type: object properties: uuid: type: string format: uuid description: UUID of the access endpoint required: - uuid description: '' EndpointUUIDRequest: type: object properties: uuid: type: string format: uuid description: UUID of the access endpoint required: - uuid description: '' EntityTypeEnum: enum: - company - startup - nonprofit - government - other type: string description: '' EthertypeEnum: enum: - IPv4 - IPv6 type: string description: '' Event: type: object description: '' properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true event_type: type: string maxLength: 100 message: type: string context: readOnly: true required: [] EventGroupsEnum: enum: - access_subnets - auth - call - chat - credits - customers - invoices - offering_accounting - onboarding - permissions - projects - proposal - providers - resources - review - ssh - support - users - terms_of_service type: string description: '' EventMetadataResponse: type: object description: '' properties: event_groups: type: object additionalProperties: type: array items: enum: - access_subnet_creation_succeeded - access_subnet_deletion_succeeded - access_subnet_update_succeeded - allowed_offerings_have_been_updated - attachment_created - attachment_deleted - attachment_updated - auth_logged_in_with_saml2 - auth_logged_in_with_username - auth_logged_in_with_oauth - auth_logged_out - auth_logged_out_with_saml2 - auth_login_failed_with_username - block_creation_of_new_resources - block_modification_of_existing_resources - call_document_added - call_document_removed - create_of_credit_by_staff - custom_notification - customer_creation_succeeded - customer_deletion_succeeded - customer_update_succeeded - customer_permission_review_created - customer_permission_review_closed - droplet_resize_scheduled - droplet_resize_succeeded - freeipa_profile_created - freeipa_profile_deleted - freeipa_profile_disabled - freeipa_profile_enabled - invoice_canceled - invoice_created - invoice_item_created - invoice_item_deleted - invoice_item_updated - invoice_paid - issue_creation_succeeded - issue_deletion_succeeded - issue_update_succeeded - marketplace_offering_component_created - marketplace_offering_component_deleted - marketplace_offering_component_updated - marketplace_offering_created - marketplace_offering_role_created - marketplace_offering_role_deleted - marketplace_offering_role_updated - marketplace_offering_updated - marketplace_offering_user_created - marketplace_offering_user_updated - marketplace_offering_user_deleted - marketplace_offering_user_restriction_updated - marketplace_order_approved - marketplace_order_completed - marketplace_order_created - marketplace_order_failed - marketplace_order_rejected - marketplace_order_terminated - marketplace_order_unlinked - marketplace_plan_archived - marketplace_plan_component_current_price_updated - marketplace_plan_component_future_price_updated - marketplace_plan_component_quota_updated - marketplace_plan_created - marketplace_plan_updated - marketplace_plan_deleted - marketplace_resource_create_canceled - marketplace_resource_create_failed - marketplace_resource_create_requested - marketplace_resource_create_succeeded - marketplace_resource_downscaled - marketplace_resource_erred_on_backend - marketplace_resource_paused - marketplace_resource_terminate_canceled - marketplace_resource_terminate_failed - marketplace_resource_terminate_requested - marketplace_resource_terminate_succeeded - marketplace_resource_unlinked - marketplace_resource_update_canceled - marketplace_resource_update_end_date_succeeded - marketplace_resource_update_failed - marketplace_resource_update_limits_failed - marketplace_resource_update_limits_succeeded - marketplace_resource_update_requested - marketplace_resource_update_succeeded - marketplace_resource_user_created - marketplace_resource_user_deleted - notify_external_user - notify_organization_owners - notify_project_team - openstack_floating_ip_attached - openstack_floating_ip_connected - openstack_floating_ip_description_updated - openstack_floating_ip_detached - openstack_floating_ip_disconnected - openstack_network_cleaned - openstack_network_created - openstack_network_deleted - openstack_network_imported - openstack_network_pulled - openstack_network_updated - openstack_port_cleaned - openstack_port_created - openstack_port_deleted - openstack_port_imported - openstack_port_pulled - openstack_port_updated - openstack_router_updated - openstack_security_group_cleaned - openstack_security_group_created - openstack_security_group_deleted - openstack_security_group_imported - openstack_security_group_pulled - openstack_security_group_rule_cleaned - openstack_security_group_rule_created - openstack_security_group_rule_deleted - openstack_security_group_rule_imported - openstack_security_group_rule_updated - openstack_security_group_updated - openstack_security_group_added_remotely - openstack_security_group_removed_remotely - openstack_security_group_added_locally - openstack_security_group_removed_locally - openstack_server_group_cleaned - openstack_server_group_created - openstack_server_group_deleted - openstack_server_group_imported - openstack_server_group_pulled - openstack_subnet_cleaned - openstack_subnet_created - openstack_subnet_deleted - openstack_subnet_imported - openstack_subnet_pulled - openstack_subnet_updated - openstack_tenant_quota_limit_updated - payment_added - payment_created - payment_removed - policy_notification - project_creation_succeeded - project_deletion_succeeded - project_deletion_triggered - project_update_request_approved - project_update_request_created - project_update_request_rejected - project_update_succeeded - project_permission_review_created - project_permission_review_closed - proposal_canceled - proposal_document_added - proposal_document_removed - query_executed - reduction_of_customer_credit - reduction_of_customer_credit_due_to_minimal_consumption - reduction_of_customer_expected_consumption - reduction_of_project_credit - reduction_of_project_credit_due_to_minimal_consumption - reduction_of_project_expected_consumption - request_downscaling - request_pausing - resource_assign_floating_ip_failed - resource_assign_floating_ip_scheduled - resource_assign_floating_ip_succeeded - resource_attach_failed - resource_attach_scheduled - resource_attach_succeeded - resource_backup_creation_failed - resource_backup_creation_scheduled - resource_backup_creation_succeeded - resource_backup_deletion_failed - resource_backup_deletion_scheduled - resource_backup_deletion_succeeded - resource_backup_restoration_failed - resource_backup_restoration_scheduled - resource_backup_restoration_succeeded - resource_change_flavor_failed - resource_change_flavor_scheduled - resource_change_flavor_succeeded - resource_creation_failed - resource_creation_scheduled - resource_creation_succeeded - resource_deletion_failed - resource_deletion_scheduled - resource_deletion_succeeded - resource_detach_failed - resource_detach_scheduled - resource_detach_succeeded - resource_extend_failed - resource_extend_scheduled - resource_extend_succeeded - resource_extend_volume_failed - resource_extend_volume_scheduled - resource_extend_volume_succeeded - resource_import_succeeded - resource_pull_failed - resource_pull_scheduled - resource_pull_succeeded - resource_restart_failed - resource_restart_scheduled - resource_restart_succeeded - resource_retype_failed - resource_retype_scheduled - resource_retype_succeeded - resource_robot_account_created - resource_robot_account_deleted - resource_robot_account_state_changed - resource_robot_account_updated - resource_start_failed - resource_start_scheduled - resource_start_succeeded - resource_stop_failed - resource_stop_scheduled - resource_stop_succeeded - resource_unassign_floating_ip_failed - resource_unassign_floating_ip_scheduled - resource_unassign_floating_ip_succeeded - resource_update_allowed_address_pairs_failed - resource_update_allowed_address_pairs_scheduled - resource_update_allowed_address_pairs_succeeded - resource_update_floating_ips_failed - resource_update_floating_ips_scheduled - resource_update_floating_ips_succeeded - resource_update_ports_failed - resource_update_ports_scheduled - resource_update_ports_succeeded - resource_update_security_groups_failed - resource_update_security_groups_scheduled - resource_update_security_groups_succeeded - resource_update_succeeded - restrict_members - review_canceled - role_granted - role_revoked - role_updated - roll_back_customer_credit - roll_back_project_credit - service_account_created - service_account_deleted - service_account_updated - set_to_zero_overdue_credit - slurm_policy_evaluation - ssh_key_creation_succeeded - ssh_key_deletion_succeeded - terminate_resources - token_created - token_lifetime_updated - update_of_credit_by_staff - automatic_credit_adjustment - user_activated - user_creation_succeeded - user_data_accessed - user_deactivated - user_deactivated_no_roles - user_deletion_succeeded - user_details_update_succeeded - user_has_been_created_by_staff - user_password_updated - user_password_updated_by_staff - user_update_succeeded - user_group_invitation_updated - user_invitation_updated - user_invitation_deleted - terms_of_service_consent_granted - terms_of_service_consent_revoked - chat_session_accessed - chat_thread_accessed - chat_injection_detected - onboarding_verification_deleted - onboarding_verification_deleted_by_task type: string description: Map of event group keys to lists of event type enums from EventType required: - event_groups EventStats: type: object properties: year: type: integer readOnly: true month: type: integer readOnly: true count: type: integer readOnly: true required: - count - month - year description: '' EventSubscription: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true description: type: string maxLength: 4096 user: type: string format: uri readOnly: true user_uuid: type: string format: uuid readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_full_name: type: string readOnly: true observable_objects: description: 'List of objects to observe. Each item must have ''object_type'' (one of: order, user_role, resource, offering_user, importable_resources, service_account, course_account, resource_periodic_limits) and optionally ''object_id'' (integer). Example: [{"object_type": "resource"}, {"object_type": "order", "object_id": 123}]' created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true source_ip: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 readOnly: true nullable: true required: - created - modified - source_ip - url - user - user_full_name - user_username - user_uuid - uuid description: '' EventSubscriptionQueue: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true event_subscription: type: string format: uri readOnly: true event_subscription_uuid: type: string readOnly: true offering_uuid: type: string readOnly: true object_type: type: string description: Observable object type (e.g., 'resource', 'order') maxLength: 50 queue_name: type: string readOnly: true vhost: type: string readOnly: true created: type: string format: date-time readOnly: true required: - created - event_subscription - event_subscription_uuid - object_type - offering_uuid - queue_name - url - uuid - vhost EventSubscriptionQueueCreateRequest: type: object description: '' properties: offering_uuid: type: string format: uuid description: UUID of the offering to receive events for object_type: allOf: - $ref: '#/components/schemas/ObservableObjectTypeEnum' description: Type of observable object (e.g., 'resource', 'order') required: - object_type - offering_uuid EventSubscriptionQueuesOverview: type: object description: '' properties: total_vhosts: type: integer readOnly: true description: Total number of vhosts with subscription queues total_queues: type: integer readOnly: true description: Total number of subscription queues total_messages: type: integer readOnly: true description: Total messages across all subscription queues top_queues_by_messages: type: array items: $ref: '#/components/schemas/TopQueue' readOnly: true description: Top 10 queues by message count required: - top_queues_by_messages - total_messages - total_queues - total_vhosts EventSubscriptionRequest: type: object properties: description: type: string maxLength: 4096 observable_objects: description: 'List of objects to observe. Each item must have ''object_type'' (one of: order, user_role, resource, offering_user, importable_resources, service_account, course_account, resource_periodic_limits) and optionally ''object_id'' (integer). Example: [{"object_type": "resource"}, {"object_type": "order", "object_id": 123}]' description: '' EventTypesEnum: enum: - access_subnet_creation_succeeded - access_subnet_deletion_succeeded - access_subnet_update_succeeded - allowed_offerings_have_been_updated - attachment_created - attachment_deleted - attachment_updated - auth_logged_in_with_saml2 - auth_logged_in_with_username - auth_logged_in_with_oauth - auth_logged_out - auth_logged_out_with_saml2 - auth_login_failed_with_username - block_creation_of_new_resources - block_modification_of_existing_resources - call_document_added - call_document_removed - create_of_credit_by_staff - custom_notification - customer_creation_succeeded - customer_deletion_succeeded - customer_update_succeeded - customer_permission_review_created - customer_permission_review_closed - droplet_resize_scheduled - droplet_resize_succeeded - freeipa_profile_created - freeipa_profile_deleted - freeipa_profile_disabled - freeipa_profile_enabled - invoice_canceled - invoice_created - invoice_item_created - invoice_item_deleted - invoice_item_updated - invoice_paid - issue_creation_succeeded - issue_deletion_succeeded - issue_update_succeeded - marketplace_offering_component_created - marketplace_offering_component_deleted - marketplace_offering_component_updated - marketplace_offering_created - marketplace_offering_role_created - marketplace_offering_role_deleted - marketplace_offering_role_updated - marketplace_offering_updated - marketplace_offering_user_created - marketplace_offering_user_updated - marketplace_offering_user_deleted - marketplace_offering_user_restriction_updated - marketplace_order_approved - marketplace_order_completed - marketplace_order_created - marketplace_order_failed - marketplace_order_rejected - marketplace_order_terminated - marketplace_order_unlinked - marketplace_plan_archived - marketplace_plan_component_current_price_updated - marketplace_plan_component_future_price_updated - marketplace_plan_component_quota_updated - marketplace_plan_created - marketplace_plan_updated - marketplace_plan_deleted - marketplace_resource_create_canceled - marketplace_resource_create_failed - marketplace_resource_create_requested - marketplace_resource_create_succeeded - marketplace_resource_downscaled - marketplace_resource_erred_on_backend - marketplace_resource_paused - marketplace_resource_terminate_canceled - marketplace_resource_terminate_failed - marketplace_resource_terminate_requested - marketplace_resource_terminate_succeeded - marketplace_resource_unlinked - marketplace_resource_update_canceled - marketplace_resource_update_end_date_succeeded - marketplace_resource_update_failed - marketplace_resource_update_limits_failed - marketplace_resource_update_limits_succeeded - marketplace_resource_update_requested - marketplace_resource_update_succeeded - marketplace_resource_user_created - marketplace_resource_user_deleted - notify_external_user - notify_organization_owners - notify_project_team - openstack_floating_ip_attached - openstack_floating_ip_connected - openstack_floating_ip_description_updated - openstack_floating_ip_detached - openstack_floating_ip_disconnected - openstack_network_cleaned - openstack_network_created - openstack_network_deleted - openstack_network_imported - openstack_network_pulled - openstack_network_updated - openstack_port_cleaned - openstack_port_created - openstack_port_deleted - openstack_port_imported - openstack_port_pulled - openstack_port_updated - openstack_router_updated - openstack_security_group_cleaned - openstack_security_group_created - openstack_security_group_deleted - openstack_security_group_imported - openstack_security_group_pulled - openstack_security_group_rule_cleaned - openstack_security_group_rule_created - openstack_security_group_rule_deleted - openstack_security_group_rule_imported - openstack_security_group_rule_updated - openstack_security_group_updated - openstack_security_group_added_remotely - openstack_security_group_removed_remotely - openstack_security_group_added_locally - openstack_security_group_removed_locally - openstack_server_group_cleaned - openstack_server_group_created - openstack_server_group_deleted - openstack_server_group_imported - openstack_server_group_pulled - openstack_subnet_cleaned - openstack_subnet_created - openstack_subnet_deleted - openstack_subnet_imported - openstack_subnet_pulled - openstack_subnet_updated - openstack_tenant_quota_limit_updated - payment_added - payment_created - payment_removed - policy_notification - project_creation_succeeded - project_deletion_succeeded - project_deletion_triggered - project_update_request_approved - project_update_request_created - project_update_request_rejected - project_update_succeeded - project_permission_review_created - project_permission_review_closed - proposal_canceled - proposal_document_added - proposal_document_removed - query_executed - reduction_of_customer_credit - reduction_of_customer_credit_due_to_minimal_consumption - reduction_of_customer_expected_consumption - reduction_of_project_credit - reduction_of_project_credit_due_to_minimal_consumption - reduction_of_project_expected_consumption - request_downscaling - request_pausing - resource_assign_floating_ip_failed - resource_assign_floating_ip_scheduled - resource_assign_floating_ip_succeeded - resource_attach_failed - resource_attach_scheduled - resource_attach_succeeded - resource_backup_creation_failed - resource_backup_creation_scheduled - resource_backup_creation_succeeded - resource_backup_deletion_failed - resource_backup_deletion_scheduled - resource_backup_deletion_succeeded - resource_backup_restoration_failed - resource_backup_restoration_scheduled - resource_backup_restoration_succeeded - resource_change_flavor_failed - resource_change_flavor_scheduled - resource_change_flavor_succeeded - resource_creation_failed - resource_creation_scheduled - resource_creation_succeeded - resource_deletion_failed - resource_deletion_scheduled - resource_deletion_succeeded - resource_detach_failed - resource_detach_scheduled - resource_detach_succeeded - resource_extend_failed - resource_extend_scheduled - resource_extend_succeeded - resource_extend_volume_failed - resource_extend_volume_scheduled - resource_extend_volume_succeeded - resource_import_succeeded - resource_pull_failed - resource_pull_scheduled - resource_pull_succeeded - resource_restart_failed - resource_restart_scheduled - resource_restart_succeeded - resource_retype_failed - resource_retype_scheduled - resource_retype_succeeded - resource_robot_account_created - resource_robot_account_deleted - resource_robot_account_state_changed - resource_robot_account_updated - resource_start_failed - resource_start_scheduled - resource_start_succeeded - resource_stop_failed - resource_stop_scheduled - resource_stop_succeeded - resource_unassign_floating_ip_failed - resource_unassign_floating_ip_scheduled - resource_unassign_floating_ip_succeeded - resource_update_allowed_address_pairs_failed - resource_update_allowed_address_pairs_scheduled - resource_update_allowed_address_pairs_succeeded - resource_update_floating_ips_failed - resource_update_floating_ips_scheduled - resource_update_floating_ips_succeeded - resource_update_ports_failed - resource_update_ports_scheduled - resource_update_ports_succeeded - resource_update_security_groups_failed - resource_update_security_groups_scheduled - resource_update_security_groups_succeeded - resource_update_succeeded - restrict_members - review_canceled - role_granted - role_revoked - role_updated - roll_back_customer_credit - roll_back_project_credit - service_account_created - service_account_deleted - service_account_updated - set_to_zero_overdue_credit - slurm_policy_evaluation - ssh_key_creation_succeeded - ssh_key_deletion_succeeded - terminate_resources - token_created - token_lifetime_updated - update_of_credit_by_staff - automatic_credit_adjustment - user_activated - user_creation_succeeded - user_data_accessed - user_deactivated - user_deactivated_no_roles - user_deletion_succeeded - user_details_update_succeeded - user_has_been_created_by_staff - user_password_updated - user_password_updated_by_staff - user_update_succeeded - user_group_invitation_updated - user_invitation_updated - user_invitation_deleted - terms_of_service_consent_granted - terms_of_service_consent_revoked - chat_session_accessed - chat_thread_accessed - chat_injection_detected - onboarding_verification_deleted - onboarding_verification_deleted_by_task type: string description: '' ExecuteActionErrorResponse: type: object description: '' properties: error: type: string required: - error ExecuteActionRequest: type: object description: '' properties: action_label: type: string minLength: 1 description: Label of the corrective action to execute required: - action_label ExecuteActionResponse: type: object description: '' properties: action: type: string message: type: string redirect_url: type: string format: uri metadata: type: object additionalProperties: {} required: - action ExecutionModeEnum: enum: - production - emulator type: string description: '' ExecutionStateEnum: enum: - Scheduled - Processing - OK - Erred type: string description: '' ExpertiseCategory: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 code: type: string maxLength: 20 description: type: string maxLength: 4096 parent: type: string format: uri nullable: true level: type: integer maximum: 32767 minimum: 0 description: Depth in hierarchy (0 = root) required: - code - name - url - uuid ExportComponentData: type: object description: '' properties: type: type: string name: type: string description: type: string billing_type: type: string measured_unit: type: string unit_factor: type: number format: double nullable: true limit_period: type: string nullable: true limit_amount: type: integer nullable: true article_code: type: string backend_id: type: string required: - article_code - backend_id - billing_type - description - limit_amount - limit_period - measured_unit - name - type - unit_factor ExportComponentDataRequest: type: object description: '' properties: type: type: string minLength: 1 name: type: string minLength: 1 description: type: string billing_type: type: string minLength: 1 measured_unit: type: string minLength: 1 unit_factor: type: number format: double nullable: true limit_period: type: string nullable: true minLength: 1 limit_amount: type: integer nullable: true article_code: type: string backend_id: type: string required: - article_code - backend_id - billing_type - description - limit_amount - limit_period - measured_unit - name - type - unit_factor ExportEndpointData: type: object description: '' properties: name: type: string url: type: string format: uri required: - name - url ExportEndpointDataRequest: type: object description: '' properties: name: type: string minLength: 1 url: type: string format: uri minLength: 1 required: - name - url ExportFileData: type: object description: '' properties: name: type: string file_content: type: string filename: type: string content_type: type: string required: - content_type - file_content - filename - name ExportFileDataRequest: type: object description: '' properties: name: type: string minLength: 1 file_content: type: string filename: type: string content_type: type: string required: - content_type - file_content - filename - name ExportOfferingData: type: object description: '' properties: name: type: string description: type: string full_description: type: string vendor_details: type: string getting_started: type: string integration_guide: type: string type: type: string shared: type: boolean billable: type: boolean state: type: string category_name: type: string nullable: true country: type: string latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true access_url: type: string format: uri paused_reason: type: string attributes: {} options: {} required: - access_url - billable - category_name - country - description - full_description - getting_started - integration_guide - latitude - longitude - name - paused_reason - shared - state - type - vendor_details ExportOfferingDataRequest: type: object description: '' properties: name: type: string minLength: 1 description: type: string full_description: type: string vendor_details: type: string getting_started: type: string integration_guide: type: string type: type: string minLength: 1 shared: type: boolean billable: type: boolean state: type: string minLength: 1 category_name: type: string nullable: true minLength: 1 country: type: string latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true access_url: type: string format: uri paused_reason: type: string attributes: {} options: {} required: - access_url - billable - category_name - country - description - full_description - getting_started - integration_guide - latitude - longitude - name - paused_reason - shared - state - type - vendor_details ExportOrganizationGroupData: type: object description: '' properties: name: type: string parent_name: type: string nullable: true required: - name - parent_name ExportOrganizationGroupDataRequest: type: object description: '' properties: name: type: string minLength: 1 parent_name: type: string nullable: true minLength: 1 required: - name - parent_name ExportPlanComponentData: type: object description: '' properties: component_type: type: string nullable: true amount: type: integer price: type: number format: double future_price: type: number format: double nullable: true required: - amount - component_type - future_price - price ExportPlanComponentDataRequest: type: object description: '' properties: component_type: type: string nullable: true minLength: 1 amount: type: integer price: type: number format: double future_price: type: number format: double nullable: true required: - amount - component_type - future_price - price ExportPlanData: type: object description: '' properties: name: type: string description: type: string unit_price: type: number format: double unit: type: string archived: type: boolean max_amount: type: integer nullable: true article_code: type: string backend_id: type: string components: type: array items: $ref: '#/components/schemas/ExportPlanComponentData' required: - archived - article_code - backend_id - components - description - max_amount - name - unit - unit_price ExportPlanDataRequest: type: object description: '' properties: name: type: string minLength: 1 description: type: string unit_price: type: number format: double unit: type: string minLength: 1 archived: type: boolean max_amount: type: integer nullable: true article_code: type: string backend_id: type: string components: type: array items: $ref: '#/components/schemas/ExportPlanComponentDataRequest' required: - archived - article_code - backend_id - components - description - max_amount - name - unit - unit_price ExportScreenshotData: type: object description: '' properties: name: type: string description: type: string image_content: type: string image_filename: type: string content_type: type: string required: - content_type - description - image_content - image_filename - name ExportScreenshotDataRequest: type: object description: '' properties: name: type: string minLength: 1 description: type: string image_content: type: string image_filename: type: string content_type: type: string required: - content_type - description - image_content - image_filename - name ExportTermsOfServiceData: type: object description: '' properties: terms_of_service: type: string terms_of_service_link: type: string format: uri version: type: string is_active: type: boolean requires_reconsent: type: boolean grace_period_days: type: integer nullable: true required: - grace_period_days - is_active - requires_reconsent - terms_of_service - terms_of_service_link - version ExportTermsOfServiceDataRequest: type: object description: '' properties: terms_of_service: type: string terms_of_service_link: type: string format: uri version: type: string is_active: type: boolean requires_reconsent: type: boolean grace_period_days: type: integer nullable: true required: - grace_period_days - is_active - requires_reconsent - terms_of_service - terms_of_service_link - version ExportTypeCompatibility: type: object description: '' properties: reference: type: string name: type: string required_fields_total: type: integer required_fields_found: type: integer important_fields_total: type: integer important_fields_found: type: integer missing_required_fields: type: array items: type: string missing_important_fields: type: array items: type: string compatible: type: boolean recommended: type: boolean required: - compatible - important_fields_found - important_fields_total - missing_important_fields - missing_required_fields - name - recommended - reference - required_fields_found - required_fields_total ExtendDeadlineRequestRequest: type: object description: '' properties: expires_at: type: string format: date-time description: New expiration date and time for the assignment batch. required: - expires_at ExtendDeadlineResponse: type: object description: '' properties: expires_at: type: string format: date-time description: The updated expiration date. status: type: string description: Current status of the batch. required: - expires_at - status ExternalLink: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 link: type: string format: uri maxLength: 500 image: type: string format: uri nullable: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - created - link - modified - name - url - uuid description: '' ExternalLinkRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 link: type: string format: uri minLength: 1 maxLength: 500 image: type: string format: binary nullable: true required: - link - name description: '' ExternalNetwork: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 settings: type: string format: uri backend_id: type: string maxLength: 255 is_shared: type: boolean is_default: type: boolean status: type: string maxLength: 30 description: type: string maxLength: 4096 subnets: type: array items: $ref: '#/components/schemas/ExternalSubnet' readOnly: true required: [] ExternalNetworkResponse: type: object description: '' properties: id: type: string name: type: string is_shared: type: boolean subnets: type: array items: $ref: '#/components/schemas/ExternalNetworkSubnetResponse' required: - id - is_shared - name - subnets ExternalNetworkSubnetResponse: type: object description: '' properties: id: type: string name: type: string cidr: type: string gateway_ip: type: string ip_version: type: integer required: - cidr - gateway_ip - id - ip_version - name ExternalSubnet: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 backend_id: type: string maxLength: 255 cidr: type: string maxLength: 32 gateway_ip: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true ip_version: type: integer maximum: 32767 minimum: -32768 enable_dhcp: type: boolean allocation_pools: {} dns_nameservers: {} public_ip_range: type: string description: Public CIDR mapped to this subnet (for carrier-grade NAT overlay) maxLength: 32 description: type: string maxLength: 4096 required: [] description: '' FEDERATEDIDENTITYDEACTIVATIONPOLICYEnum: enum: - all_isds_removed - any_isd_removed type: string description: '' FONTFAMILYEnum: enum: - Inter - Maven Pro type: string description: '' FeatureMetadataResponse: type: object description: '' properties: features: type: array items: type: object additionalProperties: {} description: List of feature sections with descriptions feature_enums: type: object additionalProperties: type: object additionalProperties: type: string description: Nested feature enum values by section required: - feature_enums - features Feedback: type: object properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true evaluation: type: integer maximum: 10 minimum: 1 comment: type: string issue_uuid: type: string format: uuid readOnly: true user_full_name: type: string readOnly: true issue_key: type: string readOnly: true issue_summary: type: string readOnly: true required: - created - evaluation - issue_key - issue_summary - issue_uuid - modified - state - user_full_name - uuid description: '' FetchBillingExportRequestRequest: type: object description: '' properties: period_from: type: string minLength: 1 description: YYYY-MM format period_to: type: string minLength: 1 description: YYYY-MM format classification: type: string minLength: 1 required: - period_from - period_to FetchBillingExportResponse: type: object description: '' properties: period_from: type: string period_to: type: string classification: type: string row_count: type: integer data: type: array items: type: object additionalProperties: {} required: - classification - data - period_from - period_to - row_count FetchConsumptionRequestRequest: type: object description: '' properties: license_reference: type: string minLength: 1 period: type: string minLength: 1 description: YYYY-MM format required: - license_reference - period FetchConsumptionResponse: type: object description: '' properties: license_reference: type: string period: type: string row_count: type: integer data: type: array items: type: object additionalProperties: {} required: - data - license_reference - period - row_count FetchCustomerArrowDataResponse: type: object description: '' properties: customer_mapping_uuid: type: string format: uuid arrow_reference: type: string arrow_company_name: type: string waldur_customer_name: type: string period: type: string billing_available: type: boolean billing_lines: type: array items: $ref: '#/components/schemas/ArrowBillingLine' billing_total_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true billing_total_buy: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true consumption_lines: type: array items: $ref: '#/components/schemas/ArrowConsumptionLine' consumption_total_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true consumption_total_buy: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true total_customer_resources: type: integer description: Total number of resources for this customer in Waldur. resources_with_backend_id: type: integer description: Number of resources with backend_id set (Arrow license reference). matched_resources: type: integer description: Number of resources for which consumption was successfully fetched. error: type: string nullable: true required: - arrow_company_name - arrow_reference - billing_available - billing_lines - billing_total_buy - billing_total_sell - consumption_lines - consumption_total_buy - consumption_total_sell - customer_mapping_uuid - error - matched_resources - period - resources_with_backend_id - total_customer_resources - waldur_customer_name FetchLicenseInfoRequestRequest: type: object description: '' properties: license_reference: type: string minLength: 1 required: - license_reference FetchLicenseInfoResponse: type: object description: '' properties: data: type: object additionalProperties: {} description: Raw license data from Arrow API required: - data FinancialReport: type: object properties: name: type: string maxLength: 150 uuid: type: string format: uuid readOnly: true abbreviation: type: string maxLength: 12 created: type: string format: date-time readOnly: true accounting_start_date: type: string format: date-time title: Start date of accounting registration_code: type: string maxLength: 160 agreement_number: type: string maxLength: 160 payment_profiles: type: array items: $ref: '#/components/schemas/PaymentProfile' readOnly: true billing_price_estimate: allOf: - $ref: '#/components/schemas/NestedPriceEstimate' readOnly: true required: - billing_price_estimate - created - name - payment_profiles - uuid description: '' FinancialReportEmailRequest: type: object properties: emails: type: array items: type: string format: email minLength: 1 year: type: integer month: type: integer required: - emails - month - year description: '' Fingerprint: type: object properties: md5: type: string readOnly: true description: MD5 fingerprint of SSH key sha256: type: string readOnly: true description: SHA256 fingerprint of SSH key sha512: type: string readOnly: true description: SHA512 fingerprint of SSH key required: [] description: '' FirecrestJob: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true runtime_state: type: string maxLength: 100 file: type: string format: uri title: Batch script file user: type: string format: uri readOnly: true nullable: true description: Reference to user which submitted job user_uuid: type: string format: uuid readOnly: true nullable: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true nullable: true report: readOnly: true nullable: true title: Job output required: [] FirecrestJobRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri runtime_state: type: string maxLength: 100 file: type: string format: binary title: Batch script file required: - file - name - project - service_settings FlavorResponse: type: object description: '' properties: id: type: string name: type: string vcpus: type: integer ram: type: integer description: RAM in MB disk: type: integer description: Disk in GB required: - disk - id - name - ram - vcpus FreeipaProfile: type: object description: '' properties: uuid: type: string format: uuid readOnly: true username: type: string description: Letters, numbers and ./+/-/_ characters pattern: ^[a-zA-Z0-9_.][a-zA-Z0-9_.-]*[a-zA-Z0-9_.$-]?$ maxLength: 32 agreement_date: type: string format: date-time description: Indicates when the user has agreed with the policy. is_active: type: boolean readOnly: true title: Active user: type: string format: uri readOnly: true user_uuid: type: string format: uuid readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_full_name: type: string readOnly: true required: - is_active - user - user_full_name - user_username - user_uuid - username - uuid FreeipaProfileRequest: type: object description: '' properties: username: type: string minLength: 1 description: Letters, numbers and ./+/-/_ characters pattern: ^[a-zA-Z0-9_.][a-zA-Z0-9_.-]*[a-zA-Z0-9_.$-]?$ maxLength: 32 agreement_date: type: string format: date-time description: Indicates when the user has agreed with the policy. required: - username FrequencyEnum: enum: - weekly - biweekly - monthly type: string description: '' GenderEnum: enum: - 0 - 1 - 2 - 9 type: integer description: '' GenerateAssignmentsRequest: type: object description: '' properties: proposal_uuids: type: array items: type: string format: uuid description: Specific proposal UUIDs to generate assignments for. If empty, generates for all submitted proposals needing reviewers. reviewers_per_proposal: type: integer maximum: 20 minimum: 1 description: Number of reviewers to assign per proposal. If not specified, uses call's minimum_number_of_reviewers setting. GenerateAssignmentsResponse: type: object description: '' properties: batches_created: type: integer items_created: type: integer proposals_processed: type: integer skipped_proposals: type: array items: type: object additionalProperties: {} description: Proposals that were skipped with reasons required: - batches_created - items_created - proposals_processed - skipped_proposals GenerateSuggestionsRequestRequest: type: object description: '' properties: source: allOf: - $ref: '#/components/schemas/GenerateSuggestionsRequestSourceEnum' default: all_proposals description: What content to match reviewers against proposal_uuids: type: array items: type: string format: uuid description: Specific proposal UUIDs to match against (for selected_proposals source) keywords: type: array items: type: string minLength: 1 maxLength: 100 description: Custom keywords to search for (for custom_keywords source) keyword_search_mode: allOf: - $ref: '#/components/schemas/KeywordSearchModeEnum' default: expertise_only description: How to search for custom keywords min_affinity_threshold: type: number format: double maximum: 1.0 minimum: 0.0 description: Minimum affinity score for suggestions (0.0-1.0) GenerateSuggestionsRequestSourceEnum: enum: - call_description - all_proposals - selected_proposals - custom_keywords type: string description: '' GenerateSuggestionsResponse: type: object description: '' properties: suggestions_created: type: integer reviewers_evaluated: type: integer source_used: type: string suggestions: type: array items: type: string required: - reviewers_evaluated - source_used - suggestions - suggestions_created GlobalUserDataAccessLog: type: object description: '' properties: uuid: type: string format: uuid timestamp: type: string format: date-time accessor_type: $ref: '#/components/schemas/AccessorTypeEnum' accessed_fields: type: array items: type: string user: $ref: '#/components/schemas/TargetUser' accessor: $ref: '#/components/schemas/AccessorUser' ip_address: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true context: type: object additionalProperties: {} required: - accessed_fields - accessor - accessor_type - context - ip_address - timestamp - user - uuid GoogleCalendar: type: object properties: backend_id: type: string nullable: true maxLength: 255 public: type: boolean http_link: type: string readOnly: true required: [] description: '' GoogleCredentials: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true description: type: string maxLength: 4096 enable_notifications: type: boolean customer: type: string format: uri customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_image: type: string format: uri readOnly: true customer_abbreviation: type: string readOnly: true customer_slug: type: string readOnly: true customer_native_name: type: string readOnly: true customer_country: type: string readOnly: true image: type: string format: uri nullable: true organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true offering_count: type: integer readOnly: true calendar_token: type: string readOnly: true calendar_refresh_token: type: string readOnly: true google_auth_url: type: string readOnly: true required: [] GroupInvitation: type: object properties: scope_uuid: type: string format: uuid readOnly: true description: UUID of the invitation scope (Customer or Project) scope_name: type: string readOnly: true description: Name of the invitation scope scope_description: type: string description: Description of the invitation scope readOnly: true scope_type: type: string nullable: true readOnly: true description: Type of the invitation scope (e.g., 'customer', 'project') customer_uuid: type: string format: uuid readOnly: true description: UUID of the customer organization customer_name: type: string readOnly: true description: Name of the customer organization role_name: type: string readOnly: true description: Name of the role being granted (e.g., 'PROJECT.ADMIN') role_description: type: string readOnly: true description: Description of the role being granted created_by_full_name: type: string readOnly: true description: Full name of the user who created this invitation created_by_username: type: string readOnly: true description: Username of the user who created this invitation created_by_image: type: string format: uri readOnly: true description: Profile image of the user who created this invitation url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true role: type: string format: uuid description: UUID of the role to grant to the invited user created: type: string format: date-time readOnly: true is_active: type: boolean readOnly: true is_public: type: boolean description: Allow non-authenticated users to see and accept this invitation. Only staff can create public invitations. auto_create_project: type: boolean description: Create project and grant project permissions instead of customer permissions auto_approve: type: boolean description: Automatically approve permission requests from users matching email patterns or affiliations project_name_template: type: string nullable: true description: Template for project name. Supports {username}, {email}, {full_name} variables maxLength: 255 project_role: type: string format: uuid nullable: true description: UUID of the project role to grant if auto_create_project is enabled user_affiliations: {} user_email_patterns: {} user_identity_sources: description: List of allowed identity sources (identity providers). scope_image: type: string format: uri nullable: true readOnly: true description: Image URL of the invitation scope (Customer or Project) custom_text: type: string description: Custom description text displayed to users viewing this invitation. maxLength: 500 required: - created - created_by_full_name - created_by_image - created_by_username - customer_name - customer_uuid - is_active - role - role_description - role_name - scope_description - scope_image - scope_name - scope_type - scope_uuid - url - uuid description: '' GroupInvitationRequest: type: object properties: role: type: string format: uuid description: UUID of the role to grant to the invited user scope: type: string writeOnly: true description: URL of the scope (Customer or Project) for this invitation is_public: type: boolean description: Allow non-authenticated users to see and accept this invitation. Only staff can create public invitations. auto_create_project: type: boolean description: Create project and grant project permissions instead of customer permissions auto_approve: type: boolean description: Automatically approve permission requests from users matching email patterns or affiliations project_name_template: type: string nullable: true description: Template for project name. Supports {username}, {email}, {full_name} variables maxLength: 255 project_role: type: string format: uuid nullable: true description: UUID of the project role to grant if auto_create_project is enabled user_affiliations: {} user_email_patterns: {} user_identity_sources: description: List of allowed identity sources (identity providers). custom_text: type: string description: Custom description text displayed to users viewing this invitation. maxLength: 500 required: - role - scope description: '' GroupInvitationUpdate: type: object properties: is_public: type: boolean description: Allow non-authenticated users to see and accept this invitation. Only staff can create public invitations. role: type: string format: uuid description: UUID of the role to grant. scope: type: string description: URL of the scope (Customer or Project) for this invitation auto_create_project: type: boolean description: Create project and grant project permissions instead of customer permissions auto_approve: type: boolean description: Automatically approve permission requests from users matching email patterns or affiliations project_name_template: type: string nullable: true description: Template for project name. Supports {username}, {email}, {full_name} variables maxLength: 255 project_role: type: string format: uuid nullable: true description: UUID of the project role to grant if auto_create_project is enabled user_affiliations: {} user_email_patterns: {} user_identity_sources: description: List of allowed identity sources (identity providers). custom_text: type: string description: Custom description text displayed to users viewing this invitation. maxLength: 500 description: '' GroupInvitationUpdateRequest: type: object properties: is_public: type: boolean description: Allow non-authenticated users to see and accept this invitation. Only staff can create public invitations. role: type: string format: uuid description: UUID of the role to grant. scope: type: string description: URL of the scope (Customer or Project) for this invitation auto_create_project: type: boolean description: Create project and grant project permissions instead of customer permissions auto_approve: type: boolean description: Automatically approve permission requests from users matching email patterns or affiliations project_name_template: type: string nullable: true description: Template for project name. Supports {username}, {email}, {full_name} variables maxLength: 255 project_role: type: string format: uuid nullable: true description: UUID of the project role to grant if auto_create_project is enabled user_affiliations: {} user_email_patterns: {} user_identity_sources: description: List of allowed identity sources (identity providers). custom_text: type: string description: Custom description text displayed to users viewing this invitation. maxLength: 500 description: '' GrowthPeriodEnum: enum: - weekly - monthly type: string description: '' GuestOsEnum: enum: - DOS - WIN_31 - WIN_95 - WIN_98 - WIN_ME - WIN_NT - WIN_2000_PRO - WIN_2000_SERV - WIN_2000_ADV_SERV - WIN_XP_HOME - WIN_XP_PRO - WIN_XP_PRO_64 - WIN_NET_WEB - WIN_NET_STANDARD - WIN_NET_ENTERPRISE - WIN_NET_DATACENTER - WIN_NET_BUSINESS - WIN_NET_STANDARD_64 - WIN_NET_ENTERPRISE_64 - WIN_LONGHORN - WIN_LONGHORN_64 - WIN_NET_DATACENTER_64 - WIN_VISTA - WIN_VISTA_64 - WINDOWS_7 - WINDOWS_7_64 - WINDOWS_7_SERVER_64 - WINDOWS_8 - WINDOWS_8_64 - WINDOWS_8_SERVER_64 - WINDOWS_9 - WINDOWS_9_64 - WINDOWS_9_SERVER_64 - WINDOWS_HYPERV - FREEBSD - FREEBSD_64 - REDHAT - RHEL_2 - RHEL_3 - RHEL_3_64 - RHEL_4 - RHEL_4_64 - RHEL_5 - RHEL_5_64 - RHEL_6 - RHEL_6_64 - RHEL_7 - RHEL_7_64 - CENTOS - CENTOS_64 - CENTOS_6 - CENTOS_6_64 - CENTOS_7 - CENTOS_7_64 - ORACLE_LINUX - ORACLE_LINUX_64 - ORACLE_LINUX_6 - ORACLE_LINUX_6_64 - ORACLE_LINUX_7 - ORACLE_LINUX_7_64 - SUSE - SUSE_64 - SLES - SLES_64 - SLES_10 - SLES_10_64 - SLES_11 - SLES_11_64 - SLES_12 - SLES_12_64 - NLD_9 - OES - SJDS - MANDRAKE - MANDRIVA - MANDRIVA_64 - TURBO_LINUX - TURBO_LINUX_64 - UBUNTU - UBUNTU_64 - DEBIAN_4 - DEBIAN_4_64 - DEBIAN_5 - DEBIAN_5_64 - DEBIAN_6 - DEBIAN_6_64 - DEBIAN_7 - DEBIAN_7_64 - DEBIAN_8 - DEBIAN_8_64 - DEBIAN_9 - DEBIAN_9_64 - DEBIAN_10 - DEBIAN_10_64 - ASIANUX_3 - ASIANUX_3_64 - ASIANUX_4 - ASIANUX_4_64 - ASIANUX_5_64 - ASIANUX_7_64 - OPENSUSE - OPENSUSE_64 - FEDORA - FEDORA_64 - COREOS_64 - VMWARE_PHOTON_64 - OTHER_24X_LINUX - OTHER_24X_LINUX_64 - OTHER_26X_LINUX - OTHER_26X_LINUX_64 - OTHER_3X_LINUX - OTHER_3X_LINUX_64 - OTHER_LINUX - GENERIC_LINUX - OTHER_LINUX_64 - SOLARIS_6 - SOLARIS_7 - SOLARIS_8 - SOLARIS_9 - SOLARIS_10 - SOLARIS_10_64 - SOLARIS_11_64 - OS2 - ECOMSTATION - ECOMSTATION_2 - NETWARE_4 - NETWARE_5 - NETWARE_6 - OPENSERVER_5 - OPENSERVER_6 - UNIXWARE_7 - DARWIN - DARWIN_64 - DARWIN_10 - DARWIN_10_64 - DARWIN_11 - DARWIN_11_64 - DARWIN_12_64 - DARWIN_13_64 - DARWIN_14_64 - DARWIN_15_64 - DARWIN_16_64 - VMKERNEL - VMKERNEL_5 - VMKERNEL_6 - VMKERNEL_65 - OTHER - OTHER_64 type: string description: '' GuestPowerStateEnum: enum: - RUNNING - SHUTTING_DOWN - RESETTING - STANDBY - NOT_RUNNING - UNAVAILABLE type: string description: '' IPMapping: type: object properties: floating_ip: type: string description: Floating IP external_ip: type: string description: External IP required: [] description: '' IPMappingRequest: type: object properties: floating_ip: type: string minLength: 1 description: Floating IP external_ip: type: string minLength: 1 description: External IP required: - external_ip - floating_ip description: '' ISDUserCount: type: object description: '' properties: isd: type: string user_count: type: integer stale_user_count: type: integer oldest_sync: type: string nullable: true required: - isd - oldest_sync - stale_user_count - user_count IdentityBridgeRemoveRequest: type: object properties: username: type: string minLength: 1 description: CUID / username of the user to remove from the ISD. maxLength: 128 source: type: string minLength: 1 description: ISD source identifier, e.g. 'isd:puhuri'. Must match ^[a-z]+:[a-zA-Z0-9._-]+$. maxLength: 100 required: - source - username description: '' IdentityBridgeRemoveResult: type: object properties: uuid: type: string format: uuid deactivated: type: boolean required: - deactivated - uuid description: '' IdentityBridgeRequestRequest: type: object properties: username: type: string minLength: 1 description: CUID / username of the user to create or update. maxLength: 128 source: type: string minLength: 1 description: ISD source identifier, e.g. 'isd:puhuri'. Must match ^[a-z]+:[a-zA-Z0-9._-]+$. maxLength: 100 first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 email: type: string format: email organization: type: string maxLength: 255 affiliations: type: array items: type: string minLength: 1 civil_number: type: string maxLength: 50 phone_number: type: string maxLength: 255 identity_source: type: string maxLength: 50 gender: type: integer nullable: true personal_title: type: string maxLength: 50 birth_date: type: string format: date nullable: true place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string maxLength: 2 nationalities: type: array items: type: string minLength: 1 organization_country: type: string maxLength: 2 organization_type: type: string maxLength: 255 eduperson_assurance: type: array items: type: string minLength: 1 required: - source - username description: '' IdentityBridgeResult: type: object properties: uuid: type: string format: uuid created: type: boolean updated_fields: type: array items: type: string required: - created - updated_fields - uuid description: '' IdentityBridgeStats: type: object description: '' properties: enabled: type: boolean deactivation_policy: type: string allowed_attributes: type: array items: type: string total_federated_users: type: integer total_active_federated_users: type: integer users_per_isd: type: array items: $ref: '#/components/schemas/ISDUserCount' stale_threshold_days: type: integer identity_managers: type: array items: $ref: '#/components/schemas/IdentityManager' required: - allowed_attributes - deactivation_policy - enabled - identity_managers - stale_threshold_days - total_active_federated_users - total_federated_users - users_per_isd IdentityBridgeUserStatus: type: object description: '' properties: active_isds: type: array items: type: string managed_isds: type: array items: type: string attribute_sources: type: object additionalProperties: $ref: '#/components/schemas/AttributeSourceDetail' stale_attributes: type: array items: type: string effective_bridge_fields: type: array items: type: string is_federated: type: boolean required: - active_isds - attribute_sources - effective_bridge_fields - is_federated - managed_isds - stale_attributes IdentityManager: type: object description: '' properties: uuid: type: string format: uuid full_name: type: string managed_isds: type: array items: type: string required: - full_name - managed_isds - uuid IdentityProvider: type: object properties: provider: type: string maxLength: 32 is_active: type: boolean client_id: type: string description: ID of application used for OAuth authentication. maxLength: 200 client_secret: type: string description: Application secret key. maxLength: 200 verify_ssl: type: boolean enable_post_logout_redirect: type: boolean enable_pkce: type: boolean discovery_url: type: string description: The endpoint for endpoint discovery. maxLength: 200 userinfo_url: type: string readOnly: true description: The endpoint for fetching user info. token_url: type: string readOnly: true description: The endpoint for obtaining auth token. auth_url: type: string readOnly: true description: The endpoint for authorization request flow. logout_url: type: string readOnly: true description: The endpoint used to redirect after sign-out. label: type: string description: Human-readable identity provider is label. maxLength: 200 management_url: type: string description: The endpoint for user details management. maxLength: 200 protected_fields: {} extra_scope: type: string nullable: true description: Space-separated list of scopes to request during authentication. maxLength: 200 user_field: type: string description: The field in Waldur User model to be used for looking up the user maxLength: 100 user_claim: type: string description: The OIDC claim from the userinfo endpoint to be used as the value for the lookup field. maxLength: 100 attribute_mapping: description: 'A JSON object mapping Waldur User model fields to OIDC claims. Example: {"first_name": "given_name", "last_name": "family_name", "email": "email"}' extra_fields: type: string nullable: true description: Space-separated list of extra fields to persist. maxLength: 200 allowed_redirects: description: 'List of allowed redirect URLs for OAuth authentication. URLs must be exact matches (origin only: scheme + domain + port). HTTPS required except for localhost. No wildcards, paths, query params, or fragments. Example: ["https://portal1.example.com", "https://portal2.example.com:8443"]. If empty, falls back to HOMEPORT_URL setting.' required: - auth_url - client_id - client_secret - discovery_url - label - logout_url - provider - token_url - userinfo_url description: '' IdentityProviderRequest: type: object properties: provider: type: string minLength: 1 maxLength: 32 is_active: type: boolean client_id: type: string minLength: 1 description: ID of application used for OAuth authentication. maxLength: 200 client_secret: type: string minLength: 1 description: Application secret key. maxLength: 200 verify_ssl: type: boolean enable_post_logout_redirect: type: boolean enable_pkce: type: boolean discovery_url: type: string minLength: 1 description: The endpoint for endpoint discovery. maxLength: 200 label: type: string minLength: 1 description: Human-readable identity provider is label. maxLength: 200 management_url: type: string description: The endpoint for user details management. maxLength: 200 protected_fields: {} extra_scope: type: string nullable: true description: Space-separated list of scopes to request during authentication. maxLength: 200 user_field: type: string minLength: 1 description: The field in Waldur User model to be used for looking up the user maxLength: 100 user_claim: type: string minLength: 1 description: The OIDC claim from the userinfo endpoint to be used as the value for the lookup field. maxLength: 100 attribute_mapping: description: 'A JSON object mapping Waldur User model fields to OIDC claims. Example: {"first_name": "given_name", "last_name": "family_name", "email": "email"}' extra_fields: type: string nullable: true description: Space-separated list of extra fields to persist. maxLength: 200 allowed_redirects: description: 'List of allowed redirect URLs for OAuth authentication. URLs must be exact matches (origin only: scheme + domain + port). HTTPS required except for localhost. No wildcards, paths, query params, or fragments. Example: ["https://portal1.example.com", "https://portal2.example.com:8443"]. If empty, falls back to HOMEPORT_URL setting.' required: - client_id - client_secret - discovery_url - label - provider description: '' ImageCreateRequest: type: object properties: name: type: string minLength: 1 min_ram: type: integer default: 0 min_disk: type: integer default: 0 disk_format: allOf: - $ref: '#/components/schemas/DiskFormatEnum' default: qcow2 container_format: allOf: - $ref: '#/components/schemas/ContainerFormatEnum' default: bare visibility: allOf: - $ref: '#/components/schemas/VisibilityEnum' default: private required: - name description: '' ImageCreateResponse: type: object properties: image_id: type: string format: uuid name: type: string status: type: string upload_url: type: string required: - image_id - name - status - upload_url description: '' ImageUploadResponse: type: object properties: status: type: string message: type: string required: - message - status description: '' ImpactLevelDisplayEnum: enum: - No impact - Degraded performance - Partial outage - Full outage type: string description: '' ImpactLevelEnum: enum: - 1 - 2 - 3 - 4 type: integer description: '' ImportLicenseRequestRequest: type: object description: '' properties: license_reference: type: string minLength: 1 description: Arrow license reference (e.g., XSP12345). Will be set as backend_id. license_name: type: string minLength: 1 description: Name for the new resource. Defaults to license_reference if not provided. offering_uuid: type: string format: uuid description: UUID of the Waldur offering to create the resource under. project_uuid: type: string format: uuid description: UUID of the project to create the resource in. required: - license_reference - offering_uuid - project_uuid ImportLicenseResponse: type: object description: '' properties: resource_uuid: type: string format: uuid resource_name: type: string license_reference: type: string offering_name: type: string project_name: type: string success: type: boolean required: - license_reference - offering_name - project_name - resource_name - resource_uuid - success ImportPublicationsRequest: type: object description: '' properties: source: allOf: - $ref: '#/components/schemas/ImportPublicationsSourceEnum' default: orcid description: Source to import publications from doi: type: string description: DOI of publication to import (required if source is 'doi') ImportPublicationsSourceEnum: enum: - orcid - doi type: string description: '' ImportRemoteGroupRequest: type: object properties: offering_uuid: type: string format: uuid role_uuid: type: string format: uuid remote_group_id: type: string minLength: 1 resource_uuid: type: string format: uuid nullable: true scope_id: type: string default: '' required: - offering_uuid - remote_group_id - role_uuid description: '' ImportResourceRequest: type: object properties: backend_id: type: string minLength: 1 description: Backend identifier of the resource project: type: string format: uuid description: Target project for the resource plan: type: string format: uuid additional_details: writeOnly: true nullable: true default: {} required: - backend_id - project description: '' ImportUsageItemRequest: type: object properties: customer_name: type: string customer_uuid: type: string format: uuid name: type: string minLength: 1 unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ article_code: type: string service_provider_name: type: string offering_name: type: string plan_name: type: string required: - name - unit_price description: '' ImportUsageRequest: type: object properties: year: type: integer maximum: 2100 minimum: 2000 month: type: integer maximum: 12 minimum: 1 items: type: array items: $ref: '#/components/schemas/ImportUsageItemRequest' required: - items - month - year description: '' ImportUsageResponse: type: object properties: created: type: integer skipped: type: integer errors: type: array items: type: object additionalProperties: type: string required: - created - errors - skipped description: '' ImportableResource: type: object properties: backend_id: type: string description: Backend identifier of the resource name: type: string description: Name of the resource type: type: string description: Type of the resource description: type: string description: Description of the resource required: - backend_id - description - name - type description: '' InjectionSeverityEnum: enum: - none - low - medium - high - critical type: string description: '' InstanceFlavorChangeRequest: type: object properties: flavor: type: string format: uri description: The new flavor to use for the instance. Flavor change can only be done when instance is stopped. required: - flavor description: '' IntegrationStatus: type: object properties: agent_type: allOf: - $ref: '#/components/schemas/AgentTypeEnum' readOnly: true status: type: string readOnly: true last_request_timestamp: type: string format: date-time readOnly: true nullable: true title: Time of latest backend request service_name: type: string maxLength: 150 required: [] description: '' IntegrationStatusDetails: type: object properties: status: type: string readOnly: true last_request_timestamp: type: string format: date-time readOnly: true nullable: true title: Time of latest backend request offering: type: string format: uri url: type: string format: uri readOnly: true required: - last_request_timestamp - offering - status - url description: '' Invitation: type: object properties: scope_uuid: type: string format: uuid readOnly: true description: UUID of the invitation scope (Customer or Project) scope_name: type: string readOnly: true description: Name of the invitation scope scope_description: type: string description: Description of the invitation scope readOnly: true scope_type: type: string nullable: true readOnly: true description: Type of the invitation scope (e.g., 'customer', 'project') customer_uuid: type: string format: uuid readOnly: true description: UUID of the customer organization customer_name: type: string readOnly: true description: Name of the customer organization role_name: type: string readOnly: true description: Name of the role being granted (e.g., 'PROJECT.ADMIN') role_description: type: string readOnly: true description: Description of the role being granted created_by_full_name: type: string readOnly: true description: Full name of the user who created this invitation created_by_username: type: string readOnly: true description: Username of the user who created this invitation created_by_image: type: string format: uri readOnly: true description: Profile image of the user who created this invitation url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true role: type: string format: uuid description: UUID of the role to grant to the invited user created: type: string format: date-time readOnly: true expires: type: string format: date-time readOnly: true description: Expiration date and time of the invitation full_name: type: string maxLength: 100 native_name: type: string maxLength: 100 phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 job_title: type: string maxLength: 120 email: type: string format: email description: Invitation link will be sent to this email. Note that user can accept invitation with different email. maxLength: 254 civil_number: type: string description: Civil number of invited user. If civil number is not defined any user can accept invitation. maxLength: 50 state: allOf: - $ref: '#/components/schemas/InvitationStateEnum' readOnly: true error_message: type: string readOnly: true extra_invitation_text: type: string maxLength: 250 execution_state: allOf: - $ref: '#/components/schemas/ExecutionStateEnum' readOnly: true required: - created - created_by_full_name - created_by_image - created_by_username - customer_name - customer_uuid - email - error_message - execution_state - expires - role - role_description - role_name - scope_description - scope_name - scope_type - scope_uuid - state - url - uuid description: '' InvitationAcceptError: type: object description: '' properties: error: type: string message: type: string profile_url: type: string required: - error - message InvitationAcceptRequest: type: object description: '' properties: declared_conflicts: type: array items: $ref: '#/components/schemas/SelfDeclaredConflictRequest' description: Optional list of self-declared conflicts with proposals. Each conflict creates a ConflictOfInterest record with detection_method='self_disclosed'. InvitationAcceptResponse: type: object description: '' properties: detail: type: string declared_conflicts: type: array items: type: string format: uuid description: UUIDs of created conflict records required: - detail InvitationAuthError: type: object description: '' properties: error: type: string required: - error InvitationCOIConfiguration: type: object description: '' properties: recusal_required_types: type: array items: type: string description: COI types requiring automatic recusal management_allowed_types: type: array items: type: string description: COI types where a management plan can be submitted disclosure_only_types: type: array items: type: string description: COI types that only need disclosure proposal_disclosure_level: type: string description: How much proposal info is disclosed to reviewers required: - disclosure_only_types - management_allowed_types - proposal_disclosure_level - recusal_required_types InvitationCheck: type: object properties: email: type: string format: email description: Email address to check for existing invitations civil_number_required: type: boolean description: Whether civil number verification is required required: - email description: '' InvitationDeclineRequest: type: object description: '' properties: reason: type: string minLength: 1 description: Reason for declining the invitation required: - reason InvitationDeclineResponse: type: object description: '' properties: detail: type: string required: - detail InvitationDuplicate: type: object properties: email: type: string format: email role: type: string format: uuid existing_invitation_uuid: type: string format: uuid nullable: true required: - email - role description: '' InvitationDuplicateCheckItemRequest: type: object properties: email: type: string format: email minLength: 1 role: type: string format: uuid description: UUID of the role to grant to the invited user required: - email - role description: '' InvitationDuplicateCheckRequest: type: object properties: scope: type: string description: URL of the scope (Customer or Project) for this invitation list invitations: type: array items: $ref: '#/components/schemas/InvitationDuplicateCheckItemRequest' required: - invitations - scope description: '' InvitationDuplicateCheckResponse: type: object properties: duplicates: type: array items: $ref: '#/components/schemas/InvitationDuplicate' required: - duplicates description: '' InvitationProposalDisclosureEnum: enum: - titles_only - titles_and_summaries - full_details type: string description: '' InvitationProposalSummary: type: object description: '' properties: uuid: type: string format: uuid name: type: string summary: type: string nullable: true required: - name - uuid InvitationRequest: type: object properties: role: type: string format: uuid description: UUID of the role to grant to the invited user scope: type: string writeOnly: true description: URL of the scope (Customer or Project) for this invitation full_name: type: string maxLength: 100 native_name: type: string maxLength: 100 phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 job_title: type: string maxLength: 120 email: type: string format: email minLength: 1 description: Invitation link will be sent to this email. Note that user can accept invitation with different email. maxLength: 254 civil_number: type: string description: Civil number of invited user. If civil number is not defined any user can accept invitation. maxLength: 50 extra_invitation_text: type: string maxLength: 250 required: - email - role - scope description: '' InvitationState: enum: - project - requested - rejected - pending - accepted - canceled - expired type: string description: '' InvitationStateEnum: enum: - project - requested - rejected - pending - accepted - canceled - expired type: string description: '' InvitationStatusEnum: enum: - pending - accepted - declined - expired type: string description: '' InvitationUpdate: type: object properties: email: type: string format: email description: Invitation link will be sent to this email. Note that user can accept invitation with different email. maxLength: 254 role: type: string format: uuid description: UUID of the new role to assign. Must be compatible with the invitation scope. required: - email description: '' InvitationUpdateRequest: type: object properties: email: type: string format: email minLength: 1 description: Invitation link will be sent to this email. Note that user can accept invitation with different email. maxLength: 254 role: type: string format: uuid description: UUID of the new role to assign. Must be compatible with the invitation scope. required: - email description: '' Invoice: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true number: type: integer readOnly: true customer: type: string format: uri title: Organization price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ tax: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ total: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ state: $ref: '#/components/schemas/InvoiceStateEnum' year: type: integer maximum: 32767 minimum: 0 month: type: integer maximum: 12 minimum: 1 issuer_details: allOf: - $ref: '#/components/schemas/CustomerDetails' readOnly: true invoice_date: type: string format: date nullable: true description: Date then invoice moved from state pending to created. due_date: type: string format: date customer_details: $ref: '#/components/schemas/CustomerDetails' items: type: array items: $ref: '#/components/schemas/InvoiceItem' readOnly: true backend_id: type: string maxLength: 255 payment_url: type: string format: uri description: URL for initiating payment via payment gateway. maxLength: 200 reference_number: type: string description: Reference number associated with the invoice. maxLength: 300 compensations: type: number format: double readOnly: true incurred_costs: type: number format: double readOnly: true required: [] InvoiceCost: type: object properties: price: type: number format: double readOnly: true year: type: integer readOnly: true month: type: integer readOnly: true items: type: array items: $ref: '#/components/schemas/InvoiceCostItem' required: - month - price - year description: '' InvoiceCostItem: type: object properties: name: type: string readOnly: true unit_price: type: string format: decimal pattern: ^-?\d{0,10}(?:\.\d{0,10})?$ readOnly: true unit: type: string readOnly: true quantity: type: string format: decimal pattern: ^-?\d{0,10}(?:\.\d{0,10})?$ readOnly: true measured_unit: type: string readOnly: true price: type: number format: double readOnly: true required: - measured_unit - name - price - quantity - unit - unit_price description: '' InvoiceGrowth: type: object properties: periods: type: array items: type: string readOnly: true total_periods: type: array items: type: number format: double readOnly: true other_periods: type: array items: type: number format: double readOnly: true customer_periods: type: array items: $ref: '#/components/schemas/InvoiceGrowthCustomerPeriod' required: - customer_periods - other_periods - periods - total_periods description: '' InvoiceGrowthCustomerPeriod: type: object properties: name: type: string readOnly: true periods: type: array items: type: number format: double readOnly: true required: - name - periods description: '' InvoiceItem: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string price: type: number format: double readOnly: true tax: type: string format: decimal pattern: ^-?\d{0,8}(?:\.\d{0,2})?$ total: type: string format: decimal pattern: ^-?\d{0,20}(?:\.\d{0,2})?$ unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' factor: type: integer readOnly: true measured_unit: type: string readOnly: true start: type: string format: date-time description: Date and time when item usage has started. end: type: string format: date-time description: Date and time when item usage has ended. article_code: type: string maxLength: 30 project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true nullable: true quantity: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ details: $ref: '#/components/schemas/InvoiceItemDetails' resource: type: string format: uri nullable: true resource_uuid: type: string format: uuid readOnly: true resource_name: type: string readOnly: true billing_type: type: string readOnly: true backend_uuid: type: string format: uuid readOnly: true nullable: true credit: type: boolean readOnly: true required: [] description: '' InvoiceItemCompensation: type: object properties: offering_component_name: type: string description: Name of the offering component for compensation required: - offering_component_name description: '' InvoiceItemCompensationRequest: type: object properties: offering_component_name: type: string minLength: 1 description: Name of the offering component for compensation required: - offering_component_name description: '' InvoiceItemDetail: type: object properties: invoice: type: string format: uri resource: type: string format: uri nullable: true uuid: type: string format: uuid readOnly: true article_code: type: string maxLength: 30 unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' quantity: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 name: type: string start: type: string format: date-time description: Date and time when item usage has started. end: type: string format: date-time description: Date and time when item usage has ended. price: type: number format: double readOnly: true details: description: Stores data about scope offering_uuid: type: string format: uuid readOnly: true offering_name: type: string nullable: true readOnly: true offering_component_type: type: string nullable: true readOnly: true project_uuid: type: string format: uuid readOnly: true nullable: true project_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true required: - customer_name - customer_uuid - invoice - offering_component_type - offering_name - offering_uuid - price - project_name - project_uuid - uuid description: '' InvoiceItemDetails: type: object properties: resource_name: type: string description: Name of the marketplace resource resource_uuid: type: string format: uuid description: UUID of the marketplace resource plan_name: type: string description: Name of the pricing plan plan_uuid: type: string format: uuid description: UUID of the pricing plan offering_type: type: string description: Type of the offering offering_name: type: string description: Name of the offering offering_uuid: type: string format: uuid description: UUID of the offering service_provider_name: type: string description: Name of the service provider service_provider_uuid: type: string format: uuid description: UUID of the service provider plan_component_id: type: integer description: ID of the plan component offering_component_type: type: string description: Type of the offering component offering_component_name: type: string description: Name of the offering component resource_limit_periods: type: array items: $ref: '#/components/schemas/ResourceLimitPeriod' description: List of resource limit periods for this invoice item required: [] description: '' InvoiceItemMigrateTo: type: object properties: invoice: type: string format: uri required: - invoice description: '' InvoiceItemMigrateToRequest: type: object properties: invoice: type: string format: uri required: - invoice description: '' InvoiceItemTotalPrice: type: object properties: total_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ description: Total price for the invoice item required: - total_price description: '' InvoiceItemUpdate: type: object properties: article_code: type: string maxLength: 30 quantity: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ start: type: string format: date-time description: Date and time when item usage has started. end: type: string format: date-time description: Date and time when item usage has ended. description: '' InvoiceItemUpdateRequest: type: object properties: article_code: type: string maxLength: 30 quantity: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ start: type: string format: date-time description: Date and time when item usage has started. end: type: string format: date-time description: Date and time when item usage has ended. description: '' InvoicePriceSourceEnum: enum: - sell - buy type: string description: '' InvoiceStateEnum: enum: - pending - pending_finalization - created - paid - canceled type: string description: '' InvoiceStatsOffering: type: object properties: offering_name: type: string readOnly: true aggregated_price: type: number format: double readOnly: true aggregated_tax: type: number format: double readOnly: true aggregated_total: type: number format: double readOnly: true service_category_title: type: string readOnly: true service_provider_name: type: string readOnly: true service_provider_uuid: type: string format: uuid readOnly: true required: - aggregated_price - aggregated_tax - aggregated_total - offering_name - service_category_title - service_provider_name - service_provider_uuid description: '' Issue: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true type: type: string key: type: string readOnly: true backend_id: type: string readOnly: true nullable: true backend_name: type: string readOnly: true nullable: true remote_id: type: string nullable: true maxLength: 255 link: type: string format: uri readOnly: true description: Link to issue in support system. summary: type: string maxLength: 255 description: type: string status: type: string readOnly: true resolution: type: string readOnly: true priority: type: string maxLength: 255 caller: type: string format: uri nullable: true caller_uuid: type: string format: uuid readOnly: true nullable: true caller_full_name: type: string readOnly: true nullable: true reporter: type: string format: uri readOnly: true reporter_uuid: type: string format: uuid readOnly: true nullable: true reporter_name: type: string readOnly: true nullable: true assignee: type: string format: uri nullable: true assignee_uuid: type: string format: uuid readOnly: true nullable: true assignee_name: type: string readOnly: true nullable: true customer: type: string format: uri nullable: true title: Organization customer_uuid: type: string format: uuid readOnly: true nullable: true customer_name: type: string readOnly: true nullable: true project: type: string format: uri nullable: true project_uuid: type: string format: uuid readOnly: true nullable: true project_name: type: string readOnly: true nullable: true resource: type: string resource_type: type: string readOnly: true resource_name: type: string readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true template: type: string format: uri nullable: true feedback: allOf: - $ref: '#/components/schemas/NestedFeedback' readOnly: true nullable: true resolved: type: boolean nullable: true readOnly: true update_is_available: type: boolean readOnly: true destroy_is_available: type: boolean readOnly: true add_comment_is_available: type: boolean readOnly: true add_attachment_is_available: type: boolean readOnly: true processing_log: readOnly: true description: Internal processing log for debugging order lifecycle events. Visible only to staff. order_uuid: type: string nullable: true description: Return order UUID if the issue's resource is an Order. readOnly: true order_project_uuid: type: string nullable: true description: Return order's project UUID if the issue's resource is an Order. readOnly: true order_customer_uuid: type: string nullable: true description: Return order's customer UUID if the issue's resource is an Order. readOnly: true order_resource_name: type: string nullable: true description: Return order's resource name if the issue's resource is an Order. readOnly: true required: - add_attachment_is_available - add_comment_is_available - assignee_name - assignee_uuid - backend_id - backend_name - caller_full_name - caller_uuid - created - customer_name - customer_uuid - destroy_is_available - feedback - key - link - modified - order_customer_uuid - order_project_uuid - order_resource_name - order_uuid - processing_log - project_name - project_uuid - reporter - reporter_name - reporter_uuid - resolution - resolved - resource_name - resource_type - status - summary - type - update_is_available - url - uuid IssueReference: type: object properties: key: type: string readOnly: true uuid: type: string readOnly: true required: [] description: '' IssueRequest: type: object description: '' properties: type: type: string minLength: 1 remote_id: type: string nullable: true maxLength: 255 summary: type: string minLength: 1 maxLength: 255 description: type: string priority: type: string maxLength: 255 caller: type: string format: uri nullable: true assignee: type: string format: uri nullable: true customer: type: string format: uri nullable: true title: Organization project: type: string format: uri nullable: true resource: type: string is_reported_manually: type: boolean writeOnly: true default: false description: Set true if issue is created by regular user via portal. template: type: string format: uri nullable: true required: - summary - type IssueStatus: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string description: Status name in Jira. maxLength: 255 type: allOf: - $ref: '#/components/schemas/IssueStatusType' minimum: -2147483648 maximum: 2147483647 type_display: type: string readOnly: true required: - name - type_display - url - uuid description: '' IssueStatusCreate: type: object description: '' properties: name: type: string description: Status name in Jira. maxLength: 255 type: allOf: - $ref: '#/components/schemas/IssueStatusType' minimum: -2147483648 maximum: 2147483647 required: - name IssueStatusCreateRequest: type: object description: '' properties: name: type: string minLength: 1 description: Status name in Jira. maxLength: 255 type: allOf: - $ref: '#/components/schemas/IssueStatusType' minimum: -2147483648 maximum: 2147483647 required: - name IssueStatusType: enum: - 0 - 1 type: integer description: '' IssueTypeEnum: enum: - INFORMATIONAL - SERVICE_REQUEST - CHANGE_REQUEST - INCIDENT type: string description: '' JiraChangelog: type: object properties: items: type: array items: {} description: List of changelog items required: - items description: '' JiraChangelogRequest: type: object properties: items: type: array items: {} description: List of changelog items required: - items description: '' JiraComment: type: object properties: id: type: string description: Jira comment ID required: - id description: '' JiraCommentRequest: type: object properties: id: type: string minLength: 1 description: Jira comment ID required: - id description: '' JiraIssue: type: object properties: key: type: string description: Jira issue key fields: $ref: '#/components/schemas/JiraIssueFields' required: - fields - key description: '' JiraIssueFields: type: object properties: project: $ref: '#/components/schemas/JiraIssueProject' comment: type: object additionalProperties: {} required: - project description: '' JiraIssueFieldsRequest: type: object properties: project: $ref: '#/components/schemas/JiraIssueProjectRequest' comment: type: object additionalProperties: {} required: - project description: '' JiraIssueProject: type: object properties: id: type: string description: Jira field ID name: type: string description: Jira field name key: type: string description: Jira project key required: - id - key - name description: '' JiraIssueProjectRequest: type: object properties: id: type: string minLength: 1 description: Jira field ID name: type: string minLength: 1 description: Jira field name key: type: string minLength: 1 description: Jira project key required: - id - key - name description: '' JiraIssueRequest: type: object properties: key: type: string minLength: 1 description: Jira issue key fields: $ref: '#/components/schemas/JiraIssueFieldsRequest' required: - fields - key description: '' K8sDefaultConfiguration: type: object description: '' properties: default_controller_vcpus: type: integer maximum: 64 minimum: 1 default_controller_ram_gb: type: integer maximum: 128 minimum: 1 default_controller_system_disk_gb: type: integer maximum: 500 minimum: 1 default_controller_etcd_disk_gb: type: integer maximum: 1000 minimum: 1 default_lb_vcpus: type: integer maximum: 32 minimum: 1 default_lb_ram_gb: type: integer maximum: 256 minimum: 1 default_lb_system_disk_gb: type: integer maximum: 500 minimum: 1 default_lb_logs_disk_gb: type: integer maximum: 2000 minimum: 1 minimal_worker_vcpus: type: integer maximum: 32 minimum: 1 minimal_worker_ram_gb: type: integer maximum: 64 minimum: 1 default_worker_data_disk_gb: type: integer maximum: 10000 minimum: 1 default_storage_data_disk_gb: type: integer maximum: 10000 minimum: 1 default_storage_san_disk_gb: type: integer maximum: 50000 minimum: 1 available_kubernetes_versions: type: string description: Comma-separated list of Kubernetes versions (e.g., 1.32.0,1.33.0,1.34.0) K8sDefaultConfigurationRequest: type: object description: '' properties: default_controller_vcpus: type: integer maximum: 64 minimum: 1 default_controller_ram_gb: type: integer maximum: 128 minimum: 1 default_controller_system_disk_gb: type: integer maximum: 500 minimum: 1 default_controller_etcd_disk_gb: type: integer maximum: 1000 minimum: 1 default_lb_vcpus: type: integer maximum: 32 minimum: 1 default_lb_ram_gb: type: integer maximum: 256 minimum: 1 default_lb_system_disk_gb: type: integer maximum: 500 minimum: 1 default_lb_logs_disk_gb: type: integer maximum: 2000 minimum: 1 minimal_worker_vcpus: type: integer maximum: 32 minimum: 1 minimal_worker_ram_gb: type: integer maximum: 64 minimum: 1 default_worker_data_disk_gb: type: integer maximum: 10000 minimum: 1 default_storage_data_disk_gb: type: integer maximum: 10000 minimum: 1 default_storage_san_disk_gb: type: integer maximum: 50000 minimum: 1 available_kubernetes_versions: type: string description: Comma-separated list of Kubernetes versions (e.g., 1.32.0,1.33.0,1.34.0) KeycloakGroup: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string readOnly: true title: Group name backend_id: type: string readOnly: true scope_type: type: string readOnly: true scope_uuid: type: string format: uuid description: UUID of the cluster or project scope_name: type: string nullable: true description: Get the name of the cluster or project readOnly: true role: type: string format: uri created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - backend_id - created - modified - name - role - scope_name - scope_type - scope_uuid - url - uuid description: '' KeycloakScopeOptionRequest: type: object properties: scope_type: type: string minLength: 1 description: Scope type, e.g. 'project', 'cluster'. scope_id: type: string minLength: 1 description: Identifier of the scope (UUID or external ID). label: type: string minLength: 1 description: Human-readable label shown to end users. required: - label - scope_id - scope_type description: '' KeycloakUserGroupMembership: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true username: type: string description: Keycloak user username maxLength: 255 email: type: string format: email description: User's email for notifications maxLength: 254 first_name: type: string readOnly: true last_name: type: string readOnly: true group: type: string format: uri readOnly: true group_name: type: string readOnly: true group_role: type: string readOnly: true group_scope_type: type: string readOnly: true group_scope_name: type: string nullable: true description: Get the name of the cluster or project readOnly: true state: allOf: - $ref: '#/components/schemas/KeycloakUserGroupMembershipState' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true last_checked: type: string format: date-time readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true required: - created - email - error_message - error_traceback - first_name - group - group_name - group_role - group_scope_name - group_scope_type - last_checked - last_name - modified - state - url - username - uuid description: '' KeycloakUserGroupMembershipRequest: type: object properties: username: type: string minLength: 1 description: Keycloak user username maxLength: 255 email: type: string format: email minLength: 1 description: User's email for notifications maxLength: 254 scope_uuid: type: string format: uuid writeOnly: true description: UUID of a cluster or a project in Rancher role: type: string format: uri writeOnly: true required: - email - role - scope_uuid - username description: '' KeycloakUserGroupMembershipState: enum: - pending - active type: string description: '' KeywordSearchModeEnum: enum: - expertise_only - full_text type: string description: '' KindEnum: enum: - default - course - public type: string description: '' LOGINPAGELAYOUTEnum: enum: - split-screen - centered-card - minimal - full-hero - gradient - stacked - right-split - glassmorphism - neumorphism - animated-gradient - video-background - bottom-sheet - tabbed - wizard - stats - news - carousel - logo-watermark - brand-pattern - duotone - diagonal - time-based - seasonal - weather type: string description: '' LexisLink: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true robot_account: type: string format: uri readOnly: true robot_account_username: type: string readOnly: true robot_account_type: type: string readOnly: true state: type: string readOnly: true resource_uuid: type: string format: uuid readOnly: true resource_name: type: string readOnly: true resource_type: type: string readOnly: true resource_backend_id: type: string readOnly: true resource_end_date: type: string format: date-time readOnly: true project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true heappe_project_id: type: integer maximum: 2147483647 minimum: 0 nullable: true required: - created - customer_name - customer_uuid - modified - project_name - project_uuid - resource_backend_id - resource_end_date - resource_name - resource_type - resource_uuid - robot_account - robot_account_type - robot_account_username - state - url - uuid description: '' LexisLinkCreateRequest: type: object properties: resource: type: string format: uri writeOnly: true required: - resource description: '' LexisLinkRequest: type: object properties: heappe_project_id: type: integer maximum: 2147483647 minimum: 0 nullable: true description: '' LicenseSuggestion: type: object description: '' properties: resource_uuid: type: string format: uuid resource_name: type: string license_reference: type: string license_name: type: string confidence: type: number format: double description: Confidence score (0-1) based on name similarity. required: - confidence - license_name - license_reference - resource_name - resource_uuid LimitPeriodEnum: enum: - month - quarterly - annual - total type: string description: '' LimitTypeEnum: enum: - GrpTRESMins - MaxTRESMins - GrpTRES type: string description: '' LinkOpenstackRequest: type: object properties: instance: type: string format: uri writeOnly: true required: - instance description: '' LinkResourceRequestRequest: type: object description: '' properties: resource_uuid: type: string format: uuid description: UUID of the Waldur resource to link. license_reference: type: string minLength: 1 description: Arrow license reference to set as backend_id (e.g., XSP12345). required: - license_reference - resource_uuid LinkResourceResponse: type: object description: '' properties: resource_uuid: type: string format: uuid resource_name: type: string license_reference: type: string previous_backend_id: type: string success: type: boolean required: - license_reference - previous_backend_id - resource_name - resource_uuid - success LinkToInvoice: type: object properties: invoice: type: string format: uri required: - invoice description: '' LinkToInvoiceRequest: type: object properties: invoice: type: string format: uri required: - invoice description: '' LockStats: type: object description: '' properties: total_locks: type: integer readOnly: true description: Total number of locks currently held waiting_locks: type: integer readOnly: true description: Number of locks being waited for access_exclusive_locks: type: integer readOnly: true description: Number of AccessExclusive locks (blocks all access) required: - access_exclusive_locks - total_locks - waiting_locks Logout: type: object properties: logout_url: type: string format: uri readOnly: true description: URL to redirect to after logout required: - logout_url description: '' MaintenanceActionResponse: type: object description: '' properties: detail: type: string description: Response message describing the action result required: - detail MaintenanceAnnouncement: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 message: type: string maxLength: 2000 internal_notes: type: string maxLength: 2000 maintenance_type: allOf: - $ref: '#/components/schemas/MaintenanceTypeEnum' description: Type of maintenance being performed minimum: 0 maximum: 32767 external_reference_url: type: string format: uri description: Optional reference to an external maintenance tracker maxLength: 200 state: allOf: - $ref: '#/components/schemas/MaintenanceAnnouncementStateEnum' readOnly: true scheduled_start: type: string format: date-time description: When the maintenance is scheduled to begin scheduled_end: type: string format: date-time description: When the maintenance is scheduled to complete actual_start: type: string format: date-time readOnly: true nullable: true description: When the maintenance actually began actual_end: type: string format: date-time readOnly: true nullable: true description: When the maintenance actually completed service_provider: type: string format: uri description: Service provider announcing the maintenance created_by: type: string format: uri readOnly: true nullable: true affected_offerings: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOffering' readOnly: true service_provider_name: type: string readOnly: true backend_id: type: string readOnly: true required: - actual_end - actual_start - affected_offerings - backend_id - created_by - name - scheduled_end - scheduled_start - service_provider - service_provider_name - state - url - uuid description: '' MaintenanceAnnouncementOffering: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true maintenance: type: string format: uri offering: type: string format: uri impact_level: allOf: - $ref: '#/components/schemas/ImpactLevelEnum' description: Expected impact on this offering minimum: 0 maximum: 32767 impact_level_display: allOf: - $ref: '#/components/schemas/ImpactLevelDisplayEnum' readOnly: true impact_description: type: string description: Specific description of how this offering will be affected offering_name: type: string readOnly: true required: - impact_level_display - maintenance - offering - offering_name - url - uuid description: '' MaintenanceAnnouncementOfferingRequest: type: object properties: maintenance: type: string format: uri offering: type: string format: uri impact_level: allOf: - $ref: '#/components/schemas/ImpactLevelEnum' description: Expected impact on this offering minimum: 0 maximum: 32767 impact_description: type: string description: Specific description of how this offering will be affected required: - maintenance - offering description: '' MaintenanceAnnouncementOfferingTemplate: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true maintenance_template: type: string format: uri offering: type: string format: uri offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true impact_level: allOf: - $ref: '#/components/schemas/ImpactLevelEnum' description: Expected impact on this offering minimum: 0 maximum: 32767 impact_description: type: string description: Specific description of how this offering will be affected required: - maintenance_template - offering - offering_name - offering_uuid - url - uuid description: '' MaintenanceAnnouncementOfferingTemplateRequest: type: object properties: maintenance_template: type: string format: uri offering: type: string format: uri impact_level: allOf: - $ref: '#/components/schemas/ImpactLevelEnum' description: Expected impact on this offering minimum: 0 maximum: 32767 impact_description: type: string description: Specific description of how this offering will be affected required: - maintenance_template - offering description: '' MaintenanceAnnouncementRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 message: type: string maxLength: 2000 internal_notes: type: string maxLength: 2000 maintenance_type: allOf: - $ref: '#/components/schemas/MaintenanceTypeEnum' description: Type of maintenance being performed minimum: 0 maximum: 32767 external_reference_url: type: string format: uri description: Optional reference to an external maintenance tracker maxLength: 200 scheduled_start: type: string format: date-time description: When the maintenance is scheduled to begin scheduled_end: type: string format: date-time description: When the maintenance is scheduled to complete service_provider: type: string format: uri description: Service provider announcing the maintenance required: - name - scheduled_end - scheduled_start - service_provider description: '' MaintenanceAnnouncementStateEnum: enum: - Draft - Scheduled - In progress - Completed - Cancelled type: string description: '' MaintenanceAnnouncementTemplate: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 message: type: string maxLength: 2000 maintenance_type: allOf: - $ref: '#/components/schemas/MaintenanceTypeEnum' description: Type of maintenance being performed minimum: 0 maximum: 32767 service_provider: type: string format: uri description: Service provider announcing the maintenance affected_offerings: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOffering' readOnly: true required: - affected_offerings - name - service_provider - url - uuid description: '' MaintenanceAnnouncementTemplateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 message: type: string maxLength: 2000 maintenance_type: allOf: - $ref: '#/components/schemas/MaintenanceTypeEnum' description: Type of maintenance being performed minimum: 0 maximum: 32767 service_provider: type: string format: uri description: Service provider announcing the maintenance required: - name - service_provider description: '' MaintenanceProviderStats: type: object description: '' properties: uuid: type: string description: Service provider UUID name: type: string description: Service provider name total: type: integer description: Total maintenances active: type: integer description: Active maintenances scheduled: type: integer description: Scheduled maintenances completed: type: integer description: Completed maintenances required: - active - completed - name - scheduled - total - uuid MaintenanceStats: type: object description: '' properties: oldest_transaction_age: type: integer readOnly: true nullable: true description: Age of the oldest transaction in transactions tables_needing_vacuum: type: integer readOnly: true description: Number of tables with high dead tuple ratio total_dead_tuples: type: integer readOnly: true description: Total estimated dead tuples across all tables total_live_tuples: type: integer readOnly: true description: Total estimated live tuples across all tables dead_tuple_ratio_percent: type: number format: double readOnly: true nullable: true description: Ratio of dead tuples to total tuples required: - dead_tuple_ratio_percent - oldest_transaction_age - tables_needing_vacuum - total_dead_tuples - total_live_tuples MaintenanceStatsResponse: type: object description: '' properties: summary: allOf: - $ref: '#/components/schemas/MaintenanceStatsSummary' description: Summary statistics by_state: type: object additionalProperties: type: integer description: Total counts grouped by state by_type: type: object additionalProperties: type: integer description: Total counts grouped by maintenance type by_impact_level: type: object additionalProperties: type: integer description: Total counts grouped by max impact level daily: type: array items: $ref: '#/components/schemas/DailyMaintenanceStats' description: Daily breakdown providers: type: array items: $ref: '#/components/schemas/MaintenanceProviderStats' description: Statistics per provider required: - by_impact_level - by_state - by_type - daily - providers - summary MaintenanceStatsSummary: type: object description: '' properties: total: type: integer description: Total number of maintenance announcements active: type: integer description: Number of currently active maintenances scheduled: type: integer description: Number of scheduled maintenances completed: type: integer description: Number of completed maintenances average_duration_hours: type: number format: double nullable: true description: Average duration of completed maintenances in hours on_time_completion_rate: type: number format: double nullable: true description: Percentage of maintenances completed on time required: - active - average_duration_hours - completed - on_time_completion_rate - scheduled - total MaintenanceTypeEnum: enum: - 1 - 2 - 3 - 4 - 5 type: integer description: '' ManagedProject: type: object description: '' properties: state: type: string readOnly: true created: type: string format: date-time readOnly: true reviewed_at: type: string format: date-time readOnly: true nullable: true description: Timestamp when the review was completed reviewed_by_full_name: type: string readOnly: true reviewed_by_uuid: type: string format: uuid readOnly: true review_comment: type: string nullable: true description: Optional comment provided during review identifier: type: string title: ID maxLength: 64 destination: type: string description: The destination used to send instructions from the remote portal. maxLength: 256 details: readOnly: true description: Details of the project as provided by the remote OpenPortal. project: type: string format: uri project_data: allOf: - $ref: '#/components/schemas/Project' readOnly: true project_template: type: string format: uri project_template_data: allOf: - $ref: '#/components/schemas/ProjectTemplate' readOnly: true local_identifier: type: string nullable: true title: Local ID description: The local project identifier in this portal. maxLength: 64 required: - created - destination - details - identifier - project - project_data - project_template - project_template_data - reviewed_at - reviewed_by_full_name - reviewed_by_uuid - state ManagedRancherCreateNodeRequest: type: object description: '' properties: role: $ref: '#/components/schemas/RancherNodeRoleEnum' system_volume_size: type: integer writeOnly: true minimum: 64 system_volume_type: type: string format: uri writeOnly: true nullable: true memory: type: integer writeOnly: true cpu: type: integer writeOnly: true subnet: type: string format: uri writeOnly: true nullable: true flavor: type: string format: uri writeOnly: true nullable: true data_volumes: type: array items: $ref: '#/components/schemas/DataVolumeRequest' writeOnly: true ssh_public_key: type: string format: uri writeOnly: true tenant: type: string format: uri writeOnly: true required: - role - subnet Mapping: type: object properties: volume_types: type: array items: $ref: '#/components/schemas/VolumeTypeMapping' subnets: type: array items: $ref: '#/components/schemas/SubNetMapping' skip_connection_extnet: type: boolean default: false sync_instance_ports: type: boolean default: false networks: type: array items: type: string format: uuid description: '' MappingRequest: type: object properties: volume_types: type: array items: $ref: '#/components/schemas/VolumeTypeMappingRequest' subnets: type: array items: $ref: '#/components/schemas/SubNetMappingRequest' skip_connection_extnet: type: boolean default: false sync_instance_ports: type: boolean default: false networks: type: array items: type: string format: uuid description: '' MarketplaceCategory: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true title: type: string maxLength: 255 description: type: string icon: type: string format: uri nullable: true default_vm_category: type: boolean description: Set to "true" if this category is for OpenStack VM. Only one category can have "true" value. default_volume_category: type: boolean description: Set to true if this category is for OpenStack Volume. Only one category can have "true" value. default_tenant_category: type: boolean description: Set to true if this category is for OpenStack Tenant. Only one category can have "true" value. offering_count: type: integer readOnly: true available_offerings_count: type: integer readOnly: true sections: type: array items: $ref: '#/components/schemas/NestedSection' readOnly: true columns: type: array items: $ref: '#/components/schemas/NestedColumn' readOnly: true components: type: array items: $ref: '#/components/schemas/CategoryComponent' readOnly: true articles: type: array items: $ref: '#/components/schemas/CategoryHelpArticle' readOnly: true group: type: string format: uri nullable: true required: [] MarketplaceCategoryRequest: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true default_vm_category: type: boolean description: Set to "true" if this category is for OpenStack VM. Only one category can have "true" value. default_volume_category: type: boolean description: Set to true if this category is for OpenStack Volume. Only one category can have "true" value. default_tenant_category: type: boolean description: Set to true if this category is for OpenStack Tenant. Only one category can have "true" value. group: type: string format: uri nullable: true required: - title MarketplaceCustomerStats: type: object properties: name: type: string readOnly: true description: Name from the record uuid: type: string readOnly: true description: UUID from the record count: type: integer readOnly: true description: Count value from the record abbreviation: type: string readOnly: true description: Customer abbreviation from the record required: - abbreviation - count - name - uuid description: '' MarketplaceProviderCustomer: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 slug: type: string maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ abbreviation: type: string maxLength: 12 phone_number: type: string maxLength: 255 email: type: string format: email title: Email address maxLength: 75 payment_profiles: type: array items: $ref: '#/components/schemas/PaymentProfile' readOnly: true billing_price_estimate: allOf: - $ref: '#/components/schemas/NestedPriceEstimate' readOnly: true projects_count: type: integer readOnly: true users_count: type: integer readOnly: true projects: type: array items: $ref: '#/components/schemas/ProviderProject' readOnly: true users: type: array items: $ref: '#/components/schemas/ProviderUser' readOnly: true required: [] MarketplaceProviderCustomerProject: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 500 description: type: string maxLength: 4096 end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, all project resource will be scheduled for termination. resources_count: type: integer readOnly: true users_count: type: integer readOnly: true billing_price_estimate: allOf: - $ref: '#/components/schemas/NestedPriceEstimate' readOnly: true required: [] MarketplaceServiceProviderUser: type: object description: '' properties: uuid: type: string format: uuid readOnly: true username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 full_name: type: string readOnly: true first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 organization: type: string maxLength: 255 email: type: string format: email title: Email address maxLength: 320 phone_number: type: string maxLength: 255 projects_count: type: integer readOnly: true registration_method: type: string description: Indicates what registration method was used. maxLength: 50 affiliations: description: Person's affiliation within organization such as student, faculty, staff. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. job_title: type: string maxLength: 120 gender: nullable: true description: ISO 5218 gender code minimum: 0 maximum: 32767 oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) maxLength: 50 place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) maxLength: 2 nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) organization_country: type: string maxLength: 2 organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) maxLength: 255 organization_registry_code: type: string description: Company registration code of the user's organization, if known maxLength: 255 eduperson_assurance: description: REFEDS assurance profile URIs from identity provider civil_number: type: string nullable: true maxLength: 50 birth_date: type: string format: date nullable: true identity_source: type: string title: Source of identity description: Indicates what identity provider was used. maxLength: 50 active_isds: description: List of ISDs that have asserted this user exists. User is deactivated when this becomes empty. required: [] MatchingAlgorithm: enum: - minmax - fairflow - hungarian type: string description: '' MatchingConfiguration: type: object description: '' properties: uuid: type: string format: uuid readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true affinity_method: $ref: '#/components/schemas/AffinityMethodEnum' keyword_weight: type: number format: double minimum: 0.0 text_weight: type: number format: double minimum: 0.0 min_reviewers_per_proposal: type: integer maximum: 2147483647 minimum: 0 max_reviewers_per_proposal: type: integer maximum: 2147483647 minimum: 0 min_proposals_per_reviewer: type: integer maximum: 2147483647 minimum: 0 max_proposals_per_reviewer: type: integer maximum: 2147483647 minimum: 0 algorithm: $ref: '#/components/schemas/MatchingAlgorithm' min_affinity_threshold: type: number format: double minimum: 0.0 description: Minimum affinity score for FairFlow algorithm use_reviewer_bids: type: boolean bid_weight: type: number format: double minimum: 0.0 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - call_name - call_uuid - created - modified - uuid MergedPluginOptions: type: object properties: auto_approve_remote_orders: type: boolean description: If set to True, an order can be processed without approval resource_expiration_threshold: type: integer default: 30 description: Resource expiration threshold in days. service_provider_can_create_offering_user: type: boolean description: Service provider can create offering user max_resource_termination_offset_in_days: type: integer minimum: 0 description: Maximum resource termination offset in days default_resource_termination_offset_in_days: type: integer minimum: 0 description: If set, it will be used as a default resource termination offset in days is_resource_termination_date_required: type: boolean description: If set to True, resource termination date is required latest_date_for_resource_termination: type: string description: 'If set, it will be used as a latest date for resource termination. Format: YYYY-MM-DD' auto_approve_in_service_provider_projects: type: boolean description: Skip approval of public offering belonging to the same organization under which the request is done disable_autoapprove: type: boolean description: If set to True, orders for this offering will always require manual approval, overriding auto_approve_in_service_provider_projects supports_downscaling: type: boolean description: If set to True, it will be possible to downscale resources supports_pausing: type: boolean description: If set to True, it will be possible to pause resources minimal_team_count_for_provisioning: type: integer minimum: 1 description: Minimal team count required for provisioning of resources maximal_resource_count_per_project: type: integer description: Maximal number of offering resources allowed per project unique_resource_per_attribute: type: string description: Attribute name to enforce uniqueness per value. E.g., 'storage_data_type' ensures only one resource per storage type per project. required_team_role_for_provisioning: type: string description: Required user role in a project for provisioning of resources enable_purchase_order_upload: type: boolean description: If set to True, users will be able to upload purchase orders. require_purchase_order_upload: type: boolean description: If set to True, users will be required to upload purchase orders. conceal_billing_data: type: boolean description: If set to True, pricing and components tab would be concealed. create_orders_on_resource_option_change: type: boolean description: If set to True, create orders when options of related resources are changed. can_restore_resource: type: boolean description: If set to True, resource can be restored. enable_provider_consumer_messaging: type: boolean description: If set to True, service providers can send messages with attachments to consumers on pending orders, and consumers can respond. notify_about_provider_consumer_messages: type: boolean description: If set to True, send email notifications when providers or consumers exchange messages on pending orders. restrict_deletion_with_active_resources: type: boolean description: If set to True, offering cannot be deleted while it has non-terminated resources. resource_name_pattern: type: string description: 'Python format string for generating resource names. Available variables: {customer_name}, {customer_slug}, {project_name}, {project_slug}, {offering_name}, {offering_slug}, {plan_name}, {counter}, {attributes[KEY]}.' default_internal_network_mtu: type: integer maximum: 9000 minimum: 68 description: If set, it will be used as a default MTU for the first network in a tenant max_instances: type: integer minimum: 1 description: Default limit for number of instances in OpenStack tenant max_volumes: type: integer minimum: 1 description: Default limit for number of volumes in OpenStack tenant max_security_groups: type: integer minimum: 1 description: Default limit for number of security groups in OpenStack tenant storage_mode: allOf: - $ref: '#/components/schemas/StorageModeEnum' description: Storage mode for OpenStack offering snapshot_size_limit_gb: type: integer minimum: 1 description: Default limit for snapshot size in GB heappe_cluster_id: type: string description: HEAppE cluster id heappe_local_base_path: type: string description: HEAppE local base path heappe_url: type: string description: HEAppE url heappe_username: type: string description: HEAppE username homedir_prefix: type: string default: /home/ description: GLAuth homedir prefix scratch_project_directory: type: string description: HEAppE scratch project directory project_permanent_directory: type: string description: HEAppE project permanent directory initial_primarygroup_number: type: integer minimum: 0 default: 5000 description: GLAuth initial primary group number initial_uidnumber: type: integer minimum: 0 default: 5000 description: GLAuth initial uidnumber initial_usergroup_number: type: integer minimum: 0 default: 6000 description: GLAuth initial usergroup number username_anonymized_prefix: type: string default: waldur_ description: GLAuth prefix for anonymized usernames username_generation_policy: allOf: - $ref: '#/components/schemas/UsernameGenerationPolicyEnum' default: service_provider description: GLAuth username generation policy enable_issues_for_membership_changes: type: boolean description: Enable issues for membership changes deployment_mode: allOf: - $ref: '#/components/schemas/DeploymentModeEnum' description: Rancher deployment mode flavors_regex: type: string description: Regular expression to limit flavors list openstack_offering_uuid_list: type: array items: type: string description: List of UUID of OpenStack offerings where tenant can be created managed_rancher_server_flavor_name: type: string description: Flavor name for managed Rancher server instances managed_rancher_server_system_volume_size_gb: type: integer description: System volume size in GB for managed Rancher server managed_rancher_server_system_volume_type_name: type: string description: System volume type name for managed Rancher server managed_rancher_server_data_volume_size_gb: type: integer description: Data volume size in GB for managed Rancher server managed_rancher_server_data_volume_type_name: type: string description: Data volume type name for managed Rancher server managed_rancher_worker_system_volume_size_gb: type: integer description: System volume size in GB for managed Rancher worker nodes managed_rancher_worker_system_volume_type_name: type: string description: System volume type name for managed Rancher worker nodes managed_rancher_load_balancer_flavor_name: type: string description: Flavor name for managed Rancher load balancer managed_rancher_load_balancer_system_volume_size_gb: type: integer description: System volume size in GB for managed Rancher load balancer managed_rancher_load_balancer_system_volume_type_name: type: string description: System volume type name for managed Rancher load balancer managed_rancher_load_balancer_data_volume_size_gb: type: integer description: Data volume size in GB for managed Rancher load balancer managed_rancher_load_balancer_data_volume_type_name: type: string description: Data volume type name for managed Rancher load balancer managed_rancher_tenant_max_cpu: type: integer description: Max number of vCPUs for tenants managed_rancher_tenant_max_ram: type: integer description: Max number of RAM for tenants (GB) managed_rancher_tenant_max_disk: type: integer description: Max size of disk space for tenants (GB) account_name_generation_policy: nullable: true description: Slurm account name generation policy oneOf: - $ref: '#/components/schemas/AccountNameGenerationPolicyEnum' - $ref: '#/components/schemas/NullEnum' enable_display_of_order_actions_for_service_provider: type: boolean default: true description: Enable display of order actions for service provider slurm_periodic_policy_enabled: type: boolean default: false description: Enable SLURM periodic usage policy configuration. When enabled, allows configuring QoS-based threshold enforcement, carryover logic, and fairshare decay for site-agent managed SLURM offerings. auto_approve_marketplace_script: type: boolean default: true description: If set to False, all orders require manual provider approval, including for service provider owners and staff keycloak_enabled: type: boolean description: If set to True, Keycloak group management is enabled for this offering. keycloak_base_group: type: string description: 'Root parent group in Keycloak under which offering groups are created. Groups are organized as: {base_group}/{offering_slug}/{role_group}. If empty, offering groups are created at the realm root.' keycloak_sync_frequency: type: integer minimum: 1 description: Frequency in minutes for syncing Keycloak group memberships. keycloak_group_name_template: type: string description: 'Template for generating Keycloak group names. Uses $variable syntax (e.g. $offering_uuid_$role_name). Allowed variables: offering_uuid, offering_name, offering_slug, resource_uuid, resource_name, resource_slug, project_uuid, project_name, project_slug, organization_uuid, organization_name, organization_slug, role_name, scope_id.' keycloak_username_label: type: string default: '' description: Custom label for the username field when inviting external users (e.g. 'Civil code', 'CUID'). If empty, defaults to 'Username'. highlight_backend_id_display: type: boolean default: false description: Defines if backend_id should be shown more prominently by the UI backend_id_display_label: type: string default: Backend ID description: Label used by UI for showing value of the backend_id disabled_resource_actions: type: array items: type: string description: List of disabled marketplace resource actions for this offering. description: '' MergedPluginOptionsRequest: type: object properties: auto_approve_remote_orders: type: boolean description: If set to True, an order can be processed without approval resource_expiration_threshold: type: integer default: 30 description: Resource expiration threshold in days. service_provider_can_create_offering_user: type: boolean description: Service provider can create offering user max_resource_termination_offset_in_days: type: integer minimum: 0 description: Maximum resource termination offset in days default_resource_termination_offset_in_days: type: integer minimum: 0 description: If set, it will be used as a default resource termination offset in days is_resource_termination_date_required: type: boolean description: If set to True, resource termination date is required latest_date_for_resource_termination: type: string minLength: 1 description: 'If set, it will be used as a latest date for resource termination. Format: YYYY-MM-DD' auto_approve_in_service_provider_projects: type: boolean description: Skip approval of public offering belonging to the same organization under which the request is done disable_autoapprove: type: boolean description: If set to True, orders for this offering will always require manual approval, overriding auto_approve_in_service_provider_projects supports_downscaling: type: boolean description: If set to True, it will be possible to downscale resources supports_pausing: type: boolean description: If set to True, it will be possible to pause resources minimal_team_count_for_provisioning: type: integer minimum: 1 description: Minimal team count required for provisioning of resources maximal_resource_count_per_project: type: integer description: Maximal number of offering resources allowed per project unique_resource_per_attribute: type: string minLength: 1 description: Attribute name to enforce uniqueness per value. E.g., 'storage_data_type' ensures only one resource per storage type per project. required_team_role_for_provisioning: type: string minLength: 1 description: Required user role in a project for provisioning of resources enable_purchase_order_upload: type: boolean description: If set to True, users will be able to upload purchase orders. require_purchase_order_upload: type: boolean description: If set to True, users will be required to upload purchase orders. conceal_billing_data: type: boolean description: If set to True, pricing and components tab would be concealed. create_orders_on_resource_option_change: type: boolean description: If set to True, create orders when options of related resources are changed. can_restore_resource: type: boolean description: If set to True, resource can be restored. enable_provider_consumer_messaging: type: boolean description: If set to True, service providers can send messages with attachments to consumers on pending orders, and consumers can respond. notify_about_provider_consumer_messages: type: boolean description: If set to True, send email notifications when providers or consumers exchange messages on pending orders. restrict_deletion_with_active_resources: type: boolean description: If set to True, offering cannot be deleted while it has non-terminated resources. resource_name_pattern: type: string minLength: 1 description: 'Python format string for generating resource names. Available variables: {customer_name}, {customer_slug}, {project_name}, {project_slug}, {offering_name}, {offering_slug}, {plan_name}, {counter}, {attributes[KEY]}.' default_internal_network_mtu: type: integer maximum: 9000 minimum: 68 description: If set, it will be used as a default MTU for the first network in a tenant max_instances: type: integer minimum: 1 description: Default limit for number of instances in OpenStack tenant max_volumes: type: integer minimum: 1 description: Default limit for number of volumes in OpenStack tenant max_security_groups: type: integer minimum: 1 description: Default limit for number of security groups in OpenStack tenant storage_mode: allOf: - $ref: '#/components/schemas/StorageModeEnum' description: Storage mode for OpenStack offering snapshot_size_limit_gb: type: integer minimum: 1 description: Default limit for snapshot size in GB heappe_cluster_id: type: string minLength: 1 description: HEAppE cluster id heappe_local_base_path: type: string minLength: 1 description: HEAppE local base path heappe_url: type: string minLength: 1 description: HEAppE url heappe_username: type: string minLength: 1 description: HEAppE username homedir_prefix: type: string minLength: 1 default: /home/ description: GLAuth homedir prefix scratch_project_directory: type: string minLength: 1 description: HEAppE scratch project directory project_permanent_directory: type: string minLength: 1 description: HEAppE project permanent directory initial_primarygroup_number: type: integer minimum: 0 default: 5000 description: GLAuth initial primary group number initial_uidnumber: type: integer minimum: 0 default: 5000 description: GLAuth initial uidnumber initial_usergroup_number: type: integer minimum: 0 default: 6000 description: GLAuth initial usergroup number username_anonymized_prefix: type: string minLength: 1 default: waldur_ description: GLAuth prefix for anonymized usernames username_generation_policy: allOf: - $ref: '#/components/schemas/UsernameGenerationPolicyEnum' default: service_provider description: GLAuth username generation policy enable_issues_for_membership_changes: type: boolean description: Enable issues for membership changes deployment_mode: allOf: - $ref: '#/components/schemas/DeploymentModeEnum' description: Rancher deployment mode flavors_regex: type: string minLength: 1 description: Regular expression to limit flavors list openstack_offering_uuid_list: type: array items: type: string minLength: 1 description: List of UUID of OpenStack offerings where tenant can be created managed_rancher_server_flavor_name: type: string minLength: 1 description: Flavor name for managed Rancher server instances managed_rancher_server_system_volume_size_gb: type: integer description: System volume size in GB for managed Rancher server managed_rancher_server_system_volume_type_name: type: string minLength: 1 description: System volume type name for managed Rancher server managed_rancher_server_data_volume_size_gb: type: integer description: Data volume size in GB for managed Rancher server managed_rancher_server_data_volume_type_name: type: string minLength: 1 description: Data volume type name for managed Rancher server managed_rancher_worker_system_volume_size_gb: type: integer description: System volume size in GB for managed Rancher worker nodes managed_rancher_worker_system_volume_type_name: type: string minLength: 1 description: System volume type name for managed Rancher worker nodes managed_rancher_load_balancer_flavor_name: type: string minLength: 1 description: Flavor name for managed Rancher load balancer managed_rancher_load_balancer_system_volume_size_gb: type: integer description: System volume size in GB for managed Rancher load balancer managed_rancher_load_balancer_system_volume_type_name: type: string minLength: 1 description: System volume type name for managed Rancher load balancer managed_rancher_load_balancer_data_volume_size_gb: type: integer description: Data volume size in GB for managed Rancher load balancer managed_rancher_load_balancer_data_volume_type_name: type: string minLength: 1 description: Data volume type name for managed Rancher load balancer managed_rancher_tenant_max_cpu: type: integer description: Max number of vCPUs for tenants managed_rancher_tenant_max_ram: type: integer description: Max number of RAM for tenants (GB) managed_rancher_tenant_max_disk: type: integer description: Max size of disk space for tenants (GB) account_name_generation_policy: nullable: true description: Slurm account name generation policy oneOf: - $ref: '#/components/schemas/AccountNameGenerationPolicyEnum' - $ref: '#/components/schemas/NullEnum' enable_display_of_order_actions_for_service_provider: type: boolean default: true description: Enable display of order actions for service provider slurm_periodic_policy_enabled: type: boolean default: false description: Enable SLURM periodic usage policy configuration. When enabled, allows configuring QoS-based threshold enforcement, carryover logic, and fairshare decay for site-agent managed SLURM offerings. auto_approve_marketplace_script: type: boolean default: true description: If set to False, all orders require manual provider approval, including for service provider owners and staff keycloak_enabled: type: boolean description: If set to True, Keycloak group management is enabled for this offering. keycloak_base_group: type: string minLength: 1 description: 'Root parent group in Keycloak under which offering groups are created. Groups are organized as: {base_group}/{offering_slug}/{role_group}. If empty, offering groups are created at the realm root.' keycloak_sync_frequency: type: integer minimum: 1 description: Frequency in minutes for syncing Keycloak group memberships. keycloak_group_name_template: type: string minLength: 1 description: 'Template for generating Keycloak group names. Uses $variable syntax (e.g. $offering_uuid_$role_name). Allowed variables: offering_uuid, offering_name, offering_slug, resource_uuid, resource_name, resource_slug, project_uuid, project_name, project_slug, organization_uuid, organization_name, organization_slug, role_name, scope_id.' keycloak_username_label: type: string default: '' description: Custom label for the username field when inviting external users (e.g. 'Civil code', 'CUID'). If empty, defaults to 'Username'. highlight_backend_id_display: type: boolean default: false description: Defines if backend_id should be shown more prominently by the UI backend_id_display_label: type: string default: Backend ID description: Label used by UI for showing value of the backend_id disabled_resource_actions: type: array items: type: string minLength: 1 description: List of disabled marketplace resource actions for this offering. description: '' MergedSecretOptions: type: object properties: heappe_cluster_password: type: string description: HEAppE cluster password heappe_password: type: string description: HEAppE password ipv4_external_ip_mapping: type: array items: $ref: '#/components/schemas/IPMapping' description: OpenStack IPv4 external IP mapping openstack_api_tls_certificate: type: string description: TLS certificate for OpenStack API connection verification dns_nameservers: type: array items: type: string description: Default value for new subnets DNS name servers. Should be defined as list. shared_user_password: type: string description: GLAuth shared user password template_confirmation_comment: type: string description: Template confirmation comment language: type: string description: 'Script language: Python or Bash' environ: description: Script environment variables create: type: string description: Script for resource creation terminate: type: string description: Script for resource termination update: type: string description: Script for resource update pull: type: string description: Script for regular resource pull api_url: type: string description: API URL token: type: string description: Waldur access token customer_uuid: type: string description: Organization UUID backend_url: type: string title: Rancher server URL maxLength: 200 username: type: string title: Rancher access key maxLength: 100 password: type: string title: Rancher secret key maxLength: 100 cloud_init_template: type: string description: Cloud-init template for Rancher cluster node initialization managed_rancher_load_balancer_cloud_init_template: type: string description: Cloud-init template for managed Rancher load balancer initialization vault_host: type: string description: Host of the Vault server vault_port: type: integer description: Port of the Vault server vault_token: type: string description: Token for the Vault server vault_tls_verify: type: boolean description: Whether to verify the Vault server certificate keycloak_url: type: string description: URL of the Keycloak server keycloak_realm: type: string description: Keycloak realm for Rancher keycloak_user_realm: type: string description: Keycloak user realm for auth keycloak_username: type: string description: Username of the Keycloak integration user keycloak_password: type: string description: Password of the Keycloak integration user keycloak_sync_frequency: type: integer description: Frequency in minutes for syncing Keycloak users keycloak_ssl_verify: type: boolean description: Indicates whether verify SSL certificates argocd_k8s_namespace: type: string description: Namespace where ArgoCD is deployed argocd_k8s_kubeconfig: type: string description: Kubeconfig with access to namespace where ArgoCD is deployed base_image_name: type: string description: Base image name private_registry_url: type: string description: URL of a private registry for a cluster private_registry_user: type: string description: Username for accessing a private registry private_registry_password: type: string description: Password for accessing a private registry k8s_version: type: string description: Kubernetes version node_disk_driver: allOf: - $ref: '#/components/schemas/NodeDiskDriverEnum' description: OpenStack disk driver for Rancher nodes description: '' MergedSecretOptionsRequest: type: object properties: heappe_cluster_password: type: string minLength: 1 description: HEAppE cluster password heappe_password: type: string minLength: 1 description: HEAppE password ipv4_external_ip_mapping: type: array items: $ref: '#/components/schemas/IPMappingRequest' description: OpenStack IPv4 external IP mapping openstack_api_tls_certificate: type: string description: TLS certificate for OpenStack API connection verification dns_nameservers: type: array items: type: string minLength: 1 description: Default value for new subnets DNS name servers. Should be defined as list. shared_user_password: type: string minLength: 1 description: GLAuth shared user password template_confirmation_comment: type: string minLength: 1 description: Template confirmation comment language: type: string minLength: 1 description: 'Script language: Python or Bash' environ: description: Script environment variables create: type: string minLength: 1 description: Script for resource creation terminate: type: string minLength: 1 description: Script for resource termination update: type: string minLength: 1 description: Script for resource update pull: type: string minLength: 1 description: Script for regular resource pull api_url: type: string minLength: 1 description: API URL token: type: string minLength: 1 description: Waldur access token customer_uuid: type: string minLength: 1 description: Organization UUID backend_url: type: string minLength: 1 title: Rancher server URL maxLength: 200 username: type: string minLength: 1 title: Rancher access key maxLength: 100 password: type: string minLength: 1 title: Rancher secret key maxLength: 100 cloud_init_template: type: string minLength: 1 description: Cloud-init template for Rancher cluster node initialization managed_rancher_load_balancer_cloud_init_template: type: string description: Cloud-init template for managed Rancher load balancer initialization vault_host: type: string minLength: 1 description: Host of the Vault server vault_port: type: integer description: Port of the Vault server vault_token: type: string minLength: 1 description: Token for the Vault server vault_tls_verify: type: boolean description: Whether to verify the Vault server certificate keycloak_url: type: string minLength: 1 description: URL of the Keycloak server keycloak_realm: type: string minLength: 1 description: Keycloak realm for Rancher keycloak_user_realm: type: string minLength: 1 description: Keycloak user realm for auth keycloak_username: type: string minLength: 1 description: Username of the Keycloak integration user keycloak_password: type: string minLength: 1 description: Password of the Keycloak integration user keycloak_sync_frequency: type: integer description: Frequency in minutes for syncing Keycloak users keycloak_ssl_verify: type: boolean description: Indicates whether verify SSL certificates argocd_k8s_namespace: type: string minLength: 1 description: Namespace where ArgoCD is deployed argocd_k8s_kubeconfig: type: string minLength: 1 description: Kubeconfig with access to namespace where ArgoCD is deployed base_image_name: type: string minLength: 1 description: Base image name private_registry_url: type: string minLength: 1 description: URL of a private registry for a cluster private_registry_user: type: string minLength: 1 description: Username for accessing a private registry private_registry_password: type: string minLength: 1 description: Password for accessing a private registry k8s_version: type: string minLength: 1 description: Kubernetes version node_disk_driver: allOf: - $ref: '#/components/schemas/NodeDiskDriverEnum' description: OpenStack disk driver for Rancher nodes description: '' Message: type: object properties: uuid: type: string format: uuid readOnly: true thread: type: string format: uuid readOnly: true role: allOf: - $ref: '#/components/schemas/MessageRoleEnum' readOnly: true content: type: string sequence_index: type: integer readOnly: true replaces: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true is_flagged: type: boolean readOnly: true injection_score: type: number format: double readOnly: true injection_severity: allOf: - $ref: '#/components/schemas/InjectionSeverityEnum' readOnly: true injection_categories: readOnly: true required: - content - created - injection_categories - injection_score - injection_severity - is_flagged - replaces - role - sequence_index - thread - uuid description: '' MessageResponse: type: object description: '' properties: message: type: string required: - message MessageRoleEnum: enum: - user - assistant type: string description: '' MessageStateCache: type: object description: '' properties: cache_ttl: type: integer readOnly: true description: Cache TTL in seconds description: type: string readOnly: true description: Cache description filter: allOf: - $ref: '#/components/schemas/MessageStateCacheFilter' readOnly: true description: Applied filters required: - cache_ttl - description - filter MessageStateCacheFilter: type: object description: '' properties: resource_uuid: type: string readOnly: true nullable: true description: Filter by resource UUID message_type: type: string readOnly: true nullable: true description: Filter by message type required: - message_type - resource_uuid MessageTemplate: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 subject: type: string body: type: string required: - body - name - subject - url - uuid description: '' MessageTemplateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 subject: type: string minLength: 1 body: type: string minLength: 1 required: - body - name - subject description: '' MetricsReset: type: object description: '' properties: status: type: string readOnly: true description: Operation status required: - status MigrationCreate: type: object properties: mappings: $ref: '#/components/schemas/Mapping' src_resource: type: string format: uuid required: - src_resource description: '' MigrationCreateRequest: type: object properties: name: type: string writeOnly: true minLength: 1 description: type: string writeOnly: true minLength: 1 mappings: $ref: '#/components/schemas/MappingRequest' src_resource: type: string format: uuid dst_offering: type: string format: uuid writeOnly: true dst_plan: type: string format: uuid writeOnly: true required: - dst_offering - dst_plan - src_resource description: '' MigrationDetails: type: object properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true mappings: $ref: '#/components/schemas/Mapping' created_by_uuid: type: string format: uuid readOnly: true created_by_full_name: type: string readOnly: true src_offering_uuid: type: string format: uuid readOnly: true src_offering_name: type: string readOnly: true dst_offering_uuid: type: string format: uuid readOnly: true dst_offering_name: type: string readOnly: true src_resource_uuid: type: string format: uuid readOnly: true src_resource_name: type: string readOnly: true dst_resource_uuid: type: string format: uuid readOnly: true dst_resource_name: type: string readOnly: true dst_resource_state: type: string readOnly: true state: type: string readOnly: true error_message: type: string error_traceback: type: string required: - created - created_by_full_name - created_by_uuid - dst_offering_name - dst_offering_uuid - dst_resource_name - dst_resource_state - dst_resource_uuid - mappings - modified - src_offering_name - src_offering_uuid - src_resource_name - src_resource_uuid - state - uuid description: '' MigrationDetailsRequest: type: object properties: mappings: $ref: '#/components/schemas/MappingRequest' error_message: type: string error_traceback: type: string required: - mappings description: '' MinimalConsumptionLogicEnum: enum: - fixed - linear type: string description: '' MoveOfferingRequest: type: object properties: customer: type: string format: uri description: Target customer URL with service provider profile where the offering should be moved preserve_permissions: type: boolean description: Whether to preserve existing permissions when moving the offering required: - customer - preserve_permissions description: '' MoveProjectRequest: type: object properties: customer: type: string format: uri preserve_permissions: type: boolean required: - customer - preserve_permissions description: '' MoveResourceRequest: type: object properties: project: allOf: - $ref: '#/components/schemas/ProjectHyperlinkRequest' writeOnly: true description: Target project URL where the resource should be moved required: - project description: '' MyAssignmentBatch: type: object description: '' properties: uuid: type: string format: uuid call_uuid: type: string format: uuid call_name: type: string status: type: string status_display: type: string sent_at: type: string format: date-time expires_at: type: string format: date-time nullable: true is_expired: type: boolean items_count: type: integer items_pending_count: type: integer manager_notes: type: string required: - call_name - call_uuid - expires_at - is_expired - items_count - items_pending_count - manager_notes - sent_at - status - status_display - uuid MyAssignmentBatchDetail: type: object description: '' properties: uuid: type: string format: uuid call_uuid: type: string format: uuid call_name: type: string status: type: string status_display: type: string sent_at: type: string format: date-time expires_at: type: string format: date-time nullable: true is_expired: type: boolean items_count: type: integer items_pending_count: type: integer manager_notes: type: string items: type: array items: $ref: '#/components/schemas/MyAssignmentItem' required: - call_name - call_uuid - expires_at - is_expired - items - items_count - items_pending_count - manager_notes - sent_at - status - status_display - uuid MyAssignmentItem: type: object description: '' properties: uuid: type: string format: uuid proposal_uuid: type: string format: uuid proposal_name: type: string proposal_slug: type: string proposal_summary: type: string status: type: string status_display: type: string affinity_score: type: number format: double nullable: true has_coi: type: boolean required: - affinity_score - has_coi - proposal_name - proposal_slug - proposal_summary - proposal_uuid - status - status_display - uuid NameEnum: enum: - EESSI - Spack type: string description: '' NameUUID: type: object properties: name: type: string readOnly: true description: Name of the entity uuid: type: string format: uuid readOnly: true description: UUID of the entity required: - name - uuid description: '' NestedAgentProcessor: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string maxLength: 150 last_run: type: string format: date-time nullable: true backend_type: type: string description: Type of the backend, for example SLURM. maxLength: 100 backend_version: type: string nullable: true maxLength: 100 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - backend_type - created - modified - name - url - uuid description: '' NestedAgentService: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string maxLength: 150 mode: type: string nullable: true maxLength: 100 state: allOf: - $ref: '#/components/schemas/AgentServiceState' readOnly: true statistics: {} created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - created - modified - name - state - url - uuid description: '' NestedAgentServiceRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 mode: type: string nullable: true maxLength: 100 statistics: {} required: - name description: '' NestedAttribute: type: object properties: key: type: string pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 255 title: type: string maxLength: 255 type: $ref: '#/components/schemas/NestedAttributeTypeEnum' options: type: array items: $ref: '#/components/schemas/NestedAttributeOption' required: type: boolean description: A value must be provided for the attribute. default: nullable: true required: [] description: '' NestedAttributeOption: type: object properties: key: type: string pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 255 title: type: string maxLength: 255 required: [] description: '' NestedAttributeOptionRequest: type: object properties: key: type: string minLength: 1 pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 255 title: type: string minLength: 1 maxLength: 255 required: - key - title description: '' NestedAttributeRequest: type: object properties: key: type: string minLength: 1 pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 255 title: type: string minLength: 1 maxLength: 255 type: $ref: '#/components/schemas/NestedAttributeTypeEnum' options: type: array items: $ref: '#/components/schemas/NestedAttributeOptionRequest' required: type: boolean description: A value must be provided for the attribute. default: nullable: true required: - key - options - title - type description: '' NestedAttributeTypeEnum: enum: - boolean - string - text - integer - choice - list type: string description: '' NestedCampaign: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 start_date: type: string format: date description: Starting from this date, the campaign is active. end_date: type: string format: date description: The last day the campaign is active. discount_type: $ref: '#/components/schemas/DiscountTypeEnum' discount: type: integer maximum: 2147483647 minimum: -2147483648 stock: type: integer maximum: 2147483647 minimum: 0 nullable: true description: type: string maxLength: 4096 months: type: integer maximum: 2147483647 minimum: 0 description: How many months in a row should the related service (when activated) get special deal (0 for indefinitely until active) service_provider: type: string format: uri required: [] NestedColumn: type: object properties: uuid: type: string format: uuid readOnly: true index: type: integer maximum: 32767 minimum: 0 description: Index allows to reorder columns. title: type: string description: Title is rendered as column header. maxLength: 255 attribute: type: string description: Resource attribute is rendered as table cell. maxLength: 255 widget: nullable: true description: Widget field allows to customise table cell rendering. oneOf: - $ref: '#/components/schemas/WidgetEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' required: [] description: '' NestedColumnRequest: type: object properties: index: type: integer maximum: 32767 minimum: 0 description: Index allows to reorder columns. title: type: string minLength: 1 description: Title is rendered as column header. maxLength: 255 attribute: type: string description: Resource attribute is rendered as table cell. maxLength: 255 widget: nullable: true description: Widget field allows to customise table cell rendering. oneOf: - $ref: '#/components/schemas/WidgetEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' required: - index - title description: '' NestedCustomerUsagePolicyComponent: type: object properties: type: type: string readOnly: true limit: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 period_name: type: string readOnly: true component: type: string format: uuid required: - component - limit - period_name - type description: '' NestedCustomerUsagePolicyComponentRequest: type: object properties: limit: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 component: type: string format: uuid required: - component - limit description: '' NestedEndpoint: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 url: type: string description: URL of the access endpoint required: [] description: '' NestedEndpointRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 url: type: string minLength: 1 description: URL of the access endpoint required: - name - url description: '' NestedFeedback: type: object properties: evaluation: type: integer readOnly: true description: Customer satisfaction rating (1-5 stars) evaluation_number: type: integer readOnly: true description: Numeric value of the rating comment: type: string state: type: string readOnly: true description: Current state of the feedback required: - evaluation - evaluation_number - state description: '' NestedFeedbackRequest: type: object properties: comment: type: string description: '' NestedOfferingComponentLimit: type: object properties: type: type: string limit: type: integer maximum: 2147483647 minimum: -2147483648 required: - limit - type description: '' NestedOfferingComponentLimitRequest: type: object properties: type: type: string minLength: 1 limit: type: integer maximum: 2147483647 minimum: -2147483648 required: - limit - type description: '' NestedOfferingFile: type: object properties: name: type: string maxLength: 150 created: type: string format: date-time readOnly: true file: type: string format: uri required: [] description: '' NestedOfferingFileRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 file: type: string format: binary required: - file - name description: '' NestedPartition: type: object description: '' properties: uuid: type: string format: uuid readOnly: true partition_name: type: string description: Name of the SLURM partition maxLength: 255 cpu_bind: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default task binding policy (SLURM cpu_bind) def_cpu_per_gpu: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default CPUs allocated per GPU max_cpus_per_node: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per node max_cpus_per_socket: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per socket def_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per CPU in MB def_mem_per_gpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per GPU in MB def_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per node in MB max_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per CPU in MB max_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per node in MB default_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default time limit in minutes max_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum time limit in minutes grace_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Preemption grace time in seconds max_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum nodes per job min_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum nodes per job exclusive_topo: type: boolean description: Exclusive topology access required exclusive_user: type: boolean description: Exclusive user access required priority_tier: type: integer maximum: 32767 minimum: 0 nullable: true description: Priority tier for scheduling and preemption qos: type: string description: Quality of Service (QOS) name maxLength: 255 req_resv: type: boolean description: Require reservation for job allocation required: [] NestedPartitionRequest: type: object description: '' properties: partition_name: type: string minLength: 1 description: Name of the SLURM partition maxLength: 255 cpu_bind: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default task binding policy (SLURM cpu_bind) def_cpu_per_gpu: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default CPUs allocated per GPU max_cpus_per_node: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per node max_cpus_per_socket: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per socket def_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per CPU in MB def_mem_per_gpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per GPU in MB def_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per node in MB max_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per CPU in MB max_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per node in MB default_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default time limit in minutes max_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum time limit in minutes grace_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Preemption grace time in seconds max_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum nodes per job min_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum nodes per job exclusive_topo: type: boolean description: Exclusive topology access required exclusive_user: type: boolean description: Exclusive user access required priority_tier: type: integer maximum: 32767 minimum: 0 nullable: true description: Priority tier for scheduling and preemption qos: type: string description: Quality of Service (QOS) name maxLength: 255 req_resv: type: boolean description: Require reservation for job allocation required: - partition_name NestedPlanComponent: type: object properties: type: type: string description: Unique internal name of the measured unit, for example floating_ip. readOnly: true name: type: string description: Display name for the measured unit, for example, Floating IP. readOnly: true measured_unit: type: string description: Unit of measurement, for example, GB. readOnly: true amount: type: integer maximum: 2147483647 minimum: 0 price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ title: Price per unit per billing period. future_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ nullable: true title: Price per unit for future month. discount_threshold: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum amount to be eligible for discount. discount_rate: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Discount rate in percentage. required: [] description: '' NestedPlanComponentRequest: type: object properties: amount: type: integer maximum: 2147483647 minimum: 0 price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ title: Price per unit per billing period. future_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ nullable: true title: Price per unit for future month. discount_threshold: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum amount to be eligible for discount. discount_rate: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Discount rate in percentage. description: '' NestedPriceEstimate: type: object properties: total: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true current: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true tax: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true tax_current: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true required: [] description: '' NestedProject: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true required: - url - uuid NestedProjectPermission: type: object properties: url: type: string format: uri readOnly: true uuid: type: string readOnly: true name: type: string readOnly: true role_name: type: string readOnly: true expiration_time: type: string format: date-time nullable: true required: [] description: '' NestedProviderOffering: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true type: type: string maxLength: 100 name: type: string maxLength: 150 required: - name - type - url - uuid description: '' NestedProviderOfferingRequest: type: object properties: type: type: string minLength: 1 maxLength: 100 name: type: string minLength: 1 maxLength: 150 required: - name - type description: '' NestedPublicOffering: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true type: type: string maxLength: 100 name: type: string maxLength: 150 required: - name - type - url - uuid description: '' NestedPublicOfferingRequest: type: object properties: type: type: string minLength: 1 maxLength: 100 name: type: string minLength: 1 maxLength: 150 required: - name - type description: '' NestedRemoteLocalCategory: type: object properties: local_category: type: string format: uri remote_category: type: string format: uuid local_category_name: type: string readOnly: true local_category_uuid: type: string format: uuid readOnly: true remote_category_name: type: string maxLength: 255 required: - local_category - local_category_name - local_category_uuid - remote_category description: '' NestedRemoteLocalCategoryRequest: type: object properties: local_category: type: string format: uri remote_category: type: string format: uuid remote_category_name: type: string minLength: 1 maxLength: 255 required: - local_category - remote_category description: '' NestedRequestedOffering: type: object properties: uuid: type: string format: uuid readOnly: true state: allOf: - $ref: '#/components/schemas/RequestedOfferingStates' readOnly: true offering: type: string format: uri offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true provider_name: type: string readOnly: true category_uuid: type: string format: uuid readOnly: true category_name: type: string readOnly: true call_managing_organisation: type: string readOnly: true attributes: {} plan: type: string format: uri nullable: true plan_details: allOf: - $ref: '#/components/schemas/BasePublicPlan' readOnly: true options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true components: type: array items: $ref: '#/components/schemas/OfferingComponent' readOnly: true created: type: string format: date-time readOnly: true required: [] description: '' NestedRequestedOfferingRequest: type: object properties: offering: type: string format: uri attributes: {} plan: type: string format: uri nullable: true required: - offering description: '' NestedRole: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 url: type: string format: uri readOnly: true required: [] description: '' NestedRoleRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 required: - name description: '' NestedRound: type: object properties: uuid: type: string format: uuid readOnly: true slug: type: string maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string readOnly: true start_time: type: string format: date-time cutoff_time: type: string format: date-time status: allOf: - $ref: '#/components/schemas/RoundStatus' readOnly: true review_strategy: $ref: '#/components/schemas/ReviewStrategyEnum' deciding_entity: $ref: '#/components/schemas/DecidingEntityEnum' allocation_time: $ref: '#/components/schemas/AllocationTimeEnum' allocation_date: type: string format: date-time nullable: true minimal_average_scoring: type: string format: decimal pattern: ^-?\d{0,4}(?:\.\d{0,1})?$ nullable: true review_duration_in_days: type: integer maximum: 2147483647 minimum: 0 nullable: true minimum_number_of_reviewers: type: integer maximum: 2147483647 minimum: 0 nullable: true required: [] description: '' NestedRoundRequest: type: object properties: slug: type: string minLength: 1 maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ start_time: type: string format: date-time cutoff_time: type: string format: date-time review_strategy: $ref: '#/components/schemas/ReviewStrategyEnum' deciding_entity: $ref: '#/components/schemas/DecidingEntityEnum' allocation_time: $ref: '#/components/schemas/AllocationTimeEnum' allocation_date: type: string format: date-time nullable: true minimal_average_scoring: type: string format: decimal pattern: ^-?\d{0,4}(?:\.\d{0,1})?$ nullable: true review_duration_in_days: type: integer maximum: 2147483647 minimum: 0 nullable: true minimum_number_of_reviewers: type: integer maximum: 2147483647 minimum: 0 nullable: true required: - cutoff_time - start_time description: '' NestedScreenshot: type: object properties: name: type: string maxLength: 150 uuid: type: string format: uuid readOnly: true description: type: string maxLength: 4096 image: type: string format: uri thumbnail: type: string format: uri readOnly: true nullable: true created: type: string format: date-time readOnly: true required: [] description: '' NestedScreenshotRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 image: type: string format: binary required: - image - name description: '' NestedSection: type: object properties: key: type: string maxLength: 255 title: type: string maxLength: 255 attributes: type: array items: $ref: '#/components/schemas/NestedAttribute' readOnly: true is_standalone: type: boolean description: Whether section is rendered as a separate tab. required: [] description: '' NestedSectionRequest: type: object properties: key: type: string minLength: 1 maxLength: 255 title: type: string minLength: 1 maxLength: 255 is_standalone: type: boolean description: Whether section is rendered as a separate tab. required: - key - title description: '' NestedSecurityGroupRule: type: object properties: ethertype: allOf: - $ref: '#/components/schemas/EthertypeEnum' description: IP protocol version - either 'IPv4' or 'IPv6' direction: allOf: - $ref: '#/components/schemas/DirectionEnum' description: Traffic direction - either 'ingress' (incoming) or 'egress' (outgoing) protocol: description: The network protocol (TCP, UDP, ICMP, or empty for any protocol) oneOf: - $ref: '#/components/schemas/ProtocolEnum' - $ref: '#/components/schemas/BlankEnum' from_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Starting port number in the range (1-65535) to_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Ending port number in the range (1-65535) cidr: type: string nullable: true description: CIDR notation for the source/destination network address range maxLength: 255 description: type: string maxLength: 4096 remote_group_name: type: string readOnly: true remote_group_uuid: type: string format: uuid readOnly: true id: type: integer readOnly: true required: [] description: '' NestedSecurityGroupRuleRequest: type: object properties: ethertype: allOf: - $ref: '#/components/schemas/EthertypeEnum' description: IP protocol version - either 'IPv4' or 'IPv6' direction: allOf: - $ref: '#/components/schemas/DirectionEnum' description: Traffic direction - either 'ingress' (incoming) or 'egress' (outgoing) protocol: description: The network protocol (TCP, UDP, ICMP, or empty for any protocol) oneOf: - $ref: '#/components/schemas/ProtocolEnum' - $ref: '#/components/schemas/BlankEnum' from_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Starting port number in the range (1-65535) to_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Ending port number in the range (1-65535) cidr: type: string nullable: true description: CIDR notation for the source/destination network address range maxLength: 255 description: type: string maxLength: 4096 description: '' NestedSoftwareCatalog: type: object properties: uuid: type: string format: uuid readOnly: true catalog: allOf: - $ref: '#/components/schemas/CatalogSummary' readOnly: true enabled_cpu_family: description: 'List of enabled CPU families: [''x86_64'', ''aarch64'']' enabled_cpu_microarchitectures: description: 'List of enabled CPU microarchitectures: [''generic'', ''zen3'']' package_count: type: integer readOnly: true partition: allOf: - $ref: '#/components/schemas/PartitionSummary' readOnly: true nullable: true required: [] description: '' NestedSoftwareCatalogRequest: type: object properties: enabled_cpu_family: description: 'List of enabled CPU families: [''x86_64'', ''aarch64'']' enabled_cpu_microarchitectures: description: 'List of enabled CPU microarchitectures: [''generic'', ''zen3'']' description: '' NestedSoftwareTarget: type: object description: '' properties: uuid: type: string format: uuid readOnly: true target_type: type: string description: Type of target (architecture, platform, variant, etc.) maxLength: 50 target_name: type: string description: Target identifier (x86_64/generic, linux, variant_name, etc.) maxLength: 100 target_subtype: type: string description: Target subtype (microarchitecture, distribution, etc.) maxLength: 50 location: type: string description: Target location (CVMFS path, download URL, etc.) maxLength: 500 metadata: description: Target-specific metadata (build options, system requirements, etc.) required: - uuid NestedSoftwareTargetRequest: type: object description: '' properties: target_type: type: string minLength: 1 description: Type of target (architecture, platform, variant, etc.) maxLength: 50 target_name: type: string minLength: 1 description: Target identifier (x86_64/generic, linux, variant_name, etc.) maxLength: 100 target_subtype: type: string description: Target subtype (microarchitecture, distribution, etc.) maxLength: 50 location: type: string description: Target location (CVMFS path, download URL, etc.) maxLength: 500 metadata: description: Target-specific metadata (build options, system requirements, etc.) NestedSoftwareVersion: type: object description: '' properties: uuid: type: string format: uuid readOnly: true version: type: string maxLength: 100 release_date: type: string format: date nullable: true targets: type: array items: $ref: '#/components/schemas/NestedSoftwareTarget' readOnly: true module: type: object additionalProperties: {} readOnly: true required_modules: type: array items: {} readOnly: true extensions: type: array items: {} readOnly: true toolchain: type: object additionalProperties: {} readOnly: true toolchain_families_compatibility: type: array items: {} readOnly: true required: - extensions - module - required_modules - targets - toolchain - toolchain_families_compatibility - uuid - version NestedSoftwareVersionRequest: type: object description: '' properties: version: type: string minLength: 1 maxLength: 100 release_date: type: string format: date nullable: true required: - version NestedTag: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 100 required: [] description: '' NestedTagRequest: type: object properties: name: type: string minLength: 1 maxLength: 100 required: - name description: '' NetworkRBACPolicy: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true network: type: string format: uri network_name: type: string readOnly: true target_tenant: type: string format: uri target_tenant_name: type: string readOnly: true backend_id: type: string readOnly: true policy_type: allOf: - $ref: '#/components/schemas/PolicyTypeEnum' default: access_as_shared description: Type of access granted - either shared access or external network access created: type: string format: date-time readOnly: true required: [] NetworkRBACPolicyRequest: type: object description: '' properties: network: type: string format: uri target_tenant: type: string format: uri policy_type: allOf: - $ref: '#/components/schemas/PolicyTypeEnum' default: access_as_shared description: Type of access granted - either shared access or external network access required: - network - target_tenant NodeDiskDriverEnum: enum: - sd - vd type: string description: '' Notification: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true key: type: string maxLength: 255 description: type: string maxLength: 4096 enabled: type: boolean readOnly: true description: Indicates if notification is enabled or disabled created: type: string format: date-time readOnly: true templates: type: array items: $ref: '#/components/schemas/NotificationTemplateDetailSerializers' readOnly: true context_schema: type: object additionalProperties: {} description: |- Finds the notification definition in the global NOTIFICATIONS dictionary and returns its 'context' schema. readOnly: true required: - context_schema - created - enabled - key - templates - url - uuid description: '' NotificationRequest: type: object properties: key: type: string minLength: 1 maxLength: 255 description: type: string maxLength: 4096 required: - key description: '' NotificationTemplateDetailSerializers: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true path: type: string description: 'Example: ''flatpages/default.html''' maxLength: 150 name: type: string maxLength: 150 content: type: string nullable: true readOnly: true original_content: type: string nullable: true readOnly: true is_content_overridden: type: boolean readOnly: true required: - content - is_content_overridden - name - original_content - path - url - uuid description: '' NotificationTemplateDetailSerializersRequest: type: object properties: path: type: string minLength: 1 description: 'Example: ''flatpages/default.html''' maxLength: 150 name: type: string minLength: 1 maxLength: 150 required: - name - path description: '' NotificationTemplateUpdateSerializersRequest: type: object properties: content: type: string minLength: 1 required: - content description: '' NotifySystemEnum: enum: - AdminAnnouncement - BroadcastMessage type: string description: '' NullEnum: enum: - null description: '' ObservableObjectTypeEnum: enum: - order - user_role - resource - offering_user - importable_resources - service_account - course_account - resource_periodic_limits type: string description: '' ObtainAuthTokenRequest: type: object description: '' properties: username: type: string minLength: 1 description: Username for authentication maxLength: 128 password: type: string minLength: 1 description: Password for authentication maxLength: 128 required: - password - username OecdFos2007CodeEnum: enum: - '1.1' - '1.2' - '1.3' - '1.4' - '1.5' - '1.6' - '1.7' - '2.1' - '2.2' - '2.3' - '2.4' - '2.5' - '2.6' - '2.7' - '2.8' - '2.9' - '2.10' - '2.11' - '2.12' - '3.1' - '3.2' - '3.3' - '3.4' - '3.5' - '4.1' - '4.2' - '4.3' - '4.4' - '4.5' - '5.1' - '5.2' - '5.3' - '5.4' - '5.5' - '5.6' - '5.7' - '5.8' - '5.9' - '6.1' - '6.2' - '6.3' - '6.4' - '6.5' type: string description: '' Offering: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true name: type: string maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ description: type: string maxLength: 4096 full_description: type: string privacy_policy_link: type: string format: uri maxLength: 200 access_url: type: string format: uri description: Publicly accessible offering access URL maxLength: 200 endpoints: type: array items: $ref: '#/components/schemas/NestedEndpoint' readOnly: true software_catalogs: type: array items: $ref: '#/components/schemas/NestedSoftwareCatalog' readOnly: true partitions: type: array items: $ref: '#/components/schemas/NestedPartition' readOnly: true roles: type: array items: $ref: '#/components/schemas/NestedRole' readOnly: true customer: type: string format: uri nullable: true customer_uuid: type: string format: uuid readOnly: true nullable: true customer_name: type: string readOnly: true nullable: true project: type: string format: uri readOnly: true nullable: true project_uuid: type: string format: uuid readOnly: true nullable: true project_name: type: string readOnly: true nullable: true category: type: string format: uri category_uuid: type: string format: uuid readOnly: true category_title: type: string readOnly: true attributes: type: object additionalProperties: {} readOnly: true options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true resource_options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true components: type: array items: $ref: '#/components/schemas/OfferingComponent' readOnly: true plugin_options: allOf: - $ref: '#/components/schemas/MergedPluginOptions' readOnly: true state: allOf: - $ref: '#/components/schemas/OfferingState' readOnly: true vendor_details: type: string getting_started: type: string integration_guide: type: string thumbnail: type: string format: uri nullable: true order_count: type: integer readOnly: true plans: type: array items: $ref: '#/components/schemas/BasePublicPlan' readOnly: true screenshots: type: array items: $ref: '#/components/schemas/NestedScreenshot' readOnly: true type: type: string maxLength: 100 shared: type: boolean description: Accessible to all customers. billable: type: boolean description: Purchase and usage is invoiced. scope: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true nullable: true scope_name: type: string format: uuid readOnly: true nullable: true scope_state: nullable: true readOnly: true oneOf: - $ref: '#/components/schemas/CoreStates' - $ref: '#/components/schemas/NullEnum' scope_error_message: type: string nullable: true readOnly: true files: type: array items: $ref: '#/components/schemas/NestedOfferingFile' readOnly: true quotas: type: array items: $ref: '#/components/schemas/Quota' readOnly: true paused_reason: type: string readOnly: true datacite_doi: type: string maxLength: 255 citation_count: type: integer readOnly: true description: Number of citations of a DOI latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' backend_id: type: string maxLength: 255 organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true tags: type: array items: $ref: '#/components/schemas/NestedTag' readOnly: true image: type: string format: uri nullable: true total_customers: type: integer nullable: true readOnly: true total_cost: type: integer nullable: true readOnly: true total_cost_estimated: type: integer nullable: true readOnly: true parent_description: type: string readOnly: true nullable: true parent_uuid: type: string format: uuid readOnly: true nullable: true parent_name: type: string readOnly: true nullable: true backend_metadata: {} has_compliance_requirements: type: boolean readOnly: true billing_type_classification: type: string description: |- Classify offering components by billing type. Returns 'limit_only', 'usage_only', or 'mixed'. readOnly: true compliance_checklist: type: string format: uri nullable: true user_has_consent: type: boolean readOnly: true is_accessible: type: boolean readOnly: true googlecalendar: $ref: '#/components/schemas/GoogleCalendar' required: [] OfferingBackendIdRulesUpdateRequest: type: object properties: backend_id_rules: description: 'Validation rules for resource backend_id: format regex and uniqueness scope.' description: '' OfferingBackendMetadataRequest: type: object properties: backend_metadata: {} description: '' OfferingComplianceChecklistUpdateRequest: type: object properties: compliance_checklist: type: string format: uuid nullable: true description: '' OfferingComponent: type: object properties: uuid: type: string format: uuid readOnly: true billing_type: $ref: '#/components/schemas/BillingTypeEnum' type: type: string description: Unique internal name of the measured unit, for example floating_ip. pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 50 name: type: string description: Display name for the measured unit, for example, Floating IP. maxLength: 150 description: type: string maxLength: 4096 measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 unit_factor: type: integer maximum: 2147483647 minimum: -2147483648 description: The conversion factor from backend units to measured_unit limit_period: nullable: true oneOf: - $ref: '#/components/schemas/LimitPeriodEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' limit_amount: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true article_code: type: string maxLength: 30 max_value: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true min_value: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true max_available_limit: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true is_boolean: type: boolean default_limit: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true factor: type: integer nullable: true readOnly: true is_builtin: type: boolean readOnly: true is_prepaid: type: boolean overage_component: type: string format: uuid nullable: true min_prepaid_duration: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true max_prepaid_duration: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true required: [] description: '' OfferingComponentLimitRequest: type: object properties: min: type: integer minimum: 0 description: Minimum allowed value max: type: integer minimum: 0 description: Maximum allowed value max_available_limit: type: integer minimum: 0 description: Maximum available limit across all resources required: - max - max_available_limit - min description: '' OfferingComponentRequest: type: object properties: billing_type: $ref: '#/components/schemas/BillingTypeEnum' type: type: string minLength: 1 description: Unique internal name of the measured unit, for example floating_ip. pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 50 name: type: string minLength: 1 description: Display name for the measured unit, for example, Floating IP. maxLength: 150 description: type: string maxLength: 4096 measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 unit_factor: type: integer maximum: 2147483647 minimum: -2147483648 description: The conversion factor from backend units to measured_unit limit_period: nullable: true oneOf: - $ref: '#/components/schemas/LimitPeriodEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' limit_amount: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true article_code: type: string maxLength: 30 max_value: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true min_value: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true max_available_limit: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true is_boolean: type: boolean default_limit: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true is_prepaid: type: boolean overage_component: type: string format: uuid nullable: true min_prepaid_duration: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true max_prepaid_duration: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true required: - billing_type - name - type description: '' OfferingComponentStat: type: object properties: period: type: string readOnly: true billing_period: type: string readOnly: true date: type: string readOnly: true usage: type: integer readOnly: true description: type: string readOnly: true measured_unit: type: string readOnly: true type: type: string readOnly: true name: type: string readOnly: true required: - billing_period - date - description - measured_unit - name - period - type - usage description: '' OfferingCost: type: object properties: offering_uuid: type: string format: uuid description: UUID of the offering offering_name: type: string description: Name of the offering cost: type: number format: double description: Total cost for the offering required: - cost - offering_name - offering_uuid description: '' OfferingCostsSummary: type: object description: '' properties: total_cost: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Total cost of all active resources across all offerings offering_count: type: integer description: Number of offerings with active resources average_cost: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Average cost per offering required: - average_cost - offering_count - total_cost OfferingCountryStats: type: object properties: country: type: string description: Country code of the offering count: type: integer description: Number of offerings in this country required: - count - country description: '' OfferingCreateRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ description: type: string full_description: type: string privacy_policy_link: type: string format: uri maxLength: 200 access_url: type: string format: uri description: Publicly accessible offering access URL maxLength: 200 customer: type: string format: uri nullable: true category: type: string format: uri attributes: {} options: $ref: '#/components/schemas/OfferingOptionsRequest' resource_options: $ref: '#/components/schemas/OfferingOptionsRequest' components: type: array items: $ref: '#/components/schemas/OfferingComponentRequest' plugin_options: $ref: '#/components/schemas/MergedPluginOptionsRequest' vendor_details: type: string getting_started: type: string integration_guide: type: string thumbnail: type: string format: binary nullable: true plans: type: array items: $ref: '#/components/schemas/BaseProviderPlanRequest' type: type: string minLength: 1 maxLength: 100 shared: type: boolean description: Accessible to all customers. billable: type: boolean description: Purchase and usage is invoiced. datacite_doi: type: string maxLength: 255 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' backend_id: type: string maxLength: 255 backend_id_rules: description: 'Validation rules for resource backend_id: format regex and uniqueness scope.' image: type: string format: binary nullable: true backend_metadata: {} compliance_checklist: type: string format: uri nullable: true limits: type: object additionalProperties: $ref: '#/components/schemas/OfferingComponentLimitRequest' writeOnly: true required: - category - name - type OfferingDescriptionUpdateRequest: type: object description: '' properties: category: type: string format: uri required: - category OfferingEstimatedCostPolicy: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true scope: type: string format: uri scope_name: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true actions: type: string maxLength: 255 created: type: string format: date-time readOnly: true created_by_full_name: type: string readOnly: true created_by_username: type: string readOnly: true has_fired: type: boolean readOnly: true fired_datetime: type: string format: date-time readOnly: true options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 period_name: type: string readOnly: true organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. required: - actions - created - created_by_full_name - created_by_username - fired_datetime - has_fired - limit_cost - period_name - scope - scope_name - scope_uuid - url - uuid OfferingEstimatedCostPolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. required: - actions - limit_cost - scope OfferingExportData: type: object description: '' properties: offering: $ref: '#/components/schemas/ExportOfferingData' components: type: array items: $ref: '#/components/schemas/ExportComponentData' plans: type: array items: $ref: '#/components/schemas/ExportPlanData' screenshots: type: array items: $ref: '#/components/schemas/ExportScreenshotData' files: type: array items: $ref: '#/components/schemas/ExportFileData' endpoints: type: array items: $ref: '#/components/schemas/ExportEndpointData' organization_groups: type: array items: $ref: '#/components/schemas/ExportOrganizationGroupData' terms_of_service: type: array items: $ref: '#/components/schemas/ExportTermsOfServiceData' plugin_options: {} secret_options: {} resource_options: {} required: - offering OfferingExportDataRequest: type: object description: '' properties: offering: $ref: '#/components/schemas/ExportOfferingDataRequest' components: type: array items: $ref: '#/components/schemas/ExportComponentDataRequest' plans: type: array items: $ref: '#/components/schemas/ExportPlanDataRequest' screenshots: type: array items: $ref: '#/components/schemas/ExportScreenshotDataRequest' files: type: array items: $ref: '#/components/schemas/ExportFileDataRequest' endpoints: type: array items: $ref: '#/components/schemas/ExportEndpointDataRequest' organization_groups: type: array items: $ref: '#/components/schemas/ExportOrganizationGroupDataRequest' terms_of_service: type: array items: $ref: '#/components/schemas/ExportTermsOfServiceDataRequest' plugin_options: {} secret_options: {} resource_options: {} required: - offering OfferingExportParametersRequest: type: object description: '' properties: include_components: type: boolean default: true description: Include offering components in export include_plans: type: boolean default: true description: Include offering plans in export include_screenshots: type: boolean default: true description: Include offering screenshots in export include_files: type: boolean default: true description: Include offering files in export include_endpoints: type: boolean default: true description: Include offering access endpoints in export include_organization_groups: type: boolean default: true description: Include organization groups associations in export include_terms_of_service: type: boolean default: true description: Include terms of service configurations in export include_plugin_options: type: boolean default: true description: Include plugin options in export include_secret_options: type: boolean default: false description: 'Include secret options in export (WARNING: sensitive data)' include_attributes: type: boolean default: true description: Include offering attributes in export include_options: type: boolean default: true description: Include offering options in export include_resource_options: type: boolean default: true description: Include resource options in export OfferingExportResponse: type: object description: '' properties: offering_uuid: type: string format: uuid description: UUID of the exported offering offering_name: type: string description: Name of the exported offering export_data: allOf: - $ref: '#/components/schemas/OfferingExportData' description: Complete export data containing the offering structure exported_components: type: array items: type: string description: List of exported component types export_timestamp: type: string format: date-time description: Timestamp when the export was completed required: - export_data - export_timestamp - exported_components - offering_name - offering_uuid OfferingFile: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 offering: type: string format: uri created: type: string format: date-time readOnly: true file: type: string format: uri required: [] OfferingFileRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 offering: type: string format: uri file: type: string format: binary required: - file - name - offering OfferingGroups: type: object properties: customer_name: type: string readOnly: true customer_uuid: type: string readOnly: true offerings: type: array items: $ref: '#/components/schemas/OfferingReference' readOnly: true required: - customer_name - customer_uuid - offerings description: '' OfferingImageRequest: type: object properties: image: type: string format: binary required: - image description: '' OfferingImportParametersRequest: type: object description: '' properties: customer: type: string format: uuid nullable: true description: Target customer for imported offering. If not provided, uses current user's customer category: type: string minLength: 1 nullable: true description: Target category name for imported offering. If not provided, uses category from export data project: type: string format: uuid nullable: true description: Target project for imported offering (optional) import_components: type: boolean default: true description: Import offering components import_plans: type: boolean default: true description: Import offering plans import_screenshots: type: boolean default: true description: Import offering screenshots import_files: type: boolean default: true description: Import offering files import_endpoints: type: boolean default: true description: Import offering access endpoints import_organization_groups: type: boolean default: false description: Import organization groups associations (may fail if groups don't exist) import_terms_of_service: type: boolean default: true description: Import terms of service configurations import_plugin_options: type: boolean default: true description: Import plugin options import_secret_options: type: boolean default: false description: 'Import secret options (WARNING: will overwrite existing secrets)' overwrite_existing: type: boolean default: false description: Overwrite existing offering if one with the same name exists offering_data: allOf: - $ref: '#/components/schemas/OfferingExportDataRequest' description: The exported offering data to import required: - offering_data OfferingImportResponse: type: object description: '' properties: imported_offering_uuid: type: string format: uuid description: UUID of the imported offering imported_offering_name: type: string description: Name of the imported offering imported_components: type: array items: type: string description: List of imported component types warnings: type: array items: type: string description: List of warnings encountered during import import_timestamp: type: string format: date-time description: Timestamp when the import was completed required: - import_timestamp - imported_components - imported_offering_name - imported_offering_uuid OfferingIntegrationUpdateRequest: type: object properties: secret_options: $ref: '#/components/schemas/MergedSecretOptionsRequest' plugin_options: $ref: '#/components/schemas/MergedPluginOptionsRequest' service_attributes: {} backend_id: type: string maxLength: 255 description: '' OfferingKeycloakGroup: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string readOnly: true title: Group name backend_id: type: string readOnly: true offering: type: string format: uri offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true role: type: string format: uri role_name: type: string readOnly: true role_scope_type: type: string description: Level this role applies at, e.g. 'cluster', 'project'. Empty means offering-wide. readOnly: true resource: type: string format: uri nullable: true resource_uuid: type: string format: uuid readOnly: true resource_name: type: string nullable: true readOnly: true scope_id: type: string default: '' description: Sub-entity identifier within a resource, e.g. Rancher project ID within a cluster. maxLength: 255 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - backend_id - created - modified - name - offering - offering_name - offering_uuid - resource - resource_name - resource_uuid - role - role_name - role_scope_type - url - uuid description: '' OfferingKeycloakMembership: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true username: type: string description: Keycloak user username maxLength: 255 email: type: string format: email description: User's email for notifications maxLength: 254 first_name: type: string readOnly: true last_name: type: string readOnly: true group: type: string format: uri readOnly: true group_name: type: string readOnly: true group_role_name: type: string readOnly: true group_offering_uuid: type: string format: uuid readOnly: true group_offering_name: type: string readOnly: true group_resource_name: type: string readOnly: true group_resource_uuid: type: string format: uuid readOnly: true group_scope_id: type: string description: Sub-entity identifier within a resource, e.g. Rancher project ID within a cluster. readOnly: true group_role_scope_type: type: string description: Level this role applies at, e.g. 'cluster', 'project'. Empty means offering-wide. readOnly: true group_role_scope_type_label: type: string description: Human-readable label for scope_type shown to end users, e.g. 'Rancher Project', 'Cluster Namespace'. Falls back to capitalized scope_type if empty. readOnly: true default: '' user: type: string format: uri nullable: true state: allOf: - $ref: '#/components/schemas/KeycloakUserGroupMembershipState' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true last_checked: type: string format: date-time readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true required: - created - email - error_message - error_traceback - first_name - group - group_name - group_offering_name - group_offering_uuid - group_resource_name - group_resource_uuid - group_role_name - group_role_scope_type - group_role_scope_type_label - group_scope_id - last_checked - last_name - modified - state - url - username - uuid description: '' OfferingKeycloakMembershipRequest: type: object properties: username: type: string minLength: 1 description: Keycloak user username maxLength: 255 email: type: string format: email minLength: 1 description: User's email for notifications maxLength: 254 offering: type: string format: uri writeOnly: true role: type: string format: uri writeOnly: true resource: type: string format: uri writeOnly: true nullable: true scope_id: type: string writeOnly: true default: '' user: type: string format: uri nullable: true required: - email - offering - role - username description: '' OfferingLocationUpdateRequest: type: object properties: latitude: type: number format: double longitude: type: number format: double required: - latitude - longitude description: '' OfferingOptions: type: object properties: order: type: array items: type: string options: type: object additionalProperties: $ref: '#/components/schemas/OptionField' required: [] description: '' OfferingOptionsRequest: type: object properties: order: type: array items: type: string minLength: 1 options: type: object additionalProperties: $ref: '#/components/schemas/OptionFieldRequest' required: - options - order description: '' OfferingOptionsUpdateRequest: type: object properties: options: $ref: '#/components/schemas/OfferingOptionsRequest' required: - options description: '' OfferingOverviewUpdateRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string full_description: type: string privacy_policy_link: type: string format: uri maxLength: 200 access_url: type: string format: uri description: Publicly accessible offering access URL maxLength: 200 getting_started: type: string integration_guide: type: string slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ required: - name OfferingPartition: type: object description: '' properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true offering: type: string format: uuid offering_name: type: string readOnly: true partition_name: type: string description: Name of the SLURM partition maxLength: 255 cpu_bind: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default task binding policy (SLURM cpu_bind) def_cpu_per_gpu: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default CPUs allocated per GPU max_cpus_per_node: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per node max_cpus_per_socket: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per socket def_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per CPU in MB def_mem_per_gpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per GPU in MB def_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per node in MB max_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per CPU in MB max_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per node in MB default_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default time limit in minutes max_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum time limit in minutes grace_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Preemption grace time in seconds max_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum nodes per job min_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum nodes per job exclusive_topo: type: boolean description: Exclusive topology access required exclusive_user: type: boolean description: Exclusive user access required priority_tier: type: integer maximum: 32767 minimum: 0 nullable: true description: Priority tier for scheduling and preemption qos: type: string description: Quality of Service (QOS) name maxLength: 255 req_resv: type: boolean description: Require reservation for job allocation required: - created - modified - offering - offering_name - partition_name - uuid OfferingPartitionRequest: type: object description: '' properties: offering: type: string format: uuid partition_name: type: string minLength: 1 description: Name of the SLURM partition maxLength: 255 cpu_bind: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default task binding policy (SLURM cpu_bind) def_cpu_per_gpu: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default CPUs allocated per GPU max_cpus_per_node: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per node max_cpus_per_socket: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per socket def_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per CPU in MB def_mem_per_gpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per GPU in MB def_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per node in MB max_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per CPU in MB max_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per node in MB default_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default time limit in minutes max_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum time limit in minutes grace_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Preemption grace time in seconds max_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum nodes per job min_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum nodes per job exclusive_topo: type: boolean description: Exclusive topology access required exclusive_user: type: boolean description: Exclusive user access required priority_tier: type: integer maximum: 32767 minimum: 0 nullable: true description: Priority tier for scheduling and preemption qos: type: string description: Quality of Service (QOS) name maxLength: 255 req_resv: type: boolean description: Require reservation for job allocation required: - offering - partition_name OfferingPauseRequest: type: object properties: paused_reason: type: string description: '' OfferingPermission: type: object description: '' properties: url: type: string format: uri readOnly: true pk: type: integer readOnly: true title: ID created: type: string format: date-time readOnly: true expiration_time: type: string format: date-time nullable: true created_by: type: string format: uri readOnly: true nullable: true offering: type: string format: uri readOnly: true offering_uuid: type: string format: uuid readOnly: true offering_slug: type: string readOnly: true offering_name: type: string readOnly: true role: type: string format: uri readOnly: true role_name: type: string readOnly: true user: type: string format: uri readOnly: true user_full_name: type: string readOnly: true user_native_name: type: string readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_uuid: type: string format: uuid readOnly: true user_email: type: string format: email title: Email address readOnly: true required: - created - created_by - offering - offering_name - offering_slug - offering_uuid - pk - role - role_name - url - user - user_email - user_full_name - user_native_name - user_username - user_uuid OfferingReference: type: object properties: offering_name: type: string readOnly: true description: Name of the offering offering_uuid: type: string format: uuid readOnly: true description: UUID of the offering required: - offering_name - offering_uuid description: '' OfferingReferral: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true scope: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true pid: type: string maxLength: 255 relation_type: type: string maxLength: 255 resource_type: type: string maxLength: 255 creator: type: string maxLength: 255 publisher: type: string maxLength: 255 published: type: string maxLength: 255 title: type: string maxLength: 255 referral_url: type: string maxLength: 255 required: - scope - scope_uuid - url - uuid description: '' OfferingResourceOptionsUpdateRequest: type: object properties: resource_options: $ref: '#/components/schemas/OfferingOptionsRequest' required: - resource_options description: '' OfferingSoftwareCatalog: type: object description: '' properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true offering: type: string format: uuid catalog: type: string format: uuid offering_name: type: string readOnly: true catalog_name: type: string readOnly: true catalog_version: type: string readOnly: true enabled_cpu_family: description: 'List of enabled CPU families: [''x86_64'', ''aarch64'']' enabled_cpu_microarchitectures: description: 'List of enabled CPU microarchitectures: [''generic'', ''zen3'']' partition: type: string format: uuid nullable: true partition_name: type: string readOnly: true required: - catalog - catalog_name - catalog_version - created - modified - offering - offering_name - partition_name - uuid OfferingSoftwareCatalogRequest: type: object description: '' properties: offering: type: string format: uuid catalog: type: string format: uuid enabled_cpu_family: description: 'List of enabled CPU families: [''x86_64'', ''aarch64'']' enabled_cpu_microarchitectures: description: 'List of enabled CPU microarchitectures: [''generic'', ''zen3'']' partition: type: string format: uuid nullable: true required: - catalog - offering OfferingState: enum: - Draft - Active - Paused - Archived - Unavailable type: string description: '' OfferingStats: type: object properties: count: type: integer description: Number of resources for the offering name: type: string description: Name of the offering uuid: type: string description: UUID of the offering country: type: string description: Country of the offering required: - count - country - name - uuid description: '' OfferingStatsCounter: type: object properties: category_uuid: type: string format: uuid description: UUID of the category category_title: type: string description: Title of the category service_provider_name: type: string description: Name of the service provider service_provider_uuid: type: string format: uuid description: UUID of the service provider count: type: integer description: Number of offerings required: - category_title - category_uuid - count - service_provider_name - service_provider_uuid description: '' OfferingTermsOfService: type: object description: '' properties: uuid: type: string format: uuid readOnly: true offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true terms_of_service: type: string terms_of_service_link: type: string format: uri maxLength: 200 version: type: string maxLength: 50 is_active: type: boolean requires_reconsent: type: boolean description: If True, user will be asked to re-consent to the terms of service when the terms of service are updated. grace_period_days: type: integer maximum: 2147483647 minimum: 0 description: Number of days before outdated consents are automatically revoked. Only applies when requires_reconsent=True. user_consent: allOf: - $ref: '#/components/schemas/UserConsentInfo' nullable: true readOnly: true has_user_consent: type: boolean readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - created - has_user_consent - modified - offering_name - offering_uuid - user_consent - uuid OfferingTermsOfServiceCreate: type: object description: '' properties: offering: type: string format: uri terms_of_service: type: string terms_of_service_link: type: string format: uri maxLength: 200 version: type: string maxLength: 50 is_active: type: boolean requires_reconsent: type: boolean description: If True, user will be asked to re-consent to the terms of service when the terms of service are updated. grace_period_days: type: integer maximum: 2147483647 minimum: 0 description: Number of days before outdated consents are automatically revoked. Only applies when requires_reconsent=True. required: - offering OfferingTermsOfServiceCreateRequest: type: object description: '' properties: offering: type: string format: uri terms_of_service: type: string terms_of_service_link: type: string format: uri maxLength: 200 version: type: string maxLength: 50 is_active: type: boolean requires_reconsent: type: boolean description: If True, user will be asked to re-consent to the terms of service when the terms of service are updated. grace_period_days: type: integer maximum: 2147483647 minimum: 0 description: Number of days before outdated consents are automatically revoked. Only applies when requires_reconsent=True. required: - offering OfferingTermsOfServiceRequest: type: object description: '' properties: terms_of_service: type: string terms_of_service_link: type: string format: uri maxLength: 200 is_active: type: boolean grace_period_days: type: integer maximum: 2147483647 minimum: 0 description: Number of days before outdated consents are automatically revoked. Only applies when requires_reconsent=True. OfferingThumbnailRequest: type: object properties: thumbnail: type: string format: binary required: - thumbnail description: '' OfferingTypeEnum: enum: - Support.OfferingTemplate - Marketplace.Booking - Marketplace.Basic - OpenStack.Tenant - OpenStack.Instance - OpenStack.Volume - Marketplace.Rancher - VMware.VirtualMachine - Waldur.RemoteOffering - Marketplace.Script - SlurmInvoices.SlurmPackage - Marketplace.Slurm type: string description: '' OfferingUUIDRequest: type: object properties: offering_uuid: type: string format: uuid required: - offering_uuid description: '' OfferingUsagePolicy: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true scope: type: string format: uri scope_name: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true actions: type: string maxLength: 255 created: type: string format: date-time readOnly: true created_by_full_name: type: string readOnly: true created_by_username: type: string readOnly: true has_fired: type: boolean readOnly: true fired_datetime: type: string format: date-time readOnly: true options: description: Fields for saving actions extra data. Keys are name of actions. organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. component_limits_set: type: array items: $ref: '#/components/schemas/NestedOfferingComponentLimit' period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 period_name: type: string readOnly: true required: - actions - component_limits_set - created - created_by_full_name - created_by_username - fired_datetime - has_fired - period_name - scope - scope_name - scope_uuid - url - uuid OfferingUsagePolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. component_limits_set: type: array items: $ref: '#/components/schemas/NestedOfferingComponentLimitRequest' period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 required: - actions - component_limits_set - scope OfferingUser: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true user: type: string format: uri offering: type: string format: uri username: type: string nullable: true maxLength: 100 offering_uuid: type: string format: uuid offering_name: type: string readOnly: true user_uuid: type: string format: uuid user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_full_name: type: string readOnly: true user_first_name: type: string readOnly: true user_last_name: type: string readOnly: true user_email: type: string format: email title: Email address readOnly: true user_phone_number: type: string readOnly: true user_organization: type: string readOnly: true user_job_title: type: string readOnly: true user_affiliations: description: Person's affiliation within organization such as student, faculty, staff. readOnly: true user_gender: nullable: true description: ISO 5218 gender code readOnly: true oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' user_personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) readOnly: true user_place_of_birth: type: string readOnly: true user_country_of_residence: type: string readOnly: true user_nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) readOnly: true user_nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) readOnly: true user_organization_country: type: string readOnly: true user_organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) readOnly: true user_organization_registry_code: type: string description: Company registration code of the user's organization, if known readOnly: true user_eduperson_assurance: description: REFEDS assurance profile URIs from identity provider readOnly: true user_civil_number: type: string nullable: true readOnly: true user_birth_date: type: string format: date nullable: true readOnly: true user_identity_source: type: string title: Source of identity description: Indicates what identity provider was used. readOnly: true user_active_isds: description: List of ISDs that have asserted this user exists. User is deactivated when this becomes empty. readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true is_restricted: type: boolean description: Signal to service if the user account is restricted or not readOnly: true state: allOf: - $ref: '#/components/schemas/OfferingUserState' readOnly: true service_provider_comment: type: string description: Additional comment for pending states like validation or account linking readOnly: true service_provider_comment_url: type: string format: uri description: URL link for additional information or actions related to service provider comment readOnly: true has_consent: type: boolean description: Check if the user has active consent for this offering. readOnly: true requires_reconsent: type: boolean description: Check if the user needs to re-consent due to ToS changes. readOnly: true has_compliance_checklist: type: boolean description: Check if the offering user has a connected compliance checklist completion. readOnly: true consent_data: type: object additionalProperties: type: string nullable: true description: User consent data including uuid, version, and agreement_date readOnly: true is_profile_complete: type: boolean readOnly: true missing_profile_attributes: type: array items: type: string readOnly: true required: [] OfferingUserAttributeConfig: type: object description: '' properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true expose_username: type: boolean expose_full_name: type: boolean expose_email: type: boolean expose_phone_number: type: boolean expose_organization: type: boolean expose_job_title: type: boolean expose_affiliations: type: boolean expose_gender: type: boolean expose_personal_title: type: boolean expose_place_of_birth: type: boolean expose_country_of_residence: type: boolean expose_nationality: type: boolean expose_nationalities: type: boolean expose_organization_country: type: boolean expose_organization_type: type: boolean expose_organization_registry_code: type: boolean expose_eduperson_assurance: type: boolean expose_civil_number: type: boolean expose_birth_date: type: boolean expose_identity_source: type: boolean expose_active_isds: type: boolean exposed_fields: type: array items: type: string description: Return list of field names currently configured for exposure. readOnly: true is_default: type: boolean description: Return True if this is a default (unsaved) config. readOnly: true required: - created - exposed_fields - is_default - modified - offering_name - offering_uuid - uuid OfferingUserAttributeConfigRequest: type: object description: '' properties: offering: type: string format: uuid writeOnly: true expose_username: type: boolean expose_full_name: type: boolean expose_email: type: boolean expose_phone_number: type: boolean expose_organization: type: boolean expose_job_title: type: boolean expose_affiliations: type: boolean expose_gender: type: boolean expose_personal_title: type: boolean expose_place_of_birth: type: boolean expose_country_of_residence: type: boolean expose_nationality: type: boolean expose_nationalities: type: boolean expose_organization_country: type: boolean expose_organization_type: type: boolean expose_organization_registry_code: type: boolean expose_eduperson_assurance: type: boolean expose_civil_number: type: boolean expose_birth_date: type: boolean expose_identity_source: type: boolean expose_active_isds: type: boolean OfferingUserRequest: type: object description: '' properties: user: type: string format: uri offering: type: string format: uri username: type: string nullable: true maxLength: 100 offering_uuid: type: string format: uuid user_uuid: type: string format: uuid OfferingUserRole: type: object properties: name: type: string maxLength: 150 uuid: type: string format: uuid readOnly: true offering: type: string format: uri offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true scope_type: type: string description: Level this role applies at, e.g. 'cluster', 'project'. Empty means offering-wide. maxLength: 50 scope_type_label: type: string description: Human-readable label for scope_type shown to end users, e.g. 'Rancher Project', 'Cluster Namespace'. Falls back to capitalized scope_type if empty. maxLength: 150 required: - name - offering - offering_name - offering_uuid - uuid description: '' OfferingUserRoleRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 offering: type: string format: uri scope_type: type: string description: Level this role applies at, e.g. 'cluster', 'project'. Empty means offering-wide. maxLength: 50 scope_type_label: type: string description: Human-readable label for scope_type shown to end users, e.g. 'Rancher Project', 'Cluster Namespace'. Falls back to capitalized scope_type if empty. maxLength: 150 required: - name - offering description: '' OfferingUserServiceProviderComment: type: object description: '' properties: service_provider_comment: type: string service_provider_comment_url: type: string format: uri description: URL link for additional information or actions related to service provider comment maxLength: 200 OfferingUserState: enum: - Requested - Creating - Pending account linking - Pending additional validation - OK - Requested deletion - Deleting - Deleted - Error creating - Error deleting type: string description: '' OfferingUserStateTransitionRequest: type: object properties: comment: type: string description: Comment explaining the state transition comment_url: type: string format: uri description: URL reference related to the state transition comment description: '' OfferingUserUpdateRestrictionRequest: type: object properties: is_restricted: type: boolean description: Whether the offering user should be restricted from accessing resources required: - is_restricted description: '' OnboardingCompanyValidationRequestRequest: type: object description: '' properties: validation_method: description: Automatic validation method (e.g., 'ariregister', 'wirtschaftscompass', 'bolagsverket'). Leave empty for manual validation. oneOf: - $ref: '#/components/schemas/ValidationMethodEnum' - $ref: '#/components/schemas/BlankEnum' country: type: string description: ISO country code (e.g., 'EE', 'AT') - optional, for display context maxLength: 2 legal_person_identifier: type: string description: Official company registration code maxLength: 50 legal_name: type: string description: Company name (optional) maxLength: 255 OnboardingJustification: type: object description: '' properties: uuid: type: string format: uuid readOnly: true verification: type: string format: uri verification_uuid: type: string format: uuid readOnly: true country: type: string readOnly: true user: type: string format: uri readOnly: true user_full_name: type: string readOnly: true legal_person_identifier: type: string readOnly: true legal_name: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true user_justification: type: string nullable: true description: User's explanation for why they should be authorized validated_by: type: string format: uri readOnly: true nullable: true validated_at: type: string format: date-time readOnly: true nullable: true validation_decision: allOf: - $ref: '#/components/schemas/ValidationDecisionEnum' readOnly: true staff_notes: type: string readOnly: true description: Administrator notes on the review decision supporting_documentation: type: array items: $ref: '#/components/schemas/OnboardingJustificationDocumentation' readOnly: true onboarding_metadata: type: object additionalProperties: {} description: Onboarding-specific data like intents, purposes extracted from checklist answers readOnly: true user_submitted_customer_data: type: object additionalProperties: {} description: Customer-related data submitted by the user via checklist answers readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - country - created - error_message - error_traceback - legal_name - legal_person_identifier - modified - onboarding_metadata - staff_notes - supporting_documentation - user - user_full_name - user_submitted_customer_data - uuid - validated_at - validated_by - validation_decision - verification - verification_uuid OnboardingJustificationCreateRequest: type: object description: '' properties: verification_uuid: type: string format: uuid description: UUID of the OnboardingVerification to justify user_justification: type: string description: User's explanation for why they should be authorized required: - verification_uuid OnboardingJustificationDocumentation: type: object description: '' properties: uuid: type: string format: uuid readOnly: true file: type: string format: uri nullable: true description: Upload supporting documentation. file_name: type: string readOnly: true file_size: type: integer readOnly: true created: type: string format: date-time readOnly: true required: - created - file_name - file_size - uuid OnboardingJustificationDocumentationRequest: type: object description: '' properties: file: type: string format: binary nullable: true description: Upload supporting documentation. OnboardingJustificationRequest: type: object description: '' properties: verification: type: string format: uri user_justification: type: string nullable: true description: User's explanation for why they should be authorized required: - verification OnboardingJustificationReviewRequest: type: object description: '' properties: staff_notes: type: string description: Administrator notes about the review decision OnboardingQuestionMetadata: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true checklist_name: type: string readOnly: true question: type: string format: uri question_uuid: type: string format: uuid readOnly: true question_description: type: string readOnly: true maps_to_customer_field: type: string description: Customer model field name to map this answer to (e.g., 'registration_code', 'email', 'vat_code') maxLength: 100 intent_field: type: string description: Type of intent/purpose field (e.g., 'intent', 'registration_purpose') - stays with verification maxLength: 50 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - checklist_name - created - modified - question - question_description - question_uuid - url - uuid OnboardingQuestionMetadataRequest: type: object description: '' properties: question: type: string format: uri maps_to_customer_field: type: string description: Customer model field name to map this answer to (e.g., 'registration_code', 'email', 'vat_code') maxLength: 100 intent_field: type: string description: Type of intent/purpose field (e.g., 'intent', 'registration_purpose') - stays with verification maxLength: 50 required: - question OnboardingRunValidationRequestRequest: type: object description: '' properties: civil_number: type: string description: Personal identifier (temporary workaround for Estonian civil_number) maxLength: 50 first_name: type: string description: User's first name (temporary workaround for Austrian validation) maxLength: 100 last_name: type: string description: User's last name (temporary workaround for Austrian validation) maxLength: 100 birth_date: type: string format: date nullable: true description: User's birth date (temporary workaround for Austrian validation) OnboardingValidationEnum: enum: - ariregister - wirtschaftscompass - bolagsverket type: string description: '' OnboardingVerification: type: object description: '' properties: uuid: type: string format: uuid readOnly: true user: type: string format: uri readOnly: true description: User requesting company onboarding user_full_name: type: string readOnly: true country: type: string description: ISO country code (e.g., 'EE', 'AT') for context. Can be inferred from validation_method. maxLength: 2 legal_person_identifier: type: string description: Official company registration code (required for automatic validation) maxLength: 50 legal_name: type: string description: Company name(optional, for reference) maxLength: 255 status: allOf: - $ref: '#/components/schemas/OnboardingVerificationStatusEnum' readOnly: true justifications: type: array items: $ref: '#/components/schemas/OnboardingJustification' readOnly: true validation_method: allOf: - $ref: '#/components/schemas/ValidationMethodEnum' readOnly: true description: Method used for validation verified_user_roles: readOnly: true description: Roles the user has in the company verified_company_data: readOnly: true description: Company information retrieved during validation raw_response: readOnly: true description: Raw API response for debugging and auditing error_traceback: type: string readOnly: true error_message: type: string readOnly: true validated_at: type: string format: date-time readOnly: true nullable: true description: When validation was completed expires_at: type: string format: date-time nullable: true description: When this verification expires customer: type: string format: uri readOnly: true nullable: true description: Customer created after successful validation onboarding_metadata: type: object additionalProperties: {} description: Onboarding-specific data like intents, purposes extracted from checklist answers readOnly: true user_submitted_customer_data: type: object additionalProperties: {} description: Get customer data submitted by the user during onboarding. readOnly: true can_customer_be_created: type: boolean description: Boolean indicating if a customer can be created from this verification readOnly: true customer_creation_error_message: type: string nullable: true description: Reason why customer cannot be created (null if can be created) readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - can_customer_be_created - created - customer - customer_creation_error_message - error_message - error_traceback - justifications - modified - onboarding_metadata - raw_response - status - user - user_full_name - user_submitted_customer_data - uuid - validated_at - validation_method - verified_company_data - verified_user_roles OnboardingVerificationRequest: type: object description: '' properties: country: type: string description: ISO country code (e.g., 'EE', 'AT') for context. Can be inferred from validation_method. maxLength: 2 legal_person_identifier: type: string description: Official company registration code (required for automatic validation) maxLength: 50 legal_name: type: string description: Company name(optional, for reference) maxLength: 255 expires_at: type: string format: date-time nullable: true description: When this verification expires OnboardingVerificationStatusEnum: enum: - pending - verified - failed - escalated - expired type: string description: '' OpenStackAllowedAddressPair: type: object properties: mac_address: type: string description: '' OpenStackAllowedAddressPairRequest: type: object properties: ip_address: type: string writeOnly: true minLength: 1 default: 192.168.42.0/24 mac_address: type: string minLength: 1 description: '' OpenStackBackendInstance: type: object properties: name: type: string maxLength: 150 key_name: type: string maxLength: 50 start_time: type: string format: date-time nullable: true state: type: string readOnly: true runtime_state: type: string maxLength: 150 created: type: string format: date-time readOnly: true backend_id: type: string nullable: true description: Instance ID in the OpenStack backend maxLength: 255 availability_zone: type: string readOnly: true hypervisor_hostname: type: string description: Name of the hypervisor hosting this instance maxLength: 255 required: - availability_zone - created - name - state description: '' OpenStackBackendVolumes: type: object properties: name: type: string maxLength: 150 description: type: string maxLength: 4096 size: type: integer maximum: 2147483647 minimum: 0 description: Size in MiB metadata: type: string description: Arbitrary key-value pairs associated with the volume backend_id: type: string nullable: true description: Volume ID in the OpenStack backend maxLength: 255 type: type: string readOnly: true bootable: type: boolean description: Indicates if this volume can be used to boot an instance runtime_state: type: string maxLength: 150 state: type: string readOnly: true availability_zone: type: string readOnly: true required: - availability_zone - name - size - state - type description: '' OpenStackBackup: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true kept_until: type: string format: date-time nullable: true description: Guaranteed time of backup retention. If null - keep forever. metadata: readOnly: true instance: type: string format: uri readOnly: true description: Instance that this backup is created from instance_name: type: string readOnly: true instance_marketplace_uuid: type: string format: uuid readOnly: true restorations: type: array items: $ref: '#/components/schemas/OpenStackBackupRestoration' readOnly: true instance_security_groups: type: array items: $ref: '#/components/schemas/OpenStackNestedSecurityGroup' readOnly: true instance_ports: type: array items: $ref: '#/components/schemas/OpenStackNestedPort' readOnly: true instance_floating_ips: type: array items: $ref: '#/components/schemas/OpenStackNestedFloatingIP' readOnly: true tenant_uuid: type: string format: uuid readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackBackupRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 kept_until: type: string format: date-time nullable: true description: Guaranteed time of backup retention. If null - keep forever. required: - name OpenStackBackupRestoration: type: object properties: uuid: type: string format: uuid readOnly: true instance: type: string format: uri readOnly: true description: Instance that is being restored from the backup created: type: string format: date-time readOnly: true flavor: type: string format: uri description: Flavor to be used for the restored instance. If not specified, original instance flavor will be used name: type: string description: New instance name. Leave blank to use source instance name. floating_ips: type: array items: $ref: '#/components/schemas/OpenStackNestedFloatingIP' security_groups: type: array items: $ref: '#/components/schemas/OpenStackNestedSecurityGroup' ports: type: array items: $ref: '#/components/schemas/OpenStackNestedPort' required: [] description: '' OpenStackBackupRestorationCreateRequest: type: object properties: flavor: type: string format: uri description: Flavor to be used for the restored instance. If not specified, original instance flavor will be used name: type: string minLength: 1 description: New instance name. Leave blank to use source instance name. floating_ips: type: array items: $ref: '#/components/schemas/OpenStackCreateFloatingIPRequest' description: Floating IPs that will be assigned to the restored instance security_groups: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupHyperlinkRequest' description: Security groups that will be assigned to the restored instance ports: type: array items: $ref: '#/components/schemas/OpenStackCreatePortRequest' description: Network ports that will be attached to the restored instance required: - flavor description: '' OpenStackBackupRestorationRequest: type: object properties: flavor: type: string format: uri description: Flavor to be used for the restored instance. If not specified, original instance flavor will be used name: type: string minLength: 1 description: New instance name. Leave blank to use source instance name. floating_ips: type: array items: $ref: '#/components/schemas/OpenStackNestedFloatingIPRequest' ports: type: array items: $ref: '#/components/schemas/OpenStackNestedPortRequest' required: - flavor - floating_ips - ports description: '' OpenStackCreateFloatingIPRequest: type: object properties: url: type: string format: uri ip_address: description: Existing floating IP address in selected OpenStack tenant to be assigned to new virtual machine oneOf: - type: string format: ipv4 - type: string format: ipv6 minLength: 1 subnet: type: string format: uri required: - subnet description: '' OpenStackCreatePortRequest: type: object properties: fixed_ips: type: array items: $ref: '#/components/schemas/OpenStackFixedIpRequest' subnet: type: string format: uri nullable: true description: Subnet to which this port belongs port: type: string format: uri tenant: type: string format: uri writeOnly: true description: Target tenant for port creation. If not specified, uses subnet's tenant. description: '' OpenStackCredentialsRequest: type: object description: '' properties: auth_url: type: string format: uri minLength: 1 description: Keystone auth URL (e.g., https://cloud.example.com:5000/v3) username: type: string minLength: 1 password: type: string writeOnly: true minLength: 1 user_domain_name: type: string minLength: 1 default: Default description: Keystone user domain name project_domain_name: type: string minLength: 1 default: Default description: Keystone project domain name project_name: type: string minLength: 1 default: admin description: Keystone project (tenant) name verify_ssl: type: boolean default: false certificate: type: string writeOnly: true description: PEM-encoded CA certificate for SSL verification required: - auth_url - password - username OpenStackFixedIp: type: object properties: ip_address: description: IP address to assign to the port oneOf: - type: string format: ipv4 - type: string format: ipv6 subnet_id: type: string description: ID of the subnet in which to assign the IP address required: [] description: '' OpenStackFixedIpRequest: type: object properties: ip_address: description: IP address to assign to the port oneOf: - type: string format: ipv4 - type: string format: ipv6 minLength: 1 subnet_id: type: string minLength: 1 description: ID of the subnet in which to assign the IP address required: - ip_address - subnet_id description: '' OpenStackFlavor: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 settings: type: string format: uri cores: type: integer maximum: 32767 minimum: 0 description: Number of cores in a VM ram: type: integer maximum: 2147483647 minimum: 0 description: Memory size in MiB disk: type: integer maximum: 2147483647 minimum: 0 description: Root disk size in MiB backend_id: type: string maxLength: 255 display_name: type: string readOnly: true required: [] OpenStackFloatingIP: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string readOnly: true description: type: string readOnly: true service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true runtime_state: type: string readOnly: true address: description: The public IPv4 address of the floating IP oneOf: - type: string format: ipv4 - type: string format: ipv6 readOnly: true nullable: true backend_network_id: type: string readOnly: true description: ID of network in OpenStack where this floating IP is allocated tenant: type: string format: uri readOnly: true description: OpenStack tenant this floating IP belongs to tenant_name: type: string readOnly: true tenant_uuid: type: string format: uuid readOnly: true port: type: string format: uri readOnly: true external_address: description: Optional address that maps to floating IP's address in external networks oneOf: - type: string format: ipv4 - type: string format: ipv6 readOnly: true nullable: true port_fixed_ips: type: array items: $ref: '#/components/schemas/OpenStackFixedIp' readOnly: true instance_uuid: type: string nullable: true readOnly: true instance_name: type: string nullable: true readOnly: true instance_url: type: string nullable: true readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackFloatingIPAttachRequest: type: object properties: port: type: string format: uri required: - port description: '' OpenStackFloatingIPDescriptionUpdateRequest: type: object properties: description: type: string minLength: 1 description: New floating IP description. description: '' OpenStackFloatingIPRequest: type: object description: '' properties: router: type: string format: uri writeOnly: true nullable: true description: Optional router to use for external network detection OpenStackImage: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 min_disk: type: integer maximum: 2147483647 minimum: 0 description: Minimum disk size in MiB min_ram: type: integer maximum: 2147483647 minimum: 0 description: Minimum memory size in MiB settings: type: string format: uri backend_id: type: string maxLength: 255 backend_created_at: type: string format: date-time nullable: true required: - backend_id - name - settings - url - uuid OpenStackInstance: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true description: OpenStack provider settings service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true nullable: true description: Instance ID in the OpenStack backend access_url: type: string nullable: true readOnly: true start_time: type: string format: date-time readOnly: true nullable: true cores: type: integer readOnly: true description: Number of cores in a VM ram: type: integer readOnly: true description: Memory size in MiB disk: type: integer readOnly: true description: Disk size in MiB min_ram: type: integer readOnly: true description: Minimum memory size in MiB min_disk: type: integer readOnly: true description: Minimum disk size in MiB user_data: type: string description: Additional data that will be added to instance on provisioning external_ips: type: array items: type: string format: ipv4 readOnly: true internal_ips: type: array items: type: string format: ipv4 readOnly: true latitude: type: number format: double readOnly: true nullable: true longitude: type: number format: double readOnly: true nullable: true key_name: type: string readOnly: true key_fingerprint: type: string readOnly: true image_name: type: string readOnly: true flavor_disk: type: integer readOnly: true description: Flavor disk size in MiB flavor_name: type: string readOnly: true description: Name of the flavor used by this instance volumes: type: array items: $ref: '#/components/schemas/OpenStackNestedVolume' readOnly: true description: List of volumes attached to the instance security_groups: type: array items: $ref: '#/components/schemas/OpenStackNestedSecurityGroup' server_group: $ref: '#/components/schemas/OpenStackNestedServerGroup' floating_ips: type: array items: $ref: '#/components/schemas/OpenStackNestedFloatingIP' ports: type: array items: $ref: '#/components/schemas/OpenStackNestedPort' availability_zone: type: string format: uri nullable: true description: Availability zone where this instance is located availability_zone_name: type: string readOnly: true description: Name of the availability zone where instance is located connect_directly_to_external_network: type: boolean description: If True, instance will be connected directly to external network runtime_state: type: string readOnly: true action: type: string readOnly: true action_details: readOnly: true description: Details about ongoing or completed actions tenant_uuid: type: string format: uuid readOnly: true description: UUID of the OpenStack tenant hypervisor_hostname: type: string readOnly: true description: Name of the hypervisor hosting this instance tenant: type: string format: uri description: The OpenStack tenant to create the instance in external_address: type: array items: type: string readOnly: true rancher_cluster: allOf: - $ref: '#/components/schemas/RancherClusterReference' nullable: true readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackInstanceAllowedAddressPairsUpdateRequest: type: object properties: subnet: type: string format: uri writeOnly: true description: The subnet to update allowed address pairs for. allowed_address_pairs: type: array items: $ref: '#/components/schemas/OpenStackAllowedAddressPairRequest' description: List of allowed address pairs to set on the port. Each pair should contain 'ip_address' and optional 'mac_address'. required: - allowed_address_pairs - subnet description: '' OpenStackInstanceAvailabilityZone: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 settings: type: string format: uri nullable: true available: type: boolean description: Indicates whether this availability zone is available for instance provisioning required: - name - url - uuid OpenStackInstanceFloatingIPsUpdateRequest: type: object properties: floating_ips: type: array items: $ref: '#/components/schemas/OpenStackCreateFloatingIPRequest' description: '' OpenStackInstancePortsUpdateRequest: type: object properties: ports: type: array items: $ref: '#/components/schemas/OpenStackCreatePortRequest' required: - ports description: '' OpenStackInstanceRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 required: - name OpenStackInstanceSecurityGroupsUpdateRequest: type: object properties: security_groups: type: array items: type: string format: uri description: List of security groups to be assigned to the instance. required: - security_groups description: '' OpenStackNestedFloatingIP: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true address: description: The public IPv4 address of the floating IP oneOf: - type: string format: ipv4 - type: string format: ipv6 readOnly: true nullable: true port_fixed_ips: type: array items: $ref: '#/components/schemas/OpenStackFixedIp' readOnly: true port_mac_address: type: string description: MAC address of the port readOnly: true nullable: true subnet: type: string format: uri subnet_uuid: type: string format: uuid readOnly: true subnet_name: type: string readOnly: true subnet_description: type: string readOnly: true subnet_cidr: type: string description: IPv4 network address in CIDR format (e.g. 192.168.0.0/24) readOnly: true required: [] OpenStackNestedFloatingIPRequest: type: object description: '' properties: subnet: type: string format: uri required: - subnet OpenStackNestedInstance: type: object properties: backend_id: type: string nullable: true description: Instance ID in the OpenStack backend maxLength: 255 name: type: string maxLength: 150 uuid: type: string format: uuid readOnly: true required: [] description: '' OpenStackNestedPort: type: object description: '' properties: url: type: string format: uri readOnly: true fixed_ips: type: array items: $ref: '#/components/schemas/OpenStackFixedIp' mac_address: type: string readOnly: true description: MAC address of the port subnet: type: string format: uri nullable: true description: Subnet to which this port belongs subnet_uuid: type: string format: uuid readOnly: true nullable: true subnet_name: type: string readOnly: true nullable: true subnet_description: type: string readOnly: true nullable: true subnet_cidr: type: string description: IPv4 network address in CIDR format (e.g. 192.168.0.0/24) readOnly: true nullable: true allowed_address_pairs: type: array items: $ref: '#/components/schemas/OpenStackAllowedAddressPair' readOnly: true device_id: type: string readOnly: true nullable: true description: ID of device (instance, router etc) to which this port is connected device_owner: type: string readOnly: true nullable: true description: Entity that uses this port (e.g. network:router_interface) security_groups: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroup' readOnly: true required: [] OpenStackNestedPortRequest: type: object description: '' properties: fixed_ips: type: array items: $ref: '#/components/schemas/OpenStackFixedIpRequest' subnet: type: string format: uri nullable: true description: Subnet to which this port belongs OpenStackNestedSecurityGroup: type: object description: '' properties: url: type: string format: uri readOnly: true name: type: string readOnly: true rules: type: array items: $ref: '#/components/schemas/NestedSecurityGroupRule' readOnly: true description: type: string readOnly: true state: type: string readOnly: true required: [] OpenStackNestedServerGroup: type: object description: '' properties: url: type: string format: uri readOnly: true name: type: string readOnly: true policy: allOf: - $ref: '#/components/schemas/PolicyEnum' readOnly: true description: Server group policy determining the rules for scheduling servers in this group state: type: string readOnly: true required: [] OpenStackNestedSubNet: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 cidr: type: string description: IPv4 network address in CIDR format (e.g. 192.168.0.0/24) maxLength: 32 gateway_ip: description: IP address of the gateway for this subnet oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true allocation_pools: type: array items: $ref: '#/components/schemas/OpenStackSubNetAllocationPool' readOnly: true ip_version: type: integer maximum: 32767 minimum: -32768 description: IP protocol version (4 or 6) enable_dhcp: type: boolean description: If True, DHCP service will be enabled on this subnet required: [] description: '' OpenStackNestedSubNetRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 cidr: type: string description: IPv4 network address in CIDR format (e.g. 192.168.0.0/24) maxLength: 32 gateway_ip: description: IP address of the gateway for this subnet oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true minLength: 1 ip_version: type: integer maximum: 32767 minimum: -32768 description: IP protocol version (4 or 6) enable_dhcp: type: boolean description: If True, DHCP service will be enabled on this subnet required: - name description: '' OpenStackNestedVolume: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string readOnly: true image_name: type: string description: Name of the image this volume was created from maxLength: 150 state: type: string readOnly: true bootable: type: boolean description: Indicates if this volume can be used to boot an instance size: type: integer maximum: 2147483647 minimum: 0 description: Size in MiB device: type: string description: Name of volume as instance device e.g. /dev/vdb. pattern: ^/dev/[a-zA-Z0-9]+$ maxLength: 50 resource_type: type: string readOnly: true type: type: string format: uri nullable: true description: Type of the volume (e.g. SSD, HDD) type_name: type: string readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true required: [] OpenStackNestedVolumeRequest: type: object description: '' properties: image_name: type: string description: Name of the image this volume was created from maxLength: 150 bootable: type: boolean description: Indicates if this volume can be used to boot an instance size: type: integer maximum: 2147483647 minimum: 0 description: Size in MiB device: type: string description: Name of volume as instance device e.g. /dev/vdb. pattern: ^/dev/[a-zA-Z0-9]+$ maxLength: 50 type: type: string format: uri nullable: true description: Type of the volume (e.g. SSD, HDD) required: - size OpenStackNetwork: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true tenant: type: string format: uri readOnly: true description: OpenStack tenant this network belongs to tenant_name: type: string readOnly: true tenant_uuid: type: string format: uuid readOnly: true is_external: type: boolean readOnly: true description: Defines whether this network is external (public) or internal (private) type: type: string readOnly: true description: Network type, such as local, flat, vlan, vxlan, or gre segmentation_id: type: integer readOnly: true nullable: true description: VLAN ID for VLAN networks or tunnel ID for VXLAN/GRE networks subnets: type: array items: $ref: '#/components/schemas/OpenStackNestedSubNet' readOnly: true mtu: type: integer readOnly: true nullable: true description: The maximum transmission unit (MTU) value to address fragmentation. rbac_policies: type: array items: $ref: '#/components/schemas/NetworkRBACPolicy' readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackNetworkRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 required: - name OpenStackPort: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true nullable: true description: Port ID in OpenStack access_url: type: string nullable: true readOnly: true fixed_ips: type: array items: $ref: '#/components/schemas/OpenStackFixedIp' mac_address: type: string description: MAC address of the port maxLength: 32 allowed_address_pairs: type: array items: $ref: '#/components/schemas/OpenStackAllowedAddressPair' tenant: type: string format: uri readOnly: true description: OpenStack tenant this port belongs to tenant_name: type: string readOnly: true tenant_uuid: type: string format: uuid readOnly: true network: type: string format: uri nullable: true description: Network to which this port belongs network_name: type: string readOnly: true network_uuid: type: string format: uuid readOnly: true floating_ips: type: array items: type: string format: uri readOnly: true device_id: type: string readOnly: true nullable: true description: ID of device (instance, router etc) to which this port is connected device_owner: type: string readOnly: true nullable: true description: Entity that uses this port (e.g. network:router_interface) port_security_enabled: type: boolean description: If True, security groups and rules will be applied to this port security_groups: type: array items: $ref: '#/components/schemas/OpenStackPortNestedSecurityGroup' admin_state_up: type: boolean readOnly: true nullable: true description: Administrative state of the port. If down, port does not forward packets status: type: string readOnly: true nullable: true description: Port status in OpenStack (e.g. ACTIVE, DOWN) marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackPortIPUpdateRequest: type: object properties: subnet: type: string format: uri writeOnly: true description: The subnet where the new IP address will be allocated ip_address: description: The IP address to assign within the subnet oneOf: - type: string format: ipv4 - type: string format: ipv6 minLength: 1 required: - ip_address - subnet description: '' OpenStackPortNestedSecurityGroup: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 url: type: string format: uri readOnly: true required: [] OpenStackPortNestedSecurityGroupRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 required: - name OpenStackPortRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 fixed_ips: type: array items: $ref: '#/components/schemas/OpenStackFixedIpRequest' mac_address: type: string description: MAC address of the port maxLength: 32 allowed_address_pairs: type: array items: $ref: '#/components/schemas/OpenStackAllowedAddressPairRequest' target_tenant: type: string format: uri writeOnly: true description: Target tenant for shared network port creation. If not specified, defaults to network's tenant. network: type: string format: uri nullable: true description: Network to which this port belongs port_security_enabled: type: boolean description: If True, security groups and rules will be applied to this port security_groups: type: array items: $ref: '#/components/schemas/OpenStackPortNestedSecurityGroupRequest' required: - name OpenStackRouter: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string error_traceback: type: string resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string nullable: true description: Router ID in OpenStack maxLength: 255 access_url: type: string nullable: true readOnly: true tenant: type: string format: uri description: OpenStack tenant this router belongs to tenant_name: type: string readOnly: true tenant_uuid: type: string format: uuid readOnly: true routes: type: array items: $ref: '#/components/schemas/OpenStackStaticRoute' fixed_ips: type: array items: $ref: '#/components/schemas/OpenStackFixedIp' readOnly: true ports: type: array items: $ref: '#/components/schemas/OpenStackNestedPort' readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true offering_external_ips: type: array items: type: string nullable: true readOnly: true required: [] OpenStackRouterInterfaceRequest: type: object properties: subnet: type: string format: uri description: The subnet to connect to the router. Either subnet or port must be specified, but not both. port: type: string format: uri description: The port to connect to the router. Either subnet or port must be specified, but not both. description: '' OpenStackRouterSetRoutes: type: object properties: routes: type: array items: $ref: '#/components/schemas/OpenStackStaticRoute' required: - routes description: '' OpenStackRouterSetRoutesRequest: type: object properties: routes: type: array items: $ref: '#/components/schemas/OpenStackStaticRouteRequest' required: - routes description: '' OpenStackSecurityGroup: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true tenant: type: string format: uri readOnly: true tenant_name: type: string readOnly: true tenant_uuid: type: string format: uuid readOnly: true rules: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupRuleCreate' marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackSecurityGroupHyperlinkRequest: type: object properties: url: type: string format: uri required: - url description: '' OpenStackSecurityGroupRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 rules: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupRuleCreateRequest' required: - name - rules OpenStackSecurityGroupRuleCreate: type: object description: '' properties: ethertype: allOf: - $ref: '#/components/schemas/EthertypeEnum' description: IP protocol version - either 'IPv4' or 'IPv6' direction: allOf: - $ref: '#/components/schemas/DirectionEnum' description: Traffic direction - either 'ingress' (incoming) or 'egress' (outgoing) protocol: description: The network protocol (TCP, UDP, ICMP, or empty for any protocol) oneOf: - $ref: '#/components/schemas/ProtocolEnum' - $ref: '#/components/schemas/BlankEnum' from_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Starting port number in the range (1-65535) to_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Ending port number in the range (1-65535) cidr: type: string nullable: true description: CIDR notation for the source/destination network address range maxLength: 255 description: type: string maxLength: 4096 remote_group_name: type: string readOnly: true remote_group_uuid: type: string format: uuid readOnly: true id: type: integer readOnly: true remote_group: type: string format: uri nullable: true description: Remote security group that this rule references, if any required: [] OpenStackSecurityGroupRuleCreateRequest: type: object description: '' properties: ethertype: allOf: - $ref: '#/components/schemas/EthertypeEnum' description: IP protocol version - either 'IPv4' or 'IPv6' direction: allOf: - $ref: '#/components/schemas/DirectionEnum' description: Traffic direction - either 'ingress' (incoming) or 'egress' (outgoing) protocol: description: The network protocol (TCP, UDP, ICMP, or empty for any protocol) oneOf: - $ref: '#/components/schemas/ProtocolEnum' - $ref: '#/components/schemas/BlankEnum' from_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Starting port number in the range (1-65535) to_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Ending port number in the range (1-65535) cidr: type: string nullable: true description: CIDR notation for the source/destination network address range maxLength: 255 description: type: string maxLength: 4096 remote_group: type: string format: uri nullable: true description: Remote security group that this rule references, if any OpenStackSecurityGroupRuleUpdateByNameRequest: type: object properties: ethertype: allOf: - $ref: '#/components/schemas/EthertypeEnum' description: IP protocol version - either 'IPv4' or 'IPv6' direction: allOf: - $ref: '#/components/schemas/DirectionEnum' description: Traffic direction - either 'ingress' (incoming) or 'egress' (outgoing) protocol: description: The network protocol (TCP, UDP, ICMP, or empty for any protocol) oneOf: - $ref: '#/components/schemas/ProtocolEnum' - $ref: '#/components/schemas/BlankEnum' from_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Starting port number in the range (1-65535) to_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Ending port number in the range (1-65535) cidr: type: string nullable: true description: CIDR notation for the source/destination network address range maxLength: 255 description: type: string maxLength: 4096 remote_group_name: type: string writeOnly: true minLength: 1 remote_group: type: string format: uri description: '' OpenStackSecurityGroupRuleUpdateRequest: type: object properties: ethertype: allOf: - $ref: '#/components/schemas/EthertypeEnum' default: IPv4 description: IP protocol version - either 'IPv4' or 'IPv6' direction: allOf: - $ref: '#/components/schemas/DirectionEnum' default: ingress description: Traffic direction - either 'ingress' (incoming) or 'egress' (outgoing) protocol: description: The network protocol (TCP, UDP, ICMP, or empty for any protocol) oneOf: - $ref: '#/components/schemas/ProtocolEnum' - $ref: '#/components/schemas/BlankEnum' from_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Starting port number in the range (1-65535) to_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Ending port number in the range (1-65535) cidr: type: string nullable: true description: CIDR notation for the source/destination network address range maxLength: 255 description: type: string maxLength: 4096 remote_group: type: string format: uri nullable: true description: Remote security group that this rule references, if any description: '' OpenStackSecurityGroupUpdate: type: object properties: name: type: string maxLength: 150 description: type: string maxLength: 4096 required: - name description: '' OpenStackSecurityGroupUpdateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 required: - name description: '' OpenStackServerGroup: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true tenant: type: string format: uri readOnly: true tenant_name: type: string readOnly: true tenant_uuid: type: string format: uuid readOnly: true policy: description: affinity — all instances are placed on the same hypervisor. anti-affinity — all instances are placed on different hypervisors. soft-affinity — instances are placed on the same hypervisor if possible, but not enforced. soft-anti-affinity — instances are placed on different hypervisors if possible, but not enforced. oneOf: - $ref: '#/components/schemas/PolicyEnum' - $ref: '#/components/schemas/BlankEnum' display_name: type: string readOnly: true instances: type: array items: $ref: '#/components/schemas/OpenStackNestedInstance' readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackServerGroupRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 policy: description: affinity — all instances are placed on the same hypervisor. anti-affinity — all instances are placed on different hypervisors. soft-affinity — instances are placed on the same hypervisor if possible, but not enforced. soft-anti-affinity — instances are placed on different hypervisors if possible, but not enforced. oneOf: - $ref: '#/components/schemas/PolicyEnum' - $ref: '#/components/schemas/BlankEnum' required: - name OpenStackSnapshot: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true nullable: true description: Snapshot ID in the OpenStack backend access_url: type: string nullable: true readOnly: true source_volume: type: string format: uri readOnly: true nullable: true description: Volume from which this snapshot was created size: type: integer readOnly: true description: Size in MiB metadata: {} runtime_state: type: string readOnly: true source_volume_name: type: string readOnly: true source_volume_marketplace_uuid: type: string format: uuid readOnly: true action: type: string readOnly: true action_details: readOnly: true restorations: type: array items: $ref: '#/components/schemas/OpenStackSnapshotRestoration' readOnly: true kept_until: type: string format: date-time nullable: true description: Guaranteed time of snapshot retention. If null - keep forever. marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackSnapshotRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 metadata: {} kept_until: type: string format: date-time nullable: true description: Guaranteed time of snapshot retention. If null - keep forever. required: - name OpenStackSnapshotRestoration: type: object description: '' properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true description: type: string description: New volume description. volume: type: string format: uri readOnly: true description: Volume that is being restored from the snapshot volume_name: type: string readOnly: true volume_state: type: string readOnly: true volume_runtime_state: type: string readOnly: true volume_size: type: integer maximum: 2147483647 minimum: 0 description: Size in MiB readOnly: true volume_device: type: string description: Name of volume as instance device e.g. /dev/vdb. readOnly: true required: [] OpenStackSnapshotRestorationRequest: type: object description: '' properties: name: type: string writeOnly: true minLength: 1 description: New volume name. description: type: string minLength: 1 description: New volume description. required: - name OpenStackStaticRoute: type: object properties: destination: type: string nexthop: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 required: [] description: '' OpenStackStaticRouteRequest: type: object properties: destination: type: string minLength: 1 nexthop: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 minLength: 1 required: - destination - nexthop description: '' OpenStackSubNet: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true tenant: type: string format: uri readOnly: true tenant_name: type: string readOnly: true network: type: string format: uri readOnly: true description: Network to which this subnet belongs network_name: type: string readOnly: true cidr: type: string gateway_ip: description: IP address of the gateway for this subnet oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true disable_gateway: type: boolean description: If True, no gateway IP address will be allocated allocation_pools: type: array items: $ref: '#/components/schemas/OpenStackSubNetAllocationPool' ip_version: type: integer readOnly: true description: IP protocol version (4 or 6) enable_dhcp: type: boolean readOnly: true description: If True, DHCP service will be enabled on this subnet dns_nameservers: type: array items: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 host_routes: type: array items: $ref: '#/components/schemas/OpenStackStaticRoute' is_connected: type: boolean readOnly: true description: Is subnet connected to the default tenant router. marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackSubNetAllocationPool: type: object properties: start: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 end: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 required: [] description: '' OpenStackSubNetAllocationPoolRequest: type: object properties: start: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 minLength: 1 end: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 minLength: 1 required: - end - start description: '' OpenStackSubNetRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 cidr: type: string minLength: 1 gateway_ip: description: IP address of the gateway for this subnet oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true minLength: 1 disable_gateway: type: boolean description: If True, no gateway IP address will be allocated allocation_pools: type: array items: $ref: '#/components/schemas/OpenStackSubNetAllocationPoolRequest' dns_nameservers: type: array items: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 minLength: 1 host_routes: type: array items: $ref: '#/components/schemas/OpenStackStaticRouteRequest' required: - name OpenStackTenant: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 64 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true nullable: true description: ID of tenant in the OpenStack backend access_url: type: string nullable: true readOnly: true availability_zone: type: string description: Optional availability group. Will be used for all instances provisioned in this tenant maxLength: 100 internal_network_id: type: string readOnly: true description: ID of internal network in OpenStack tenant external_network_id: type: string readOnly: true description: ID of external network connected to OpenStack tenant external_network_ref_uuid: type: string format: uuid readOnly: true external_network_ref_name: type: string readOnly: true default: '' user_username: type: string description: Username of the tenant user maxLength: 50 user_password: type: string description: Password of the tenant user maxLength: 50 quotas: type: array items: $ref: '#/components/schemas/Quota' readOnly: true default_volume_type_name: type: string description: Volume type name to use when creating volumes. maxLength: 100 skip_creation_of_default_router: type: boolean default: false marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackTenantChangePasswordRequest: type: object properties: user_password: type: string description: New tenant user password. maxLength: 50 required: - user_password description: '' OpenStackTenantQuota: type: object properties: instances: type: integer minimum: 1 volumes: type: integer minimum: 1 snapshots: type: integer minimum: 1 ram: type: integer minimum: 1 vcpu: type: integer minimum: 1 storage: type: integer minimum: 1 security_group_count: type: integer minimum: 1 security_group_rule_count: type: integer minimum: 1 description: '' OpenStackTenantQuotaRequest: type: object properties: instances: type: integer minimum: 1 volumes: type: integer minimum: 1 snapshots: type: integer minimum: 1 ram: type: integer minimum: 1 vcpu: type: integer minimum: 1 storage: type: integer minimum: 1 security_group_count: type: integer minimum: 1 security_group_rule_count: type: integer minimum: 1 description: '' OpenStackTenantRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 64 description: type: string maxLength: 4096 availability_zone: type: string description: Optional availability group. Will be used for all instances provisioned in this tenant maxLength: 100 default_volume_type_name: type: string description: Volume type name to use when creating volumes. maxLength: 100 security_groups: type: array items: $ref: '#/components/schemas/OpenStackTenantSecurityGroupRequest' writeOnly: true skip_creation_of_default_subnet: type: boolean writeOnly: true default: false skip_creation_of_default_router: type: boolean default: false required: - name OpenStackTenantSecurityGroup: type: object properties: name: type: string description: type: string rules: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupRuleCreate' required: - name description: '' OpenStackTenantSecurityGroupRequest: type: object properties: name: type: string minLength: 1 description: type: string rules: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupRuleCreateRequest' required: - name description: '' OpenStackVolume: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true nullable: true description: Volume ID in the OpenStack backend access_url: type: string nullable: true readOnly: true source_snapshot: type: string format: uri readOnly: true nullable: true description: Snapshot that this volume was created from, if any size: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Size in MiB bootable: type: boolean description: Indicates if this volume can be used to boot an instance metadata: readOnly: true image: type: string format: uri nullable: true description: Image that this volume was created from, if any image_metadata: type: string readOnly: true description: Metadata of the image this volume was created from image_name: type: string readOnly: true description: Name of the image this volume was created from type: type: string format: uri nullable: true description: Type of the volume (e.g. SSD, HDD) type_name: type: string readOnly: true runtime_state: type: string readOnly: true availability_zone: type: string format: uri nullable: true description: Availability zone where this volume is located availability_zone_name: type: string readOnly: true device: type: string readOnly: true description: Name of volume as instance device e.g. /dev/vdb. action: type: string readOnly: true action_details: readOnly: true instance: type: string format: uri readOnly: true nullable: true description: Instance that this volume is attached to, if any instance_name: type: string readOnly: true instance_marketplace_uuid: type: string format: uuid readOnly: true tenant: type: string format: uri tenant_uuid: type: string format: uuid readOnly: true extend_enabled: type: boolean readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] OpenStackVolumeAvailabilityZone: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 settings: type: string format: uri nullable: true available: type: boolean required: - name - url - uuid OpenStackVolumeExtendRequest: type: object properties: disk_size: type: integer minimum: 1 required: - disk_size description: '' OpenStackVolumeRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 bootable: type: boolean description: Indicates if this volume can be used to boot an instance required: - name OpenStackVolumeRetypeRequest: type: object properties: type: type: string format: uri required: - type description: '' OpenStackVolumeType: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 settings: type: string format: uri required: - name - settings - url - uuid OptionField: type: object properties: type: $ref: '#/components/schemas/OptionFieldTypeEnum' label: type: string help_text: type: string required: type: boolean default: false choices: type: array items: type: string default: type: string min: type: integer max: type: integer cascade_config: $ref: '#/components/schemas/CascadeConfig' component_multiplier_config: $ref: '#/components/schemas/ComponentMultiplierConfig' storage_folder_config: $ref: '#/components/schemas/StorageFolderConfig' default_configs: $ref: '#/components/schemas/K8sDefaultConfiguration' validators: type: array items: $ref: '#/components/schemas/OptionValidator' required: - label - type description: '' OptionFieldRequest: type: object properties: type: $ref: '#/components/schemas/OptionFieldTypeEnum' label: type: string minLength: 1 help_text: type: string minLength: 1 required: type: boolean default: false choices: type: array items: type: string minLength: 1 default: type: string minLength: 1 min: type: integer max: type: integer cascade_config: $ref: '#/components/schemas/CascadeConfigRequest' component_multiplier_config: $ref: '#/components/schemas/ComponentMultiplierConfigRequest' storage_folder_config: $ref: '#/components/schemas/StorageFolderConfigRequest' default_configs: $ref: '#/components/schemas/K8sDefaultConfigurationRequest' validators: type: array items: $ref: '#/components/schemas/OptionValidatorRequest' required: - label - type description: '' OptionFieldTypeEnum: enum: - boolean - integer - money - string - text - html_text - select_string - select_string_multi - select_openstack_tenant - select_multiple_openstack_tenants - select_openstack_instance - select_multiple_openstack_instances - date - time - conditional_cascade - component_multiplier - single_datacenter_k8s_config - multi_datacenter_k8s_config - storage_folder_manager type: string description: '' OptionValidator: type: object properties: type: $ref: '#/components/schemas/OptionValidatorTypeEnum' target_field: type: string required: - target_field - type description: '' OptionValidatorRequest: type: object properties: type: $ref: '#/components/schemas/OptionValidatorTypeEnum' target_field: type: string minLength: 1 required: - target_field - type description: '' OptionValidatorTypeEnum: enum: - gt - gte - lt - lte type: string description: '' OrcidCallbackRequest: type: object description: '' properties: code: type: string minLength: 1 description: Authorization code from ORCID OAuth callback state: type: string description: State token for CSRF protection required: - code OrcidDisconnectResponse: type: object description: '' properties: detail: type: string required: - detail OrcidSyncResponse: type: object description: '' properties: imported: type: object additionalProperties: {} last_sync: type: string format: date-time required: - imported - last_sync OrderApproveByProviderRequest: type: object properties: attributes: {} description: '' OrderAttachment: type: object properties: attachment: type: string format: uri nullable: true description: '' OrderAttachmentRequest: type: object properties: attachment: type: string format: binary nullable: true description: '' OrderBackendIDRequest: type: object properties: backend_id: type: string writeOnly: true minLength: 1 maxLength: 255 required: - backend_id description: '' OrderConsumerInfoRequest: type: object properties: consumer_message: type: string consumer_message_attachment: type: string format: binary description: '' OrderCreateRequest: type: object description: '' properties: offering: type: string format: uri plan: type: string format: uri attributes: oneOf: - $ref: '#/components/schemas/GenericOrderAttributes' description: Attributes structure depends on the offering type specified in the parent object. Can also be a generic object for offerings without a specific attributes schema. limits: type: object additionalProperties: type: integer accepting_terms_of_service: type: boolean writeOnly: true callback_url: type: string format: uri nullable: true maxLength: 200 request_comment: type: string nullable: true maxLength: 255 type: allOf: - $ref: '#/components/schemas/RequestTypes' default: Create start_date: type: string format: date nullable: true description: Enables delayed processing of resource provisioning order. slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ project: type: string format: uri required: - offering - project OrderDetails: type: object description: '' properties: offering: type: string format: uri offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true offering_description: type: string readOnly: true offering_image: type: string format: uri readOnly: true offering_thumbnail: type: string format: uri readOnly: true offering_type: type: string readOnly: true offering_shared: type: boolean description: Accessible to all customers. readOnly: true offering_billable: type: boolean description: Purchase and usage is invoiced. readOnly: true offering_plugin_options: description: Public data used by specific plugin, such as storage mode for OpenStack. readOnly: true provider_name: type: string readOnly: true provider_uuid: type: string format: uuid readOnly: true provider_slug: type: string readOnly: true category_title: type: string readOnly: true category_uuid: type: string format: uuid readOnly: true category_icon: type: string format: uri readOnly: true plan: type: string format: uri plan_unit: allOf: - $ref: '#/components/schemas/BillingUnit' readOnly: true nullable: true plan_name: type: string readOnly: true nullable: true plan_uuid: type: string format: uuid readOnly: true nullable: true plan_description: type: string readOnly: true nullable: true attributes: {} limits: type: object additionalProperties: type: integer uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true resource_uuid: type: string format: uuid readOnly: true nullable: true resource_type: type: string readOnly: true nullable: true resource_name: type: string readOnly: true cost: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ readOnly: true nullable: true state: allOf: - $ref: '#/components/schemas/OrderState' readOnly: true output: type: string readOnly: true marketplace_resource_uuid: type: string format: uuid readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true callback_url: type: string format: uri nullable: true maxLength: 200 completed_at: type: string format: date-time readOnly: true nullable: true title: Completion time request_comment: type: string nullable: true maxLength: 255 attachment: type: string format: uri nullable: true type: allOf: - $ref: '#/components/schemas/RequestTypes' default: Create start_date: type: string format: date nullable: true description: Enables delayed processing of resource provisioning order. slug: type: string readOnly: true pattern: ^[-a-zA-Z0-9_]+$ url: type: string format: uri readOnly: true consumer_reviewed_by: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true nullable: true consumer_reviewed_by_full_name: type: string readOnly: true nullable: true consumer_reviewed_by_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true nullable: true consumer_reviewed_at: type: string format: date-time readOnly: true nullable: true provider_reviewed_by: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true nullable: true provider_reviewed_by_full_name: type: string readOnly: true nullable: true provider_reviewed_by_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true nullable: true provider_reviewed_at: type: string format: date-time readOnly: true nullable: true created_by_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true created_by_full_name: type: string readOnly: true created_by_civil_number: type: string nullable: true readOnly: true created_by_email: type: string format: email title: Email address readOnly: true nullable: true created_by_organization: type: string readOnly: true nullable: true created_by_organization_registry_code: type: string description: Company registration code of the user's organization, if known readOnly: true nullable: true customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_slug: type: string readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true project_description: type: string readOnly: true project_slug: type: string readOnly: true old_plan_name: type: string readOnly: true nullable: true new_plan_name: type: string readOnly: true nullable: true old_plan_uuid: type: string format: uuid readOnly: true nullable: true new_plan_uuid: type: string format: uuid readOnly: true nullable: true old_cost_estimate: type: number format: double readOnly: true new_cost_estimate: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ nullable: true readOnly: true can_terminate: type: boolean readOnly: true fixed_price: type: number format: double readOnly: true activation_price: type: number format: double readOnly: true termination_comment: type: string nullable: true readOnly: true backend_id: type: string maxLength: 255 order_subtype: type: string nullable: true readOnly: true provider_message: type: string provider_message_url: type: string format: uri maxLength: 200 provider_message_attachment: type: string format: uri nullable: true consumer_message: type: string consumer_message_attachment: type: string format: uri nullable: true consumer_rejection_comment: type: string readOnly: true provider_rejection_comment: type: string readOnly: true issue: allOf: - $ref: '#/components/schemas/IssueReference' nullable: true readOnly: true required: [] OrderErrorDetailsRequest: type: object properties: error_message: type: string error_traceback: type: string consumer_rejection_comment: type: string description: '' OrderInfoResponse: type: object properties: detail: type: string readOnly: true required: - detail description: '' OrderProviderInfoRequest: type: object properties: provider_message: type: string provider_message_url: type: string format: uri provider_message_attachment: type: string format: binary description: '' OrderProviderRejectionRequest: type: object properties: provider_rejection_comment: type: string description: '' OrderState: enum: - pending-consumer - pending-provider - pending-project - pending-start-date - executing - done - erred - canceled - rejected type: string description: '' OrderStatsResponse: type: object description: '' properties: summary: allOf: - $ref: '#/components/schemas/OrderStatsSummary' description: Summary statistics by_state: type: object additionalProperties: type: integer description: Total order counts grouped by state by_type: type: object additionalProperties: type: integer description: Total order counts grouped by type daily: type: array items: $ref: '#/components/schemas/DailyOrderStats' description: Daily breakdown required: - by_state - by_type - daily - summary OrderStatsSummary: type: object description: '' properties: total: type: integer description: Total number of orders total_cost: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true description: Total cost of orders total_revenue: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true description: Total revenue from create/update orders pending: type: integer description: Number of pending orders executing: type: integer description: Number of executing orders done: type: integer description: Number of completed orders erred: type: integer description: Number of erred orders canceled: type: integer description: Number of canceled orders rejected: type: integer description: Number of rejected orders required: - canceled - done - erred - executing - pending - rejected - total - total_cost - total_revenue OrderUUID: type: object properties: order_uuid: type: string format: uuid readOnly: true description: UUID of the created or updated order required: - order_uuid description: '' OrderUpdate: type: object description: '' properties: limits: type: object additionalProperties: type: integer attributes: {} start_date: type: string format: date nullable: true description: Enables delayed processing of resource provisioning order. OrderUpdateRequest: type: object description: '' properties: limits: type: object additionalProperties: type: integer attributes: {} start_date: type: string format: date nullable: true description: Enables delayed processing of resource provisioning order. OrganizationGroup: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string maxLength: 150 parent_uuid: type: string format: uuid readOnly: true description: UUID of the parent organization group parent_name: type: string readOnly: true description: Name of the parent organization group parent: type: string format: uri nullable: true customers_count: type: integer readOnly: true description: Number of customers in this organization group required: [] description: '' OrganizationGroupRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 parent: type: string format: uri nullable: true required: - name description: '' OrganizationGroupsRequest: type: object properties: organization_groups: type: array items: type: string format: uri description: '' OrganizationalAccess: type: object description: '' properties: scope_type: type: string scope_uuid: type: string format: uuid scope_name: type: string users: type: array items: $ref: '#/components/schemas/OrganizationalUser' required: - scope_name - scope_type - scope_uuid - users OrganizationalUser: type: object description: '' properties: user_uuid: type: string format: uuid username: type: string full_name: type: string role: type: string nullable: true required: - full_name - role - user_uuid - username PaidRequest: type: object properties: date: type: string format: date proof: type: string format: binary required: - date description: '' PartitionSummary: type: object description: '' properties: uuid: type: string format: uuid readOnly: true partition_name: type: string description: Name of the SLURM partition maxLength: 255 priority_tier: type: integer maximum: 32767 minimum: 0 nullable: true description: Priority tier for scheduling and preemption qos: type: string description: Quality of Service (QOS) name maxLength: 255 required: [] PartitionSummaryRequest: type: object description: '' properties: partition_name: type: string minLength: 1 description: Name of the SLURM partition maxLength: 255 priority_tier: type: integer maximum: 32767 minimum: 0 nullable: true description: Priority tier for scheduling and preemption qos: type: string description: Quality of Service (QOS) name maxLength: 255 required: - partition_name PasswordChangeRequest: type: object properties: new_password: type: string writeOnly: true minLength: 1 required: - new_password description: '' PatchedAccessSubnetRequest: type: object description: '' properties: inet: type: string minLength: 1 description: type: string maxLength: 4096 PatchedAdminAnnouncementRequest: type: object description: '' properties: description: type: string maxLength: 4096 active_from: type: string format: date-time active_to: type: string format: date-time type: $ref: '#/components/schemas/AdminAnnouncementTypeEnum' PatchedAllocationRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 node_limit: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 groupname: type: string nullable: true maxLength: 64 PatchedArrowCustomerMappingRequest: type: object description: '' properties: settings: type: string format: uri arrow_reference: type: string minLength: 1 description: Arrow customer ID (e.g., 'XSP661245') maxLength: 255 arrow_company_name: type: string description: Arrow company name maxLength: 500 waldur_customer: type: string format: uri is_active: type: boolean description: Whether this mapping is active PatchedArrowSettingsRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Arrow API base URL maxLength: 255 api_key: type: string minLength: 1 description: Arrow API Key (leave empty on update to keep current) export_type_reference: type: string description: Billing export template reference maxLength: 255 classification_filter: type: string minLength: 1 description: Filter for IaaS/SaaS classification maxLength: 50 is_active: type: boolean description: Whether this settings record is active sync_enabled: type: boolean description: Whether automatic billing sync is enabled invoice_price_source: allOf: - $ref: '#/components/schemas/InvoicePriceSourceEnum' description: 'Which price to use for invoice items: sell or buy' invoice_item_prefix: type: string description: Prefix for invoice item names (e.g. 'Arrow consumption') maxLength: 100 PatchedArrowVendorOfferingMappingRequest: type: object description: '' properties: settings: type: string format: uri arrow_vendor_name: type: string minLength: 1 description: Arrow vendor name (e.g., 'Microsoft', 'Amazon Web Services') maxLength: 255 offering: type: string format: uuid plan: type: string format: uuid nullable: true is_active: type: boolean description: Whether this mapping is active PatchedAssignmentBatchRequest: type: object description: '' properties: manager_notes: type: string description: Optional notes from call manager to reviewer. PatchedAssignmentItemRequest: type: object description: '' properties: decline_reason: type: string description: Reason provided by reviewer for declining. PatchedAwsInstanceRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 PatchedAzurePublicIPRequest: type: object description: '' properties: description: type: string maxLength: 4096 location: type: string format: uri resource_group: type: string format: uri PatchedAzureSqlDatabaseRequest: type: object description: '' properties: description: type: string maxLength: 4096 server: type: string format: uri charset: type: string nullable: true maxLength: 255 collation: type: string nullable: true maxLength: 255 PatchedAzureSqlServerRequest: type: object description: '' properties: description: type: string maxLength: 4096 location: type: string format: uri writeOnly: true storage_mb: type: integer maximum: 4194304 minimum: 5120 nullable: true PatchedAzureVirtualMachineRequest: type: object description: '' properties: description: type: string maxLength: 4096 location: type: string format: uri writeOnly: true PatchedBroadcastMessageRequest: type: object description: '' properties: subject: type: string minLength: 1 maxLength: 1000 body: type: string minLength: 1 query: {} send_at: type: string format: date nullable: true PatchedCallApplicantAttributeConfigRequest: type: object description: '' properties: call: type: string format: uuid writeOnly: true expose_full_name: type: boolean expose_email: type: boolean expose_organization: type: boolean expose_affiliations: type: boolean expose_organization_type: type: boolean expose_organization_country: type: boolean expose_nationality: type: boolean expose_nationalities: type: boolean expose_country_of_residence: type: boolean expose_eduperson_assurance: type: boolean expose_identity_source: type: boolean reviewers_see_applicant_details: type: boolean description: If True, reviewers see applicant identity. If False, proposals are anonymized for reviewers. PatchedCallAssignmentConfigurationRequest: type: object description: '' properties: auto_reassign_on_decline: type: boolean description: Automatically assign next-best reviewer when someone declines. If False, manager must manually approve reassignments. max_auto_reassign_attempts: type: integer maximum: 2147483647 minimum: 0 description: Maximum automatic reassignment attempts before requiring manual intervention. assignment_expiration_days: type: integer maximum: 2147483647 minimum: 0 description: Days until assignment invitation expires if not responded to. send_reminder_before_expiry_days: type: integer maximum: 2147483647 minimum: 0 description: Days before expiry to send reminder notification. PatchedCallCOIConfigurationRequest: type: object description: '' properties: coauthorship_lookback_years: type: integer maximum: 2147483647 minimum: 0 description: Years to look back for co-authorship detection coauthorship_threshold_papers: type: integer maximum: 2147483647 minimum: 0 description: Minimum shared papers to trigger COI institutional_lookback_years: type: integer maximum: 2147483647 minimum: 0 description: Years to look back for former institution detection include_same_department: type: boolean description: Detect same-department as COI include_same_institution: type: boolean description: Detect same-institution as COI recusal_required_types: type: array items: type: string minLength: 1 description: COI types requiring automatic recusal management_allowed_types: type: array items: type: string minLength: 1 description: COI types allowing management plan disclosure_only_types: type: array items: type: string minLength: 1 description: COI types requiring disclosure only auto_detect_coauthorship: type: boolean description: Enable automated co-authorship detection auto_detect_institutional: type: boolean description: Enable automated institutional affiliation detection auto_detect_named_personnel: type: boolean description: Enable detection of reviewer named in proposals invitation_proposal_disclosure: allOf: - $ref: '#/components/schemas/InvitationProposalDisclosureEnum' description: Level of proposal information disclosed in reviewer invitations PatchedCallManagingOrganisationRequest: type: object description: '' properties: description: type: string maxLength: 4096 image: type: string format: binary nullable: true PatchedCallResourceTemplateRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 255 description: type: string maxLength: 4096 attributes: {} limits: {} is_required: type: boolean description: If True, every proposal must include this resource type requested_offering: type: string format: uri PatchedCallReviewerPoolUpdateRequest: type: object description: '' properties: max_assignments: type: integer maximum: 50 minimum: 1 description: Maximum number of proposals that can be assigned to this reviewer PatchedCategoryColumnRequest: type: object properties: index: type: integer maximum: 32767 minimum: 0 description: Index allows to reorder columns. title: type: string minLength: 1 description: Title is rendered as column header. maxLength: 255 attribute: type: string description: Resource attribute is rendered as table cell. maxLength: 255 widget: nullable: true description: Widget field allows to customise table cell rendering. oneOf: - $ref: '#/components/schemas/WidgetEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' category: type: string format: uri description: '' PatchedCategoryComponentsRequest: type: object properties: type: type: string minLength: 1 description: Unique internal name of the measured unit, for example floating_ip. pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 50 name: type: string minLength: 1 description: Display name for the measured unit, for example, Floating IP. maxLength: 150 description: type: string maxLength: 4096 measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 category: $ref: '#/components/schemas/CategorySerializerForForNestedFieldsRequest' description: '' PatchedCategoryGroupRequest: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true PatchedCategoryHelpArticlesRequest: type: object properties: title: type: string nullable: true maxLength: 255 url: type: string format: uri minLength: 1 maxLength: 200 categories: type: array items: $ref: '#/components/schemas/CategorySerializerForForNestedFieldsRequest' description: '' PatchedChecklistRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 checklist_type: allOf: - $ref: '#/components/schemas/ChecklistTypeEnum' description: Type of compliance this checklist addresses PatchedClusterSecurityGroupRequest: type: object properties: rules: type: array items: $ref: '#/components/schemas/RancherClusterSecurityGroupRuleRequest' description: '' PatchedCommentRequest: type: object description: '' properties: description: type: string minLength: 1 is_public: type: boolean PatchedComponentUserUsageLimitRequest: type: object properties: resource: type: string format: uri component: type: string format: uuid user: type: string format: uri limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: '' PatchedConflictOfInterestRequest: type: object description: '' properties: status: $ref: '#/components/schemas/ConflictOfInterestStatusEnum' review_notes: type: string management_plan: type: string description: If waived, how is it managed PatchedCreateCustomerCreditRequest: type: object properties: value: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ customer: type: string format: uri offerings: type: array items: type: string format: uri nullable: true end_date: type: string format: date nullable: true expected_consumption: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ minimal_consumption_logic: $ref: '#/components/schemas/MinimalConsumptionLogicEnum' grace_coefficient: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,0})?$ apply_as_minimal_consumption: type: boolean description: '' PatchedCustomerComponentUsagePolicyRequest: type: object properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. component_limits_set: type: array items: $ref: '#/components/schemas/NestedCustomerUsagePolicyComponentRequest' description: '' PatchedCustomerEstimatedCostPolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 PatchedCustomerRequest: type: object description: '' properties: backend_id: type: string description: Organization identifier in another application. maxLength: 255 image: type: string format: binary nullable: true blocked: type: boolean archived: type: boolean display_billing_info_in_projects: type: boolean default_tax_percent: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,2})?$ accounting_start_date: type: string format: date-time title: Start date of accounting sponsor_number: type: integer maximum: 2147483647 minimum: 0 nullable: true description: External ID of the sponsor covering the costs max_service_accounts: type: integer maximum: 32767 minimum: 0 nullable: true description: Maximum number of service accounts allowed project_metadata_checklist: type: string format: uuid nullable: true description: Checklist to be used for project metadata validation in this organization grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 160 abbreviation: type: string maxLength: 12 description: type: string maxLength: 4096 contact_details: type: string maxLength: 500 agreement_number: type: string maxLength: 160 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 access_subnets: type: string description: Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. registration_code: type: string maxLength: 160 homepage: type: string format: uri maxLength: 255 domain: type: string maxLength: 255 vat_code: type: string description: VAT number maxLength: 20 postal: type: string maxLength: 20 address: type: string maxLength: 300 bank_name: type: string maxLength: 150 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true bank_account: type: string maxLength: 50 country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 PatchedCustomerServiceAccountRequest: type: object properties: username: type: string maxLength: 32 description: type: string error_traceback: type: string email: type: string format: email minLength: 1 maxLength: 320 preferred_identifier: type: string maxLength: 32 customer: type: string format: uuid description: '' PatchedDigitalOceanDropletRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 PatchedEmailHookRequest: type: object properties: is_active: type: boolean event_types: type: array items: $ref: '#/components/schemas/EventTypesEnum' event_groups: type: array items: $ref: '#/components/schemas/EventGroupsEnum' email: type: string format: email minLength: 1 maxLength: 320 description: '' PatchedExternalLinkRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 link: type: string format: uri minLength: 1 maxLength: 500 image: type: string format: binary nullable: true description: '' PatchedFirecrestJobRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 runtime_state: type: string maxLength: 100 PatchedGroupInvitationUpdateRequest: type: object properties: is_public: type: boolean description: Allow non-authenticated users to see and accept this invitation. Only staff can create public invitations. role: type: string format: uuid description: UUID of the role to grant. scope: type: string description: URL of the scope (Customer or Project) for this invitation auto_create_project: type: boolean description: Create project and grant project permissions instead of customer permissions auto_approve: type: boolean description: Automatically approve permission requests from users matching email patterns or affiliations project_name_template: type: string nullable: true description: Template for project name. Supports {username}, {email}, {full_name} variables maxLength: 255 project_role: type: string format: uuid nullable: true description: UUID of the project role to grant if auto_create_project is enabled user_affiliations: {} user_email_patterns: {} user_identity_sources: description: List of allowed identity sources (identity providers). custom_text: type: string description: Custom description text displayed to users viewing this invitation. maxLength: 500 description: '' PatchedIdentityProviderRequest: type: object properties: provider: type: string minLength: 1 maxLength: 32 is_active: type: boolean client_id: type: string minLength: 1 description: ID of application used for OAuth authentication. maxLength: 200 client_secret: type: string minLength: 1 description: Application secret key. maxLength: 200 verify_ssl: type: boolean enable_post_logout_redirect: type: boolean enable_pkce: type: boolean discovery_url: type: string minLength: 1 description: The endpoint for endpoint discovery. maxLength: 200 label: type: string minLength: 1 description: Human-readable identity provider is label. maxLength: 200 management_url: type: string description: The endpoint for user details management. maxLength: 200 protected_fields: {} extra_scope: type: string nullable: true description: Space-separated list of scopes to request during authentication. maxLength: 200 user_field: type: string minLength: 1 description: The field in Waldur User model to be used for looking up the user maxLength: 100 user_claim: type: string minLength: 1 description: The OIDC claim from the userinfo endpoint to be used as the value for the lookup field. maxLength: 100 attribute_mapping: description: 'A JSON object mapping Waldur User model fields to OIDC claims. Example: {"first_name": "given_name", "last_name": "family_name", "email": "email"}' extra_fields: type: string nullable: true description: Space-separated list of extra fields to persist. maxLength: 200 allowed_redirects: description: 'List of allowed redirect URLs for OAuth authentication. URLs must be exact matches (origin only: scheme + domain + port). HTTPS required except for localhost. No wildcards, paths, query params, or fragments. Example: ["https://portal1.example.com", "https://portal2.example.com:8443"]. If empty, falls back to HOMEPORT_URL setting.' description: '' PatchedInvitationUpdateRequest: type: object properties: email: type: string format: email minLength: 1 description: Invitation link will be sent to this email. Note that user can accept invitation with different email. maxLength: 254 role: type: string format: uuid description: UUID of the new role to assign. Must be compatible with the invitation scope. description: '' PatchedInvoiceItemUpdateRequest: type: object properties: article_code: type: string maxLength: 30 quantity: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ start: type: string format: date-time description: Date and time when item usage has started. end: type: string format: date-time description: Date and time when item usage has ended. description: '' PatchedIssueRequest: type: object description: '' properties: summary: type: string minLength: 1 maxLength: 255 description: type: string assignee: type: string format: uri nullable: true is_reported_manually: type: boolean writeOnly: true default: false description: Set true if issue is created by regular user via portal. PatchedIssueStatusRequest: type: object properties: name: type: string minLength: 1 description: Status name in Jira. maxLength: 255 type: allOf: - $ref: '#/components/schemas/IssueStatusType' minimum: -2147483648 maximum: 2147483647 description: '' PatchedKeycloakUserGroupMembershipRequest: type: object properties: username: type: string minLength: 1 description: Keycloak user username maxLength: 255 email: type: string format: email minLength: 1 description: User's email for notifications maxLength: 254 scope_uuid: type: string format: uuid writeOnly: true description: UUID of a cluster or a project in Rancher role: type: string format: uri writeOnly: true description: '' PatchedLexisLinkRequest: type: object properties: heappe_project_id: type: integer maximum: 2147483647 minimum: 0 nullable: true description: '' PatchedMaintenanceAnnouncementOfferingRequest: type: object properties: maintenance: type: string format: uri offering: type: string format: uri impact_level: allOf: - $ref: '#/components/schemas/ImpactLevelEnum' description: Expected impact on this offering minimum: 0 maximum: 32767 impact_description: type: string description: Specific description of how this offering will be affected description: '' PatchedMaintenanceAnnouncementOfferingTemplateRequest: type: object properties: maintenance_template: type: string format: uri offering: type: string format: uri impact_level: allOf: - $ref: '#/components/schemas/ImpactLevelEnum' description: Expected impact on this offering minimum: 0 maximum: 32767 impact_description: type: string description: Specific description of how this offering will be affected description: '' PatchedMaintenanceAnnouncementRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 message: type: string maxLength: 2000 internal_notes: type: string maxLength: 2000 maintenance_type: allOf: - $ref: '#/components/schemas/MaintenanceTypeEnum' description: Type of maintenance being performed minimum: 0 maximum: 32767 external_reference_url: type: string format: uri description: Optional reference to an external maintenance tracker maxLength: 200 scheduled_start: type: string format: date-time description: When the maintenance is scheduled to begin scheduled_end: type: string format: date-time description: When the maintenance is scheduled to complete service_provider: type: string format: uri description: Service provider announcing the maintenance description: '' PatchedMaintenanceAnnouncementTemplateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 message: type: string maxLength: 2000 maintenance_type: allOf: - $ref: '#/components/schemas/MaintenanceTypeEnum' description: Type of maintenance being performed minimum: 0 maximum: 32767 service_provider: type: string format: uri description: Service provider announcing the maintenance description: '' PatchedMarketplaceCategoryRequest: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true default_vm_category: type: boolean description: Set to "true" if this category is for OpenStack VM. Only one category can have "true" value. default_volume_category: type: boolean description: Set to true if this category is for OpenStack Volume. Only one category can have "true" value. default_tenant_category: type: boolean description: Set to true if this category is for OpenStack Tenant. Only one category can have "true" value. group: type: string format: uri nullable: true PatchedMatchingConfigurationRequest: type: object description: '' properties: affinity_method: $ref: '#/components/schemas/AffinityMethodEnum' keyword_weight: type: number format: double minimum: 0.0 text_weight: type: number format: double minimum: 0.0 min_reviewers_per_proposal: type: integer maximum: 2147483647 minimum: 0 max_reviewers_per_proposal: type: integer maximum: 2147483647 minimum: 0 min_proposals_per_reviewer: type: integer maximum: 2147483647 minimum: 0 max_proposals_per_reviewer: type: integer maximum: 2147483647 minimum: 0 algorithm: $ref: '#/components/schemas/MatchingAlgorithm' min_affinity_threshold: type: number format: double minimum: 0.0 description: Minimum affinity score for FairFlow algorithm use_reviewer_bids: type: boolean bid_weight: type: number format: double minimum: 0.0 PatchedMessageTemplateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 subject: type: string minLength: 1 body: type: string minLength: 1 description: '' PatchedMigrationDetailsRequest: type: object properties: mappings: $ref: '#/components/schemas/MappingRequest' error_message: type: string error_traceback: type: string description: '' PatchedNetworkRBACPolicyRequest: type: object description: '' properties: network: type: string format: uri target_tenant: type: string format: uri policy_type: allOf: - $ref: '#/components/schemas/PolicyTypeEnum' default: access_as_shared description: Type of access granted - either shared access or external network access PatchedNotificationRequest: type: object properties: key: type: string minLength: 1 maxLength: 255 description: type: string maxLength: 4096 description: '' PatchedNotificationTemplateDetailSerializersRequest: type: object properties: path: type: string minLength: 1 description: 'Example: ''flatpages/default.html''' maxLength: 150 name: type: string minLength: 1 maxLength: 150 description: '' PatchedOfferingEstimatedCostPolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. PatchedOfferingPartitionUpdateRequest: type: object description: '' properties: partition_uuid: type: string format: uuid writeOnly: true partition_name: type: string minLength: 1 description: Name of the SLURM partition maxLength: 255 cpu_bind: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default task binding policy (SLURM cpu_bind) def_cpu_per_gpu: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default CPUs allocated per GPU max_cpus_per_node: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per node max_cpus_per_socket: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum allocated CPUs per socket def_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per CPU in MB def_mem_per_gpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per GPU in MB def_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Default memory per node in MB max_mem_per_cpu: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per CPU in MB max_mem_per_node: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 nullable: true description: Maximum memory per node in MB default_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Default time limit in minutes max_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum time limit in minutes grace_time: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Preemption grace time in seconds max_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum nodes per job min_nodes: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum nodes per job exclusive_topo: type: boolean description: Exclusive topology access required exclusive_user: type: boolean description: Exclusive user access required priority_tier: type: integer maximum: 32767 minimum: 0 nullable: true description: Priority tier for scheduling and preemption qos: type: string description: Quality of Service (QOS) name maxLength: 255 req_resv: type: boolean description: Require reservation for job allocation PatchedOfferingSoftwareCatalogUpdateRequest: type: object description: '' properties: offering_catalog_uuid: type: string format: uuid writeOnly: true catalog: type: string format: uuid enabled_cpu_family: description: 'List of enabled CPU families: [''x86_64'', ''aarch64'']' enabled_cpu_microarchitectures: description: 'List of enabled CPU microarchitectures: [''generic'', ''zen3'']' partition: type: string format: uuid nullable: true PatchedOfferingTermsOfServiceRequest: type: object description: '' properties: terms_of_service: type: string terms_of_service_link: type: string format: uri maxLength: 200 is_active: type: boolean grace_period_days: type: integer maximum: 2147483647 minimum: 0 description: Number of days before outdated consents are automatically revoked. Only applies when requires_reconsent=True. PatchedOfferingUsagePolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. component_limits_set: type: array items: $ref: '#/components/schemas/NestedOfferingComponentLimitRequest' period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 PatchedOfferingUserAttributeConfigRequest: type: object description: '' properties: offering: type: string format: uuid writeOnly: true expose_username: type: boolean expose_full_name: type: boolean expose_email: type: boolean expose_phone_number: type: boolean expose_organization: type: boolean expose_job_title: type: boolean expose_affiliations: type: boolean expose_gender: type: boolean expose_personal_title: type: boolean expose_place_of_birth: type: boolean expose_country_of_residence: type: boolean expose_nationality: type: boolean expose_nationalities: type: boolean expose_organization_country: type: boolean expose_organization_type: type: boolean expose_organization_registry_code: type: boolean expose_eduperson_assurance: type: boolean expose_civil_number: type: boolean expose_birth_date: type: boolean expose_identity_source: type: boolean expose_active_isds: type: boolean PatchedOfferingUserRequest: type: object description: '' properties: user: type: string format: uri offering: type: string format: uri username: type: string nullable: true maxLength: 100 offering_uuid: type: string format: uuid user_uuid: type: string format: uuid PatchedOfferingUserRoleRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 offering: type: string format: uri scope_type: type: string description: Level this role applies at, e.g. 'cluster', 'project'. Empty means offering-wide. maxLength: 50 scope_type_label: type: string description: Human-readable label for scope_type shown to end users, e.g. 'Rancher Project', 'Cluster Namespace'. Falls back to capitalized scope_type if empty. maxLength: 150 description: '' PatchedOfferingUserServiceProviderCommentRequest: type: object description: '' properties: service_provider_comment: type: string service_provider_comment_url: type: string format: uri description: URL link for additional information or actions related to service provider comment maxLength: 200 PatchedOnboardingJustificationRequest: type: object description: '' properties: verification: type: string format: uri user_justification: type: string nullable: true description: User's explanation for why they should be authorized PatchedOnboardingQuestionMetadataRequest: type: object description: '' properties: question: type: string format: uri maps_to_customer_field: type: string description: Customer model field name to map this answer to (e.g., 'registration_code', 'email', 'vat_code') maxLength: 100 intent_field: type: string description: Type of intent/purpose field (e.g., 'intent', 'registration_purpose') - stays with verification maxLength: 50 PatchedOnboardingVerificationRequest: type: object description: '' properties: country: type: string description: ISO country code (e.g., 'EE', 'AT') for context. Can be inferred from validation_method. maxLength: 2 legal_person_identifier: type: string description: Official company registration code (required for automatic validation) maxLength: 50 legal_name: type: string description: Company name(optional, for reference) maxLength: 255 expires_at: type: string format: date-time nullable: true description: When this verification expires PatchedOpenStackBackupRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 kept_until: type: string format: date-time nullable: true description: Guaranteed time of backup retention. If null - keep forever. PatchedOpenStackInstanceRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 PatchedOpenStackNetworkRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 PatchedOpenStackPortRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 target_tenant: type: string format: uri writeOnly: true description: Target tenant for shared network port creation. If not specified, defaults to network's tenant. security_groups: type: array items: $ref: '#/components/schemas/OpenStackPortNestedSecurityGroupRequest' PatchedOpenStackSecurityGroupUpdateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 description: '' PatchedOpenStackSnapshotRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 metadata: {} kept_until: type: string format: date-time nullable: true description: Guaranteed time of snapshot retention. If null - keep forever. PatchedOpenStackSubNetRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 cidr: type: string minLength: 1 gateway_ip: description: IP address of the gateway for this subnet oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true minLength: 1 disable_gateway: type: boolean description: If True, no gateway IP address will be allocated allocation_pools: type: array items: $ref: '#/components/schemas/OpenStackSubNetAllocationPoolRequest' dns_nameservers: type: array items: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 minLength: 1 host_routes: type: array items: $ref: '#/components/schemas/OpenStackStaticRouteRequest' PatchedOpenStackTenantRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 64 description: type: string maxLength: 4096 availability_zone: type: string description: Optional availability group. Will be used for all instances provisioned in this tenant maxLength: 100 default_volume_type_name: type: string description: Volume type name to use when creating volumes. maxLength: 100 security_groups: type: array items: $ref: '#/components/schemas/OpenStackTenantSecurityGroupRequest' writeOnly: true skip_creation_of_default_subnet: type: boolean writeOnly: true default: false skip_creation_of_default_router: type: boolean default: false PatchedOpenStackVolumeRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 bootable: type: boolean description: Indicates if this volume can be used to boot an instance PatchedOrderUpdateRequest: type: object description: '' properties: limits: type: object additionalProperties: type: integer attributes: {} start_date: type: string format: date nullable: true description: Enables delayed processing of resource provisioning order. PatchedOrganizationGroupRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 parent: type: string format: uri nullable: true description: '' PatchedPaymentProfileRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 organization: type: string format: uri attributes: $ref: '#/components/schemas/PaymentProfileAttributesRequest' payment_type: $ref: '#/components/schemas/PaymentTypeEnum' is_active: type: boolean nullable: true default: true description: '' PatchedPaymentRequest: type: object properties: profile: type: string format: uri date_of_payment: type: string format: date sum: type: string format: decimal pattern: ^-?\d{0,8}(?:\.\d{0,2})?$ proof: type: string format: binary nullable: true description: '' PatchedProjectCreditRequest: type: object properties: value: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ project: type: string format: uri end_date: type: string format: date nullable: true expected_consumption: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ minimal_consumption_logic: $ref: '#/components/schemas/MinimalConsumptionLogicEnum' grace_coefficient: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,0})?$ apply_as_minimal_consumption: type: boolean mark_unused_credit_as_spent_on_project_termination: type: boolean description: '' PatchedProjectDigestConfigRequest: type: object properties: is_enabled: type: boolean frequency: $ref: '#/components/schemas/FrequencyEnum' enabled_sections: type: array items: type: string minLength: 1 day_of_week: type: integer maximum: 6 minimum: 0 description: 'For weekly/biweekly: 0=Sunday..6=Saturday' day_of_month: type: integer maximum: 28 minimum: 1 description: 'For monthly: day of month (1-28)' description: '' PatchedProjectEstimatedCostPolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 PatchedProjectInfoRequest: type: object properties: project: type: string format: uri shortname: type: string nullable: true minLength: 3 description: A short, unique name for the project. It will be used to form the local username of any users in the project on any systems. Should only contain lower-case letters and digits and must start with a letter. pattern: ^[a-z0-9\-_]+$ maxLength: 30 allowed_destinations: type: string nullable: true description: A comma-separated list of allowable destinations of instances that can be attached to this project. For example, a project may only allow 'brics.aip1.*', meaning that only instances that start with 'brics.aip1.' can be attached to this project. maxLength: 1024 description: '' PatchedProjectRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 500 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ customer: type: string format: uri title: Organization description: type: string description: Project description (HTML content will be sanitized) type: type: string format: uri nullable: true title: Project type backend_id: type: string maxLength: 255 start_date: type: string format: date nullable: true description: Project start date. Cannot be edited after the start date has arrived. end_date: type: string format: date nullable: true description: Project end date. Setting this field requires DELETE_PROJECT permission. oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' is_industry: type: boolean image: type: string format: binary nullable: true kind: allOf: - $ref: '#/components/schemas/KindEnum' title: Project type staff_notes: type: string description: Internal notes visible only to staff and support users (HTML content will be sanitized) grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated. Overrides customer-level setting. user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). PatchedProjectServiceAccountRequest: type: object properties: username: type: string maxLength: 32 description: type: string error_traceback: type: string email: type: string format: email minLength: 1 maxLength: 320 preferred_identifier: type: string maxLength: 32 project: type: string format: uuid description: '' PatchedProjectTemplateRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 128 offering: type: string nullable: true description: The offering for which this template applies. maxLength: 256 provider: type: string format: uri portal: type: string minLength: 1 maxLength: 32 key: type: string nullable: true description: The key that is used to authenticate requests for this class. maxLength: 256 customer: type: string format: uri shortname: type: string nullable: true maxLength: 30 offerings: type: array items: type: string format: uri approval_limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true description: The credit limit beyond which requests need to be approved by a local admin. If this is None, then no local approval is required. If this is set to 0, then all requests (including creating the project) need to be approved. max_credit_limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true title: Maximum credit limit description: The maximum credit limit for any projects created in this class. Any requests beyond this limit are automatically rejected. If this is None, then no maximum limit is set. If this is set to 0, then no projects can be created in this class. allocation_units_mapping: description: The mapping of credits to allocation units, i.e. how many allocation units to award per credit allocated. role_mapping: description: The mapping of role names from the remote portal to role information in this portal for users in projects created in this class. PatchedProposalProjectRoleMappingRequest: type: object properties: call: type: string format: uri proposal_role: type: string minLength: 1 project_role: type: string minLength: 1 nullable: true description: '' PatchedProposalReviewRequest: type: object description: '' properties: summary_score: type: integer maximum: 32767 minimum: 0 summary_public_comment: type: string summary_private_comment: type: string comment_project_title: type: string nullable: true maxLength: 255 comment_project_summary: type: string nullable: true maxLength: 255 comment_project_is_confidential: type: string nullable: true maxLength: 255 comment_project_has_civilian_purpose: type: string nullable: true maxLength: 255 comment_project_description: type: string nullable: true maxLength: 255 comment_project_duration: type: string nullable: true maxLength: 255 comment_project_supporting_documentation: type: string nullable: true maxLength: 255 comment_resource_requests: type: string nullable: true maxLength: 255 comment_team: type: string nullable: true maxLength: 255 required: [] PatchedProtectedCallRequest: type: object description: '' properties: slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string minLength: 1 maxLength: 150 description: type: string fixed_duration_in_days: type: integer nullable: true backend_id: type: string maxLength: 255 external_url: type: string format: uri nullable: true maxLength: 200 reviewer_identity_visible_to_submitters: type: boolean description: Whether proposal applicants can see reviewer identities reviews_visible_to_submitters: type: boolean description: Whether proposal applicants can see review comments and scores created_by: type: string format: uri nullable: true reference_code: type: string minLength: 1 compliance_checklist: type: string format: uuid nullable: true description: Compliance checklist that proposals must complete before submission proposal_slug_template: type: string nullable: true description: 'Template for proposal slugs. Supports: {call_slug}, {round_slug}, {org_slug}, {year}, {month}, {counter}, {counter_padded}. Default: {round_slug}-{counter_padded}' user_email_patterns: description: List of email regex patterns. User must match one. user_affiliations: description: List of allowed affiliations. User must have one. user_identity_sources: description: List of allowed identity sources (identity providers). user_nationalities: description: List of allowed nationality codes (ISO 3166-1 alpha-2). User must have one. user_organization_types: description: List of allowed organization type URNs (SCHAC). User must match one. user_assurance_levels: description: List of required assurance URIs (REFEDS). User must have ALL of these. PatchedProtectedRoundRequest: type: object description: '' properties: start_time: type: string format: date-time cutoff_time: type: string format: date-time review_strategy: $ref: '#/components/schemas/ReviewStrategyEnum' deciding_entity: $ref: '#/components/schemas/DecidingEntityEnum' allocation_time: $ref: '#/components/schemas/AllocationTimeEnum' allocation_date: type: string format: date-time nullable: true minimal_average_scoring: type: string format: decimal pattern: ^-?\d{0,4}(?:\.\d{0,1})?$ nullable: true review_duration_in_days: type: integer minimum_number_of_reviewers: type: integer maximum: 2147483647 minimum: 0 nullable: true PatchedProviderPlanDetailsRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string article_code: type: string maxLength: 30 max_amount: type: integer maximum: 32767 minimum: 1 nullable: true description: Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. archived: type: boolean description: Forbids creation of new resources. unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' backend_id: type: string maxLength: 255 PatchedQuestionAdminRequest: type: object description: '' properties: required: type: boolean description: type: string maxLength: 4096 user_guidance: type: string description: Additional guidance text visible to users when answering and reviewing question_type: allOf: - $ref: '#/components/schemas/QuestionTypeEnum' description: Type of question and expected answer format order: type: integer maximum: 2147483647 minimum: 0 min_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true description: Minimum value allowed for NUMBER, YEAR, and RATING type questions max_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true description: Maximum value allowed for NUMBER, YEAR, and RATING type questions allowed_file_types: description: List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed. allowed_mime_types: description: List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security. max_file_size_mb: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum file size in megabytes. If not set, no size limit is enforced. max_files_count: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced. operator: oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' review_answer_value: nullable: true description: Answer value that trigger review. always_requires_review: type: boolean description: This question always requires review regardless of answer guidance_answer_value: nullable: true description: Answer value that triggers display of user guidance. guidance_operator: description: Operator to use when comparing answer with guidance_answer_value oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' always_show_guidance: type: boolean description: Show user guidance always, regardless of answer. If False, guidance is conditional on answer matching guidance_answer_value with guidance_operator dependency_logic_operator: allOf: - $ref: '#/components/schemas/DependencyLogicOperatorEnum' description: 'Defines how multiple dependencies are evaluated. AND: All dependencies must be satisfied. OR: At least one dependency must be satisfied.' checklist: type: string format: uri PatchedQuestionDependencyRequest: type: object description: '' properties: question: type: string format: uri depends_on_question: type: string format: uri required_answer_value: description: The answer value(s) that make this question visible operator: $ref: '#/components/schemas/ChecklistOperators' PatchedQuestionOptionsAdminRequest: type: object description: '' properties: label: type: string minLength: 1 maxLength: 255 order: type: integer maximum: 2147483647 minimum: 0 PatchedRancherApplicationRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri error_message: type: string error_traceback: type: string backend_id: type: string maxLength: 255 runtime_state: type: string maxLength: 150 template: type: string format: uri rancher_project: type: string format: uri namespace: type: string format: uri namespace_name: type: string writeOnly: true minLength: 1 version: type: string minLength: 1 answers: type: object additionalProperties: {} PatchedRancherCatalogRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 catalog_url: type: string format: uri minLength: 1 maxLength: 200 branch: type: string minLength: 1 maxLength: 255 scope: type: string description: '' PatchedRancherClusterRequest: type: object description: '' properties: name: type: string minLength: 1 pattern: ^[a-z0-9]([-a-z0-9])+[a-z0-9]$ maxLength: 150 description: type: string maxLength: 4096 vm_project: type: string format: uri nullable: true ssh_public_key: type: string format: uri writeOnly: true install_longhorn: type: boolean default: false description: Longhorn is a distributed block storage deployed on top of Kubernetes cluster PatchedRancherHPARequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 workload: type: string format: uri nullable: true min_replicas: type: integer maximum: 32767 minimum: 0 max_replicas: type: integer maximum: 32767 minimum: 0 metrics: {} description: '' PatchedRancherIngressRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri error_message: type: string error_traceback: type: string backend_id: type: string maxLength: 255 runtime_state: type: string maxLength: 150 rancher_project: type: string format: uri namespace: type: string format: uri rules: {} PatchedRancherServiceRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri error_message: type: string error_traceback: type: string backend_id: type: string maxLength: 255 runtime_state: type: string maxLength: 150 namespace: type: string format: uri cluster_ip: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true minLength: 1 selector: nullable: true target_workloads: type: array items: $ref: '#/components/schemas/RancherNestedWorkloadRequest' PatchedRancherWorkloadRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 runtime_state: type: string maxLength: 150 cluster: type: string format: uri nullable: true project: type: string format: uri nullable: true namespace: type: string format: uri nullable: true scale: type: integer maximum: 32767 minimum: 0 description: '' PatchedRemoteAllocationRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 node_limit: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 remote_project_identifier: type: string nullable: true description: The identifier of the project in the remote OpenPortal instance. maxLength: 64 PatchedRemoteSynchronisationRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 maxLength: 200 token: type: string minLength: 1 maxLength: 255 remote_organization_name: type: string minLength: 1 maxLength: 255 local_service_provider: type: string format: uri is_active: type: boolean remotelocalcategory_set: type: array items: $ref: '#/components/schemas/NestedRemoteLocalCategoryRequest' PatchedRequestTypeAdminRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 issue_type_name: type: string minLength: 1 maxLength: 255 is_active: type: boolean description: Whether this request type is available for issue creation. order: type: integer maximum: 2147483647 minimum: 0 description: Display order. First type (lowest order) is the default. PatchedRequestedOfferingRequest: type: object description: '' properties: attributes: {} plan: type: string format: uri nullable: true description: type: string maxLength: 4096 PatchedRequestedResourceRequest: type: object description: '' properties: attributes: {} limits: {} description: type: string maxLength: 4096 requested_offering_uuid: type: string format: uuid writeOnly: true call_resource_template_uuid: type: string format: uuid writeOnly: true PatchedResourceUpdateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, a resource will be scheduled for termination. description: '' PatchedReviewerAffiliationRequest: type: object description: '' properties: organization: type: string format: uuid nullable: true organization_name: type: string minLength: 1 description: Organization name (used when not linked to Waldur org) maxLength: 255 organization_identifier: type: string description: ROR, GRID, or other external identifier maxLength: 100 department: type: string maxLength: 255 position_title: type: string maxLength: 255 start_date: type: string format: date nullable: true end_date: type: string format: date nullable: true description: Leave empty for current affiliation is_primary: type: boolean affiliation_type: $ref: '#/components/schemas/AffiliationTypeEnum' PatchedReviewerBidRequest: type: object description: '' properties: proposal: type: string format: uri bid: allOf: - $ref: '#/components/schemas/BidEnum' description: Reviewer's preference for reviewing this proposal comment: type: string description: Optional comment explaining the bid PatchedReviewerExpertiseRequest: type: object description: '' properties: expertise_keyword: type: string minLength: 1 description: Free-text keyword maxLength: 100 expertise_category: type: string format: uuid nullable: true proficiency_level: $ref: '#/components/schemas/ProficiencyLevelEnum' years_experience: type: integer maximum: 2147483647 minimum: 0 nullable: true last_active_date: type: string format: date nullable: true description: When last worked in this area PatchedReviewerProfileCreateRequest: type: object description: '' properties: orcid_id: type: string nullable: true description: 'ORCID identifier (format: 0000-0000-0000-0000)' maxLength: 19 biography: type: string description: Professional biography / summary alternative_names: description: List of name variants used in publications available_for_reviews: type: boolean description: Whether reviewer is currently accepting review requests PatchedReviewerProfileRequest: type: object description: '' properties: orcid_id: type: string nullable: true description: 'ORCID identifier (format: 0000-0000-0000-0000)' maxLength: 19 biography: type: string description: Professional biography / summary alternative_names: description: List of name variants used in publications available_for_reviews: type: boolean description: Whether reviewer is currently accepting review requests PatchedReviewerPublicationRequest: type: object description: '' properties: title: type: string minLength: 1 maxLength: 500 doi: type: string nullable: true description: Digital Object Identifier maxLength: 100 publication_year: type: integer maximum: 2147483647 minimum: 0 venue: type: string minLength: 1 description: Journal or conference name maxLength: 255 venue_type: $ref: '#/components/schemas/VenueTypeEnum' abstract: type: string coauthors: description: List of co-author names and identifiers external_ids: description: 'External identifiers: {"semantic_scholar": "...", "pubmed": "..."}' is_excluded_from_matching: type: boolean description: User can exclude old papers from expertise matching PatchedRobotAccountRequest: type: object properties: username: type: string maxLength: 32 description: type: string resource: type: string format: uri type: type: string minLength: 1 description: Type of the robot account. maxLength: 5 users: type: array items: type: string format: uri description: Users who have access to this robot account. keys: {} responsible_user: type: string format: uri nullable: true required: [] description: '' PatchedRoleDetailsRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 description_en: type: string nullable: true title: Description [en] maxLength: 4096 description_et: type: string nullable: true title: Description [et] maxLength: 4096 description_lt: type: string nullable: true title: Description [lt] maxLength: 4096 description_lv: type: string nullable: true title: Description [lv] maxLength: 4096 description_ru: type: string nullable: true title: Description [ru] maxLength: 4096 description_it: type: string nullable: true title: Description [it] maxLength: 4096 description_de: type: string nullable: true title: Description [de] maxLength: 4096 description_da: type: string nullable: true title: Description [da] maxLength: 4096 description_sv: type: string nullable: true title: Description [sv] maxLength: 4096 description_es: type: string nullable: true title: Description [es] maxLength: 4096 description_fr: type: string nullable: true title: Description [fr] maxLength: 4096 description_nb: type: string nullable: true title: Description [nb] maxLength: 4096 description_ar: type: string nullable: true title: Description [ar] maxLength: 4096 description_cs: type: string nullable: true title: Description [cs] maxLength: 4096 is_active: type: boolean PatchedRuleRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 user_affiliations: type: array items: type: string minLength: 1 user_email_patterns: type: array items: type: string minLength: 1 customer: type: string format: uri nullable: true use_user_organization_as_customer_name: type: boolean project_role: type: string format: uri nullable: true project_role_name: type: string writeOnly: true nullable: true minLength: 1 plan: type: string format: uri nullable: true plan_attributes: type: object additionalProperties: {} plan_limits: type: object additionalProperties: {} description: '' PatchedScreenshotRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 PatchedSectionRequest: type: object properties: key: type: string minLength: 1 maxLength: 255 title: type: string minLength: 1 maxLength: 255 category: type: string format: uri is_standalone: type: boolean description: Whether section is rendered as a separate tab. description: '' PatchedServiceProviderRequest: type: object description: '' properties: description: type: string maxLength: 4096 enable_notifications: type: boolean image: type: string format: binary nullable: true PatchedSlurmAllocationRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 PatchedSlurmPeriodicUsagePolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. component_limits_set: type: array items: $ref: '#/components/schemas/NestedOfferingComponentLimitRequest' period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 limit_type: allOf: - $ref: '#/components/schemas/LimitTypeEnum' description: SLURM limit type to apply tres_billing_enabled: type: boolean description: Use TRES billing units instead of raw TRES values tres_billing_weights: description: 'TRES billing weights (e.g., {"CPU": 0.015625, "Mem": 0.001953125, "GRES/gpu": 0.25})' carryover_factor: type: integer maximum: 2147483647 minimum: 0 description: Maximum percentage of base allocation that can carry over from unused previous period (0-100) grace_ratio: type: number format: double description: Grace period ratio (0.2 = 20% overconsumption allowed) carryover_enabled: type: boolean description: Enable unused allocation carryover to next period raw_usage_reset: type: boolean description: Reset raw usage at period transitions (PriorityUsageResetPeriod=None) qos_strategy: allOf: - $ref: '#/components/schemas/QosStrategyEnum' description: QoS management strategy PatchedSoftwareCatalogRequest: type: object description: '' properties: name: type: string minLength: 1 description: Catalog name (e.g., EESSI, Spack) maxLength: 100 version: type: string minLength: 1 description: Catalog version (e.g., 2023.06, 0.21.0) maxLength: 50 catalog_type: allOf: - $ref: '#/components/schemas/CatalogTypeEnum' default: binary_runtime description: Type of software catalog source_url: type: string format: uri description: Catalog source URL maxLength: 200 description: type: string metadata: description: Catalog-specific metadata (architecture maps, API endpoints, etc.) auto_update_enabled: type: boolean description: Whether to automatically update this catalog via scheduled tasks update_errors: type: string PatchedSoftwarePackageRequest: type: object description: '' properties: catalog: type: string format: uri name: type: string minLength: 1 maxLength: 200 description: type: string homepage: type: string format: uri nullable: true maxLength: 200 categories: description: Package categories (e.g., ['bio', 'hpc', 'build-tools']) licenses: description: Software licenses (e.g., ['GPL-3.0', 'MIT']) maintainers: description: Package maintainers is_extension: type: boolean description: Whether this package is an extension of another package parent_software: type: string format: uri nullable: true description: Parent package for extensions (e.g., Python package within Python) PatchedTagRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 100 description: type: string PatchedTemplateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string minLength: 1 issue_type: $ref: '#/components/schemas/IssueTypeEnum' description: '' PatchedUserAgreementRequest: type: object properties: content: type: string minLength: 1 agreement_type: $ref: '#/components/schemas/AgreementTypeEnum' language: type: string description: ISO 639-1 language code (e.g., 'en', 'de', 'et'). Leave empty for the default version. maxLength: 10 description: '' PatchedUserInfoRequest: type: object properties: shortname: type: string nullable: true minLength: 4 description: A short, unique name for you. It will be used to form your local username on any systems. Should only contain lower-case letters and digits and must start with a letter. pattern: ^[a-z][a-z0-9]+$ maxLength: 32 user: type: string format: uri description: '' PatchedUserOfferingConsentRequest: type: object description: '' properties: version: type: string maxLength: 50 PatchedUserRequest: type: object description: '' properties: username: type: string minLength: 1 description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 100 job_title: type: string maxLength: 120 phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 description: type: string maxLength: 4096 is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_support: type: boolean title: Support status description: Designates whether the user is a global support user. token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. agree_with_policy: type: boolean writeOnly: true description: User must agree with the policy to register. notifications_enabled: type: boolean description: Designates whether the user is allowed to receive email notifications. preferred_language: type: string maxLength: 10 first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 birth_date: type: string format: date nullable: true image: type: string format: binary nullable: true gender: nullable: true description: ISO 5218 gender code minimum: 0 maximum: 32767 oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) maxLength: 50 place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) maxLength: 2 nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) organization_country: type: string maxLength: 2 organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) maxLength: 255 organization_registry_code: type: string description: Company registration code of the user's organization, if known maxLength: 255 eduperson_assurance: description: REFEDS assurance profile URIs from identity provider is_identity_manager: type: boolean description: Designates whether the user is allowed to manage remote user identities. managed_isds: description: 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. PatchedVmwareVirtualMachineRequest: type: object description: '' properties: description: type: string maxLength: 4096 cores: type: integer maximum: 32767 minimum: 1 description: Number of cores in a VM cores_per_socket: type: integer maximum: 32767 minimum: 1 description: Number of cores per socket in a VM ram: type: integer maximum: 2147483647 minimum: 1024 description: Memory size in MiB PatchedWebHookRequest: type: object properties: is_active: type: boolean event_types: type: array items: $ref: '#/components/schemas/EventTypesEnum' event_groups: type: array items: $ref: '#/components/schemas/EventGroupsEnum' destination_url: type: string format: uri minLength: 1 maxLength: 200 content_type: $ref: '#/components/schemas/WebHookContentTypeEnum' description: '' Payment: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true profile: type: string format: uri date_of_payment: type: string format: date sum: type: string format: decimal pattern: ^-?\d{0,8}(?:\.\d{0,2})?$ proof: type: string format: uri nullable: true invoice: type: string format: uri readOnly: true invoice_uuid: type: string format: uuid readOnly: true invoice_period: type: string nullable: true readOnly: true customer_uuid: type: string format: uuid readOnly: true required: - customer_uuid - date_of_payment - invoice - invoice_period - invoice_uuid - profile - url - uuid description: '' PaymentProfile: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string maxLength: 150 organization_uuid: type: string format: uuid readOnly: true organization: type: string format: uri attributes: $ref: '#/components/schemas/PaymentProfileAttributes' payment_type: $ref: '#/components/schemas/PaymentTypeEnum' payment_type_display: type: string readOnly: true is_active: type: boolean nullable: true default: true required: [] description: '' PaymentProfileAttributes: type: object properties: end_date: type: string agreement_number: type: string contract_sum: type: integer description: '' PaymentProfileAttributesRequest: type: object properties: end_date: type: string minLength: 1 agreement_number: type: string minLength: 1 contract_sum: type: integer description: '' PaymentProfileRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 organization: type: string format: uri attributes: $ref: '#/components/schemas/PaymentProfileAttributesRequest' payment_type: $ref: '#/components/schemas/PaymentTypeEnum' is_active: type: boolean nullable: true default: true required: - name - organization - payment_type description: '' PaymentRequest: type: object properties: profile: type: string format: uri date_of_payment: type: string format: date sum: type: string format: decimal pattern: ^-?\d{0,8}(?:\.\d{0,2})?$ proof: type: string format: binary nullable: true required: - date_of_payment - profile description: '' PaymentTypeEnum: enum: - fixed_price - invoices - payment_gw_monthly type: string description: '' PaymentURLRequest: type: object properties: payment_url: type: string format: uri description: URL for initiating payment via payment gateway. maxLength: 200 description: '' PendingRecord: type: object description: '' properties: uuid: type: string format: uuid resource_uuid: type: string format: uuid resource_name: type: string license_reference: type: string billing_period: type: string format: date consumed_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ last_sync_at: type: string format: date-time nullable: true required: - billing_period - consumed_sell - last_sync_at - license_reference - resource_name - resource_uuid - uuid PeriodBreakdown: type: object description: '' properties: period: type: string count: type: integer consumed_sell: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ finalized_count: type: integer reconciled_count: type: integer required: - consumed_sell - count - finalized_count - period - reconciled_count Permission: type: object properties: user_uuid: type: string format: uuid readOnly: true user_name: type: string readOnly: true user_slug: type: string readOnly: true created: type: string format: date-time readOnly: true expiration_time: type: string format: date-time nullable: true created_by_full_name: type: string readOnly: true created_by_username: type: string readOnly: true role_name: type: string readOnly: true role_description: type: string readOnly: true role_uuid: type: string format: uuid readOnly: true scope_type: type: string nullable: true readOnly: true scope_uuid: type: string format: uuid readOnly: true scope_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true required: [] description: '' PermissionMetadataResponse: type: object description: '' properties: roles: type: object additionalProperties: enum: - CUSTOMER.OWNER - CUSTOMER.SUPPORT - CUSTOMER.MANAGER - PROJECT.ADMIN - PROJECT.MANAGER - PROJECT.MEMBER - OFFERING.MANAGER - CALL.REVIEWER - CALL.MANAGER - PROPOSAL.MEMBER - PROPOSAL.MANAGER type: string description: Map of role keys to role enum values from RoleEnum permissions: type: object additionalProperties: enum: - SERVICE_PROVIDER.REGISTER - OFFERING.CREATE - OFFERING.DELETE - OFFERING.UPDATE_THUMBNAIL - OFFERING.UPDATE - OFFERING.UPDATE_ATTRIBUTES - OFFERING.UPDATE_LOCATION - OFFERING.UPDATE_DESCRIPTION - OFFERING.UPDATE_OPTIONS - OFFERING.UPDATE_INTEGRATION - OFFERING.ADD_ENDPOINT - OFFERING.DELETE_ENDPOINT - OFFERING.UPDATE_COMPONENTS - OFFERING.PAUSE - OFFERING.UNPAUSE - OFFERING.ARCHIVE - OFFERING.DRY_RUN_SCRIPT - OFFERING.MANAGE_CAMPAIGN - OFFERING.MANAGE_USER_GROUP - OFFERING.CREATE_PLAN - OFFERING.UPDATE_PLAN - OFFERING.ARCHIVE_PLAN - OFFERING.CREATE_SCREENSHOT - OFFERING.UPDATE_SCREENSHOT - OFFERING.DELETE_SCREENSHOT - OFFERING.CREATE_USER - OFFERING.UPDATE_USER - OFFERING.DELETE_USER - OFFERING.MANAGE_USER_ROLE - RESOURCE.CREATE_ROBOT_ACCOUNT - RESOURCE.UPDATE_ROBOT_ACCOUNT - RESOURCE.DELETE_ROBOT_ACCOUNT - ORDER.LIST - ORDER.APPROVE_PRIVATE - ORDER.APPROVE - ORDER.REJECT - ORDER.DESTROY - ORDER.CANCEL - RESOURCE.LIST - RESOURCE.UPDATE - RESOURCE.TERMINATE - RESOURCE.LIST_IMPORTABLE - RESOURCE.SET_END_DATE - RESOURCE.SET_USAGE - RESOURCE.SET_PLAN - RESOURCE.SET_LIMITS - RESOURCE.SET_BACKEND_ID - RESOURCE.SUBMIT_REPORT - RESOURCE.SET_BACKEND_METADATA - RESOURCE.SET_STATE - RESOURCE.UPDATE_OPTIONS - RESOURCE.ACCEPT_BOOKING_REQUEST - RESOURCE.REJECT_BOOKING_REQUEST - RESOURCE.MANAGE_USERS - RESOURCE.CONSUMPTION_LIMITATION - OFFERING.MANAGE_BACKEND_RESOURCES - SERVICE_PROVIDER.GET_API_SECRET_CODE - SERVICE_PROVIDER.GENERATE_API_SECRET_CODE - SERVICE_PROVIDER.LIST_CUSTOMERS - SERVICE_PROVIDER.LIST_CUSTOMER_PROJECTS - SERVICE_PROVIDER.LIST_PROJECTS - SERVICE_PROVIDER.LIST_PROJECT_PERMISSIONS - SERVICE_PROVIDER.LIST_KEYS - SERVICE_PROVIDER.LIST_USERS - SERVICE_PROVIDER.LIST_USER_CUSTOMERS - SERVICE_PROVIDER.LIST_SERVICE_ACCOUNTS - SERVICE_PROVIDER.LIST_COURSE_ACCOUNTS - SERVICE_PROVIDER.SET_OFFERINGS_USERNAME - SERVICE_PROVIDER.GET_STATISTICS - SERVICE_PROVIDER.GET_REVENUE - SERVICE_PROVIDER.GET_ROBOT_ACCOUNT_CUSTOMERS - SERVICE_PROVIDER.GET_ROBOT_ACCOUNT_PROJECTS - PROJECT.CREATE_PERMISSION - CUSTOMER.CREATE_PERMISSION - OFFERING.CREATE_PERMISSION - CALL.CREATE_PERMISSION - PROPOSAL.MANAGE - PROPOSAL.MANAGE_REVIEW - PROJECT.UPDATE_PERMISSION - CUSTOMER.UPDATE_PERMISSION - OFFERING.UPDATE_PERMISSION - CALL.UPDATE_PERMISSION - PROPOSAL.UPDATE_PERMISSION - PROJECT.DELETE_PERMISSION - CUSTOMER.DELETE_PERMISSION - OFFERING.DELETE_PERMISSION - CALL.DELETE_PERMISSION - PROPOSAL.DELETE_PERMISSION - LEXIS_LINK.CREATE - LEXIS_LINK.DELETE - PROJECT.LIST - PROJECT.CREATE - PROJECT.DELETE - PROJECT.UPDATE - PROJECT.UPDATE_METADATA - PROJECT.REVIEW_MEMBERSHIP - CUSTOMER.UPDATE - CUSTOMER.CONTACT_UPDATE - CUSTOMER.LIST_USERS - OFFERING.ACCEPT_CALL_REQUEST - CALL.APPROVE_AND_REJECT_PROPOSALS - CALL.CLOSE_ROUNDS - ACCESS_SUBNET.CREATE - ACCESS_SUBNET.UPDATE - ACCESS_SUBNET.DELETE - OFFERINGUSER.UPDATE_RESTRICTION - INVITATION.LIST - CUSTOMER.LIST_PERMISSION_REVIEWS - CALL.LIST - CALL.CREATE - CALL.UPDATE - ROUND.LIST - PROPOSAL.LIST - SERVICE_ACCOUNT.MANAGE - PROJECT.COURSE_ACCOUNT_MANAGE - SERVICE_PROVIDER.OPENSTACK_IMAGE_MANAGEMENT - OPENSTACK_INSTANCE.CONSOLE_ACCESS - OPENSTACK_INSTANCE.MANAGE_POWER - OPENSTACK_INSTANCE.MANAGE type: string description: Map of permission keys to permission enum values from PermissionEnum permission_map: type: object additionalProperties: enum: - SERVICE_PROVIDER.REGISTER - OFFERING.CREATE - OFFERING.DELETE - OFFERING.UPDATE_THUMBNAIL - OFFERING.UPDATE - OFFERING.UPDATE_ATTRIBUTES - OFFERING.UPDATE_LOCATION - OFFERING.UPDATE_DESCRIPTION - OFFERING.UPDATE_OPTIONS - OFFERING.UPDATE_INTEGRATION - OFFERING.ADD_ENDPOINT - OFFERING.DELETE_ENDPOINT - OFFERING.UPDATE_COMPONENTS - OFFERING.PAUSE - OFFERING.UNPAUSE - OFFERING.ARCHIVE - OFFERING.DRY_RUN_SCRIPT - OFFERING.MANAGE_CAMPAIGN - OFFERING.MANAGE_USER_GROUP - OFFERING.CREATE_PLAN - OFFERING.UPDATE_PLAN - OFFERING.ARCHIVE_PLAN - OFFERING.CREATE_SCREENSHOT - OFFERING.UPDATE_SCREENSHOT - OFFERING.DELETE_SCREENSHOT - OFFERING.CREATE_USER - OFFERING.UPDATE_USER - OFFERING.DELETE_USER - OFFERING.MANAGE_USER_ROLE - RESOURCE.CREATE_ROBOT_ACCOUNT - RESOURCE.UPDATE_ROBOT_ACCOUNT - RESOURCE.DELETE_ROBOT_ACCOUNT - ORDER.LIST - ORDER.APPROVE_PRIVATE - ORDER.APPROVE - ORDER.REJECT - ORDER.DESTROY - ORDER.CANCEL - RESOURCE.LIST - RESOURCE.UPDATE - RESOURCE.TERMINATE - RESOURCE.LIST_IMPORTABLE - RESOURCE.SET_END_DATE - RESOURCE.SET_USAGE - RESOURCE.SET_PLAN - RESOURCE.SET_LIMITS - RESOURCE.SET_BACKEND_ID - RESOURCE.SUBMIT_REPORT - RESOURCE.SET_BACKEND_METADATA - RESOURCE.SET_STATE - RESOURCE.UPDATE_OPTIONS - RESOURCE.ACCEPT_BOOKING_REQUEST - RESOURCE.REJECT_BOOKING_REQUEST - RESOURCE.MANAGE_USERS - RESOURCE.CONSUMPTION_LIMITATION - OFFERING.MANAGE_BACKEND_RESOURCES - SERVICE_PROVIDER.GET_API_SECRET_CODE - SERVICE_PROVIDER.GENERATE_API_SECRET_CODE - SERVICE_PROVIDER.LIST_CUSTOMERS - SERVICE_PROVIDER.LIST_CUSTOMER_PROJECTS - SERVICE_PROVIDER.LIST_PROJECTS - SERVICE_PROVIDER.LIST_PROJECT_PERMISSIONS - SERVICE_PROVIDER.LIST_KEYS - SERVICE_PROVIDER.LIST_USERS - SERVICE_PROVIDER.LIST_USER_CUSTOMERS - SERVICE_PROVIDER.LIST_SERVICE_ACCOUNTS - SERVICE_PROVIDER.LIST_COURSE_ACCOUNTS - SERVICE_PROVIDER.SET_OFFERINGS_USERNAME - SERVICE_PROVIDER.GET_STATISTICS - SERVICE_PROVIDER.GET_REVENUE - SERVICE_PROVIDER.GET_ROBOT_ACCOUNT_CUSTOMERS - SERVICE_PROVIDER.GET_ROBOT_ACCOUNT_PROJECTS - PROJECT.CREATE_PERMISSION - CUSTOMER.CREATE_PERMISSION - OFFERING.CREATE_PERMISSION - CALL.CREATE_PERMISSION - PROPOSAL.MANAGE - PROPOSAL.MANAGE_REVIEW - PROJECT.UPDATE_PERMISSION - CUSTOMER.UPDATE_PERMISSION - OFFERING.UPDATE_PERMISSION - CALL.UPDATE_PERMISSION - PROPOSAL.UPDATE_PERMISSION - PROJECT.DELETE_PERMISSION - CUSTOMER.DELETE_PERMISSION - OFFERING.DELETE_PERMISSION - CALL.DELETE_PERMISSION - PROPOSAL.DELETE_PERMISSION - LEXIS_LINK.CREATE - LEXIS_LINK.DELETE - PROJECT.LIST - PROJECT.CREATE - PROJECT.DELETE - PROJECT.UPDATE - PROJECT.UPDATE_METADATA - PROJECT.REVIEW_MEMBERSHIP - CUSTOMER.UPDATE - CUSTOMER.CONTACT_UPDATE - CUSTOMER.LIST_USERS - OFFERING.ACCEPT_CALL_REQUEST - CALL.APPROVE_AND_REJECT_PROPOSALS - CALL.CLOSE_ROUNDS - ACCESS_SUBNET.CREATE - ACCESS_SUBNET.UPDATE - ACCESS_SUBNET.DELETE - OFFERINGUSER.UPDATE_RESTRICTION - INVITATION.LIST - CUSTOMER.LIST_PERMISSION_REVIEWS - CALL.LIST - CALL.CREATE - CALL.UPDATE - ROUND.LIST - PROPOSAL.LIST - SERVICE_ACCOUNT.MANAGE - PROJECT.COURSE_ACCOUNT_MANAGE - SERVICE_PROVIDER.OPENSTACK_IMAGE_MANAGEMENT - OPENSTACK_INSTANCE.CONSOLE_ACCESS - OPENSTACK_INSTANCE.MANAGE_POWER - OPENSTACK_INSTANCE.MANAGE type: string description: Map of resource types to create permission enums permission_descriptions: type: array items: type: object additionalProperties: {} description: Grouped permission descriptions for UI required: - permission_descriptions - permission_map - permissions - roles PermissionRequest: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true invitation: type: string format: uri state: type: string readOnly: true created: type: string format: date-time readOnly: true created_by_full_name: type: string readOnly: true created_by_username: type: string readOnly: true created_by_email: type: string format: email readOnly: true reviewed_by_full_name: type: string readOnly: true reviewed_by_username: type: string readOnly: true reviewed_at: type: string format: date-time readOnly: true nullable: true description: Timestamp when the review was completed review_comment: type: string nullable: true description: Optional comment provided during review scope_uuid: type: string format: uuid readOnly: true scope_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true role_name: type: string readOnly: true role_description: type: string readOnly: true project_name_template: type: string readOnly: true required: - created - created_by_email - created_by_full_name - created_by_username - customer_name - customer_uuid - invitation - project_name_template - reviewed_at - reviewed_by_full_name - reviewed_by_username - role_description - role_name - scope_name - scope_uuid - state - url - uuid description: '' PersonIdentifierFieldsResponse: type: object description: '' properties: validation_method: type: string description: The validation method identifier person_identifier_fields: type: object additionalProperties: {} description: 'Field specification for person identification. For simple identifiers: {type: ''string'', field: ''civil_number'', ...}. For composite identifiers: {type: ''object'', fields: {...}}' required: - person_identifier_fields - validation_method PlanComponent: type: object properties: offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true plan_uuid: type: string format: uuid readOnly: true plan_name: type: string readOnly: true plan_unit: allOf: - $ref: '#/components/schemas/BillingUnit' readOnly: true component_name: type: string description: Display name for the measured unit, for example, Floating IP. readOnly: true measured_unit: type: string description: Unit of measurement, for example, GB. readOnly: true billing_type: allOf: - $ref: '#/components/schemas/BillingTypeEnum' readOnly: true amount: type: integer maximum: 2147483647 minimum: 0 price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ title: Price per unit per billing period. future_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ nullable: true title: Price per unit for future month. discount_threshold: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Minimum amount to be eligible for discount. discount_rate: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Discount rate in percentage. required: - billing_type - component_name - measured_unit - offering_name - offering_uuid - plan_name - plan_unit - plan_uuid description: '' PlanUsageResponse: type: object properties: plan_uuid: type: string format: uuid readOnly: true description: UUID of the plan plan_name: type: string readOnly: true description: Name of the plan limit: type: integer readOnly: true description: Usage limit usage: type: integer readOnly: true description: Current usage count remaining: type: integer readOnly: true description: Remaining usage offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true customer_provider_uuid: type: string format: uuid readOnly: true customer_provider_name: type: string readOnly: true required: - customer_provider_name - customer_provider_uuid - limit - offering_name - offering_uuid - plan_name - plan_uuid - remaining - usage description: '' PluginComponent: type: object properties: type: type: string description: Type identifier of the component name: type: string description: Display name of the component measured_unit: type: string description: Unit of measurement for the component billing_type: allOf: - $ref: '#/components/schemas/BillingTypeEnum' description: Billing type for the component required: - billing_type - measured_unit - name - type description: '' PluginOfferingType: type: object properties: offering_type: type: string components: type: array items: $ref: '#/components/schemas/PluginComponent' available_limits: type: array items: type: string required: - available_limits - components - offering_type description: '' PolicyEnum: enum: - affinity - anti-affinity - soft-affinity - soft-anti-affinity type: string description: '' PolicyPeriodEnum: enum: - 1 - 2 - 3 - 4 type: integer description: '' PolicyTypeEnum: enum: - access_as_shared - access_as_external type: string description: '' PreviewServiceAttributesRequestRequest: type: object description: '' properties: auth_url: type: string format: uri minLength: 1 description: Keystone auth URL (e.g., https://cloud.example.com:5000/v3) username: type: string minLength: 1 password: type: string writeOnly: true minLength: 1 user_domain_name: type: string minLength: 1 default: Default description: Keystone user domain name project_domain_name: type: string minLength: 1 default: Default description: Keystone project domain name project_name: type: string minLength: 1 default: admin description: Keystone project (tenant) name verify_ssl: type: boolean default: false certificate: type: string writeOnly: true description: PEM-encoded CA certificate for SSL verification external_network_id: type: string minLength: 1 default: '' description: Selected external network ID instance_availability_zone: type: string minLength: 1 default: '' description: Selected instance availability zone name volume_availability_zone: type: string minLength: 1 default: '' description: Selected volume availability zone name required: - auth_url - password - username PreviewSettingsRequestRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Arrow API base URL api_key: type: string minLength: 1 description: Arrow API Key export_type_reference: type: string classification_filter: type: string minLength: 1 default: IAAS sync_enabled: type: boolean default: false required: - api_key - api_url PreviewSettingsResponse: type: object description: '' properties: api_url: type: string format: uri partner_name: type: string partner_reference: type: string export_type_reference: type: string classification_filter: type: string sync_enabled: type: boolean required: - api_url - classification_filter - export_type_reference - partner_name - partner_reference - sync_enabled PricesUpdateRequest: type: object properties: prices: type: object additionalProperties: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ required: - prices description: '' Priority: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 icon_url: type: string format: uri maxLength: 500 required: - name - url - uuid ProficiencyLevelEnum: enum: - expert - familiar - basic type: string description: '' ProfileCompleteness: type: object description: '' properties: is_complete: type: boolean description: Whether all mandatory profile fields are filled. missing_fields: type: array items: type: string description: List of mandatory fields that are missing. mandatory_fields: type: array items: type: string description: List of all mandatory fields. enforcement_enabled: type: boolean description: Whether enforcement of mandatory attributes is enabled. required: - enforcement_enabled - is_complete - mandatory_fields - missing_fields Project: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 500 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ customer: type: string format: uri title: Organization customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_slug: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true description: type: string description: Project description (HTML content will be sanitized) customer_display_billing_info_in_projects: type: boolean readOnly: true created: type: string format: date-time readOnly: true type: type: string format: uri nullable: true title: Project type type_name: type: string readOnly: true nullable: true type_uuid: type: string format: uuid readOnly: true nullable: true backend_id: type: string maxLength: 255 start_date: type: string format: date nullable: true description: Project start date. Cannot be edited after the start date has arrived. end_date: type: string format: date nullable: true description: Project end date. Setting this field requires DELETE_PROJECT permission. end_date_requested_by: type: string format: uri readOnly: true nullable: true oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' oecd_fos_2007_label: type: string readOnly: true description: Human-readable label for the OECD FOS 2007 classification code is_industry: type: boolean image: type: string format: uri nullable: true resources_count: type: integer readOnly: true description: Number of active resources in this project max_service_accounts: type: integer maximum: 32767 minimum: 0 readOnly: true nullable: true description: Maximum number of service accounts allowed kind: allOf: - $ref: '#/components/schemas/KindEnum' title: Project type is_removed: type: boolean readOnly: true termination_metadata: readOnly: true nullable: true description: Metadata about project termination (read-only) staff_notes: type: string description: Internal notes visible only to staff and support users (HTML content will be sanitized) grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated. Overrides customer-level setting. user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). project_credit: type: number format: double nullable: true readOnly: true marketplace_resource_count: type: object additionalProperties: type: integer readOnly: true billing_price_estimate: allOf: - $ref: '#/components/schemas/NestedPriceEstimate' readOnly: true required: [] ProjectAnswer: type: object description: '' properties: project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true completion_uuid: type: string nullable: true description: Get completion UUID. readOnly: true completion_percentage: type: number format: double description: Get completion percentage. readOnly: true is_completed: type: boolean description: Get completion status. readOnly: true requires_review: type: boolean description: Get review requirement status. readOnly: true answers_count: type: integer description: Get count of answers. readOnly: true unanswered_required_count: type: integer description: Get count of unanswered required questions. readOnly: true required: - answers_count - completion_percentage - completion_uuid - is_completed - project_name - project_uuid - requires_review - unanswered_required_count ProjectAttachRequest: type: object properties: project_uuid: type: string format: uuid description: UUID of the project to attach to this managed project required: - project_uuid description: '' ProjectClassificationSummary: type: object description: '' properties: total_projects: type: integer description: Total number of projects academic_projects: type: integer description: Number of academic projects (industry_flag=False) industry_projects: type: integer description: Number of industry projects (industry_flag=True) required: - academic_projects - industry_projects - total_projects ProjectCredit: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true value: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true project_slug: type: string readOnly: true customer_name: type: string readOnly: true customer_slug: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_credit: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ readOnly: true allocated_customer_credit: type: number format: double readOnly: true consumption_last_month: type: number format: double readOnly: true offerings: type: array items: $ref: '#/components/schemas/NestedPublicOffering' readOnly: true end_date: type: string format: date nullable: true expected_consumption: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ minimal_consumption: type: number format: double readOnly: true minimal_consumption_logic: $ref: '#/components/schemas/MinimalConsumptionLogicEnum' grace_coefficient: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,0})?$ apply_as_minimal_consumption: type: boolean mark_unused_credit_as_spent_on_project_termination: type: boolean required: - allocated_customer_credit - consumption_last_month - customer_credit - customer_name - customer_slug - customer_uuid - minimal_consumption - offerings - project - project_name - project_slug - project_uuid - url - uuid description: '' ProjectCreditRequest: type: object properties: value: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ project: type: string format: uri end_date: type: string format: date nullable: true expected_consumption: type: string format: decimal pattern: ^-?\d{0,11}(?:\.\d{0,5})?$ minimal_consumption_logic: $ref: '#/components/schemas/MinimalConsumptionLogicEnum' grace_coefficient: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,0})?$ apply_as_minimal_consumption: type: boolean mark_unused_credit_as_spent_on_project_termination: type: boolean required: - project description: '' ProjectDetail: type: object description: '' properties: project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true completion_uuid: type: string format: uuid readOnly: true nullable: true completion_percentage: type: number format: double readOnly: true is_completed: type: boolean readOnly: true requires_review: type: boolean readOnly: true answers: type: array items: {} readOnly: true unanswered_required_questions: type: array items: {} readOnly: true required: - answers - completion_percentage - completion_uuid - is_completed - project_name - project_uuid - requires_review - unanswered_required_questions ProjectDetailsResponse: type: object description: '' properties: checklist: allOf: - $ref: '#/components/schemas/ChecklistInfo' readOnly: true total_projects: type: integer readOnly: true projects_with_completions: type: integer readOnly: true fully_completed_projects: type: integer readOnly: true projects_requiring_review: type: integer readOnly: true project_details: type: array items: $ref: '#/components/schemas/ProjectDetail' readOnly: true required: - checklist - fully_completed_projects - project_details - projects_requiring_review - projects_with_completions - total_projects ProjectDigestConfig: type: object properties: uuid: type: string format: uuid readOnly: true is_enabled: type: boolean frequency: $ref: '#/components/schemas/FrequencyEnum' enabled_sections: type: array items: type: string day_of_week: type: integer maximum: 6 minimum: 0 description: 'For weekly/biweekly: 0=Sunday..6=Saturday' day_of_month: type: integer maximum: 28 minimum: 1 description: 'For monthly: day of month (1-28)' last_sent_at: type: string format: date-time readOnly: true nullable: true available_sections: type: array items: type: object additionalProperties: type: string readOnly: true required: - available_sections - last_sent_at - uuid description: '' ProjectDigestConfigRequest: type: object properties: is_enabled: type: boolean frequency: $ref: '#/components/schemas/FrequencyEnum' enabled_sections: type: array items: type: string minLength: 1 day_of_week: type: integer maximum: 6 minimum: 0 description: 'For weekly/biweekly: 0=Sunday..6=Saturday' day_of_month: type: integer maximum: 28 minimum: 1 description: 'For monthly: day of month (1-28)' description: '' ProjectDigestPreviewRequest: type: object properties: project_uuid: type: string format: uuid required: - project_uuid description: '' ProjectDigestPreviewResponse: type: object properties: subject: type: string html_body: type: string text_body: type: string required: - html_body - subject - text_body description: '' ProjectEstimatedCostPolicy: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true scope: type: string format: uri scope_name: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true actions: type: string maxLength: 255 created: type: string format: date-time readOnly: true created_by_full_name: type: string readOnly: true created_by_username: type: string readOnly: true has_fired: type: boolean readOnly: true fired_datetime: type: string format: date-time readOnly: true options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 period_name: type: string readOnly: true project_credit: type: number format: double nullable: true readOnly: true customer_credit: type: number format: double nullable: true readOnly: true billing_price_estimate: allOf: - $ref: '#/components/schemas/NestedPriceEstimate' readOnly: true required: - actions - billing_price_estimate - created - created_by_full_name - created_by_username - customer_credit - fired_datetime - has_fired - limit_cost - period_name - project_credit - scope - scope_name - scope_uuid - url - uuid ProjectEstimatedCostPolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. limit_cost: type: integer maximum: 2147483647 minimum: -2147483648 period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 required: - actions - limit_cost - scope ProjectHyperlinkRequest: type: object properties: url: type: string format: uri required: - url description: '' ProjectInfo: type: object properties: project: type: string format: uri shortname: type: string nullable: true description: A short, unique name for the project. It will be used to form the local username of any users in the project on any systems. Should only contain lower-case letters and digits and must start with a letter. pattern: ^[a-z0-9\-_]+$ maxLength: 30 minLength: 3 allowed_destinations: type: string nullable: true description: A comma-separated list of allowable destinations of instances that can be attached to this project. For example, a project may only allow 'brics.aip1.*', meaning that only instances that start with 'brics.aip1.' can be attached to this project. maxLength: 1024 required: - project description: '' ProjectInfoRequest: type: object properties: project: type: string format: uri shortname: type: string nullable: true minLength: 3 description: A short, unique name for the project. It will be used to form the local username of any users in the project on any systems. Should only contain lower-case letters and digits and must start with a letter. pattern: ^[a-z0-9\-_]+$ maxLength: 30 allowed_destinations: type: string nullable: true description: A comma-separated list of allowable destinations of instances that can be attached to this project. For example, a project may only allow 'brics.aip1.*', meaning that only instances that start with 'brics.aip1.' can be attached to this project. maxLength: 1024 required: - project description: '' ProjectPermissionLog: type: object description: '' properties: created: type: string format: date-time readOnly: true expiration_time: type: string format: date-time nullable: true created_by: type: string format: uri readOnly: true nullable: true created_by_full_name: type: string readOnly: true nullable: true created_by_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true nullable: true project: type: string format: uri readOnly: true project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true project_created: type: string format: date-time readOnly: true project_end_date: type: string format: date-time readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true role: type: string readOnly: true role_name: type: string readOnly: true user: type: string format: uri user_full_name: type: string readOnly: true user_native_name: type: string readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_uuid: type: string format: uuid readOnly: true user_email: type: string format: email title: Email address readOnly: true required: [] ProjectPermissionReview: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true reviewer_full_name: type: string readOnly: true nullable: true reviewer_uuid: type: string format: uuid readOnly: true nullable: true is_pending: type: boolean readOnly: true created: type: string format: date-time readOnly: true closed: type: string format: date-time readOnly: true nullable: true project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true required: - closed - created - is_pending - project_name - project_uuid - reviewer_full_name - reviewer_uuid - url - uuid ProjectQuotas: type: object properties: project_name: type: string readOnly: true customer_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true value: type: integer readOnly: true required: - customer_abbreviation - customer_name - project_name - value description: '' ProjectRecoveryRequest: type: object properties: restore_team_members: type: boolean default: false description: Whether to automatically restore team members who had access before project deletion (staff only) send_invitations_to_previous_members: type: boolean default: false description: Whether to send invitations to users who had access before project deletion end_date: type: string format: date nullable: true description: End date for the recovered project description: '' ProjectRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 500 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ customer: type: string format: uri title: Organization description: type: string description: Project description (HTML content will be sanitized) type: type: string format: uri nullable: true title: Project type backend_id: type: string maxLength: 255 start_date: type: string format: date nullable: true description: Project start date. Cannot be edited after the start date has arrived. end_date: type: string format: date nullable: true description: Project end date. Setting this field requires DELETE_PROJECT permission. oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' is_industry: type: boolean image: type: string format: binary nullable: true kind: allOf: - $ref: '#/components/schemas/KindEnum' title: Project type staff_notes: type: string description: Internal notes visible only to staff and support users (HTML content will be sanitized) grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated. Overrides customer-level setting. user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). required: - customer - name ProjectServiceAccount: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true username: type: string maxLength: 32 description: type: string error_message: type: string readOnly: true error_traceback: type: string state: allOf: - $ref: '#/components/schemas/ServiceAccountState' readOnly: true token: type: string nullable: true readOnly: true email: type: string format: email maxLength: 320 expires_at: type: string nullable: true readOnly: true preferred_identifier: type: string maxLength: 32 project: type: string format: uuid project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true required: - created - customer_abbreviation - customer_name - customer_uuid - error_message - expires_at - modified - project - project_name - project_uuid - state - token - url - uuid description: '' ProjectServiceAccountRequest: type: object properties: username: type: string maxLength: 32 description: type: string error_traceback: type: string email: type: string format: email minLength: 1 maxLength: 320 preferred_identifier: type: string maxLength: 32 project: type: string format: uuid required: - project description: '' ProjectTemplate: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 128 offering: type: string nullable: true description: The offering for which this template applies. maxLength: 256 provider: type: string format: uri provider_data: allOf: - $ref: '#/components/schemas/Customer' readOnly: true portal: type: string maxLength: 32 key: type: string nullable: true description: The key that is used to authenticate requests for this class. maxLength: 256 customer: type: string format: uri customer_data: allOf: - $ref: '#/components/schemas/Customer' readOnly: true shortname: type: string nullable: true maxLength: 30 offerings: type: array items: type: string format: uri offerings_data: type: array items: $ref: '#/components/schemas/ProviderOfferingDetails' readOnly: true approval_limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true description: The credit limit beyond which requests need to be approved by a local admin. If this is None, then no local approval is required. If this is set to 0, then all requests (including creating the project) need to be approved. max_credit_limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true title: Maximum credit limit description: The maximum credit limit for any projects created in this class. Any requests beyond this limit are automatically rejected. If this is None, then no maximum limit is set. If this is set to 0, then no projects can be created in this class. allocation_units_mapping: description: The mapping of credits to allocation units, i.e. how many allocation units to award per credit allocated. role_mapping: description: The mapping of role names from the remote portal to role information in this portal for users in projects created in this class. role_mapping_data: type: object additionalProperties: type: object additionalProperties: type: string description: Serialize the role mapping dictionary returned by get_role_mapping() readOnly: true required: - customer - customer_data - name - offering - offerings - offerings_data - portal - provider - provider_data - role_mapping_data - uuid ProjectTemplateRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 128 offering: type: string nullable: true description: The offering for which this template applies. maxLength: 256 provider: type: string format: uri portal: type: string minLength: 1 maxLength: 32 key: type: string nullable: true description: The key that is used to authenticate requests for this class. maxLength: 256 customer: type: string format: uri shortname: type: string nullable: true maxLength: 30 offerings: type: array items: type: string format: uri approval_limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true description: The credit limit beyond which requests need to be approved by a local admin. If this is None, then no local approval is required. If this is set to 0, then all requests (including creating the project) need to be approved. max_credit_limit: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ nullable: true title: Maximum credit limit description: The maximum credit limit for any projects created in this class. Any requests beyond this limit are automatically rejected. If this is None, then no maximum limit is set. If this is set to 0, then no projects can be created in this class. allocation_units_mapping: description: The mapping of credits to allocation units, i.e. how many allocation units to award per credit allocated. role_mapping: description: The mapping of role names from the remote portal to role information in this portal for users in projects created in this class. required: - customer - name - offering - offerings - portal - provider ProjectType: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 required: - name - url - uuid description: '' ProjectUser: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 full_name: type: string readOnly: true email: type: string format: email title: Email address maxLength: 320 role: type: string readOnly: true expiration_time: type: string format: date-time nullable: true readOnly: true offering_user_username: type: string nullable: true readOnly: true offering_user_state: nullable: true readOnly: true oneOf: - $ref: '#/components/schemas/OfferingUserState' - $ref: '#/components/schemas/NullEnum' required: - expiration_time - full_name - offering_user_state - offering_user_username - role - url - username - uuid description: '' ProjectsLimitsGroupedByIndustryFlag: type: object properties: limits: type: object additionalProperties: type: object additionalProperties: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Nested dictionary of resource limits by category and component type required: - limits description: '' ProjectsLimitsGroupedByOecd: type: object properties: limits: type: object additionalProperties: type: object additionalProperties: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Nested dictionary of resource limits by category and component type required: - limits description: '' ProjectsUsagesGroupedByIndustryFlag: type: object properties: usages: type: object additionalProperties: type: object additionalProperties: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Nested dictionary of usage values by category and component type required: - usages description: '' ProjectsUsagesGroupedByOecd: type: object properties: usages: type: object additionalProperties: type: object additionalProperties: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Nested dictionary of usage values by category and component type required: - usages description: '' Proposal: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true slug: type: string readOnly: true maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string maxLength: 150 description: type: string project_name: type: string readOnly: true project_summary: type: string project_is_confidential: type: boolean project_has_civilian_purpose: type: boolean supporting_documentation: type: array items: $ref: '#/components/schemas/ProposalDocumentation' readOnly: true state: allOf: - $ref: '#/components/schemas/ProposalStates' readOnly: true approved_by: type: string format: uri readOnly: true nullable: true created_by: type: string format: uri readOnly: true nullable: true created_by_name: type: string readOnly: true created_by_uuid: type: string format: uuid readOnly: true duration_in_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Duration in days after provisioning of resources. project: type: string format: uri readOnly: true nullable: true round: allOf: - $ref: '#/components/schemas/NestedRound' readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true call_managing_organisation_uuid: type: string format: uuid readOnly: true oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' oecd_fos_2007_label: type: string readOnly: true allocation_comment: type: string readOnly: true nullable: true created: type: string format: date-time readOnly: true compliance_status: type: object additionalProperties: {} nullable: true readOnly: true can_submit: type: object additionalProperties: {} readOnly: true required: - allocation_comment - approved_by - call_managing_organisation_uuid - call_name - call_uuid - can_submit - compliance_status - created - created_by - created_by_name - created_by_uuid - name - oecd_fos_2007_label - project - project_name - round - slug - state - supporting_documentation - url - uuid ProposalApproveRequest: type: object properties: allocation_comment: type: string minLength: 1 description: '' ProposalChecklistAnswerSubmitResponse: type: object description: '' properties: detail: type: string completion: $ref: '#/components/schemas/ChecklistCompletionReviewer' required: - completion - detail ProposalDetachDocumentsRequest: type: object properties: documents: type: array items: type: string format: uuid required: - documents description: '' ProposalDocumentation: type: object properties: uuid: type: string format: uuid readOnly: true file: type: string format: uri nullable: true description: Upload supporting documentation in PDF format. file_name: type: string readOnly: true file_size: type: integer readOnly: true created: type: string format: date-time readOnly: true required: - created - file_name - file_size - uuid description: '' ProposalDocumentationRequest: type: object properties: file: type: string format: binary nullable: true description: Upload supporting documentation in PDF format. description: '' ProposalProjectRoleMapping: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true call: type: string format: uri call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true proposal_role: type: string project_role: type: string nullable: true required: - call - call_name - call_uuid - proposal_role - url - uuid description: '' ProposalProjectRoleMappingRequest: type: object properties: call: type: string format: uri proposal_role: type: string minLength: 1 project_role: type: string minLength: 1 nullable: true required: - call - proposal_role description: '' ProposalRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string project_summary: type: string project_is_confidential: type: boolean project_has_civilian_purpose: type: boolean duration_in_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Duration in days after provisioning of resources. round_uuid: type: string format: uuid writeOnly: true oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' required: - name - round_uuid ProposalReview: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true proposal: type: string format: uri proposal_name: type: string readOnly: true proposal_uuid: type: string format: uuid readOnly: true proposal_slug: type: string readOnly: true reviewer: type: string format: uri reviewer_full_name: type: string readOnly: true reviewer_uuid: type: string format: uuid readOnly: true anonymous_reviewer_name: type: string nullable: true description: |- Generate an anonymous reviewer identifier like 'Reviewer 1', 'Reviewer 2'. Returns None if the review is not associated with a proposal. readOnly: true state: allOf: - $ref: '#/components/schemas/ProposalReviewStateEnum' readOnly: true review_end_date: type: string format: date-time readOnly: true summary_score: type: integer maximum: 32767 minimum: 0 summary_public_comment: type: string summary_private_comment: type: string round_uuid: type: string format: uuid readOnly: true round_name: type: string readOnly: true round_slug: type: string readOnly: true round_cutoff_time: type: string format: date-time readOnly: true round_start_time: type: string format: date-time readOnly: true call_name: type: string readOnly: true call_uuid: type: string format: uuid readOnly: true call_slug: type: string readOnly: true call_managing_organisation_uuid: type: string format: uuid readOnly: true comment_project_title: type: string nullable: true maxLength: 255 comment_project_summary: type: string nullable: true maxLength: 255 comment_project_is_confidential: type: string nullable: true maxLength: 255 comment_project_has_civilian_purpose: type: string nullable: true maxLength: 255 comment_project_description: type: string nullable: true maxLength: 255 comment_project_duration: type: string nullable: true maxLength: 255 comment_project_supporting_documentation: type: string nullable: true maxLength: 255 comment_resource_requests: type: string nullable: true maxLength: 255 comment_team: type: string nullable: true maxLength: 255 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - call_managing_organisation_uuid - call_name - call_slug - call_uuid - created - modified - proposal - proposal_name - proposal_slug - proposal_uuid - review_end_date - round_cutoff_time - round_name - round_slug - round_start_time - round_uuid - state - url - uuid ProposalReviewRequest: type: object description: '' properties: proposal: type: string format: uri reviewer: type: string format: uri summary_score: type: integer maximum: 32767 minimum: 0 summary_public_comment: type: string summary_private_comment: type: string comment_project_title: type: string nullable: true maxLength: 255 comment_project_summary: type: string nullable: true maxLength: 255 comment_project_is_confidential: type: string nullable: true maxLength: 255 comment_project_has_civilian_purpose: type: string nullable: true maxLength: 255 comment_project_description: type: string nullable: true maxLength: 255 comment_project_duration: type: string nullable: true maxLength: 255 comment_project_supporting_documentation: type: string nullable: true maxLength: 255 comment_resource_requests: type: string nullable: true maxLength: 255 comment_team: type: string nullable: true maxLength: 255 required: - proposal ProposalReviewStateEnum: enum: - in_review - submitted - rejected type: string description: '' ProposalStates: enum: - draft - submitted - in_review - accepted - rejected - canceled type: string description: '' ProposalUpdateProjectDetailsRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 project_summary: type: string project_is_confidential: type: boolean project_has_civilian_purpose: type: boolean duration_in_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Duration in days after provisioning of resources. oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' required: - name description: '' ProposedAssignment: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true reviewer: type: string format: uri readOnly: true reviewer_uuid: type: string format: uuid readOnly: true reviewer_name: type: string readOnly: true proposal: type: string format: uri readOnly: true proposal_uuid: type: string format: uuid readOnly: true proposal_name: type: string readOnly: true affinity_score: type: number format: double readOnly: true algorithm_used: allOf: - $ref: '#/components/schemas/MatchingAlgorithm' readOnly: true rank: type: integer readOnly: true description: Assignment rank (1 = best match) is_deployed: type: boolean readOnly: true deployed_at: type: string format: date-time readOnly: true nullable: true deployed_by: type: string format: uri readOnly: true nullable: true deployed_by_name: type: string readOnly: true created: type: string format: date-time readOnly: true required: - affinity_score - algorithm_used - call - created - deployed_at - deployed_by - deployed_by_name - is_deployed - proposal - proposal_name - proposal_uuid - rank - reviewer - reviewer_name - reviewer_uuid - url - uuid ProtectedCall: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true start_date: type: string format: date-time readOnly: true end_date: type: string format: date-time readOnly: true slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string maxLength: 150 description: type: string state: allOf: - $ref: '#/components/schemas/CallStates' readOnly: true manager: type: string format: uri manager_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true offerings: type: array items: $ref: '#/components/schemas/NestedRequestedOffering' readOnly: true rounds: type: array items: $ref: '#/components/schemas/NestedRound' readOnly: true documents: type: array items: $ref: '#/components/schemas/CallDocument' readOnly: true resource_templates: type: array items: $ref: '#/components/schemas/CallResourceTemplate' readOnly: true fixed_duration_in_days: type: integer nullable: true backend_id: type: string maxLength: 255 external_url: type: string format: uri nullable: true maxLength: 200 reviewer_identity_visible_to_submitters: type: boolean description: Whether proposal applicants can see reviewer identities reviews_visible_to_submitters: type: boolean description: Whether proposal applicants can see review comments and scores has_eligibility_restrictions: type: boolean description: Check if call has any eligibility restrictions configured. readOnly: true created_by: type: string format: uri nullable: true reference_code: type: string compliance_checklist: type: string format: uuid nullable: true description: Compliance checklist that proposals must complete before submission compliance_checklist_name: type: string readOnly: true proposal_slug_template: type: string nullable: true description: 'Template for proposal slugs. Supports: {call_slug}, {round_slug}, {org_slug}, {year}, {month}, {counter}, {counter_padded}. Default: {round_slug}-{counter_padded}' user_email_patterns: description: List of email regex patterns. User must match one. user_affiliations: description: List of allowed affiliations. User must have one. user_identity_sources: description: List of allowed identity sources (identity providers). user_nationalities: description: List of allowed nationality codes (ISO 3166-1 alpha-2). User must have one. user_organization_types: description: List of allowed organization type URNs (SCHAC). User must match one. user_assurance_levels: description: List of required assurance URIs (REFEDS). User must have ALL of these. required: [] ProtectedCallRequest: type: object description: '' properties: slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string minLength: 1 maxLength: 150 description: type: string manager: type: string format: uri fixed_duration_in_days: type: integer nullable: true backend_id: type: string maxLength: 255 external_url: type: string format: uri nullable: true maxLength: 200 reviewer_identity_visible_to_submitters: type: boolean description: Whether proposal applicants can see reviewer identities reviews_visible_to_submitters: type: boolean description: Whether proposal applicants can see review comments and scores created_by: type: string format: uri nullable: true reference_code: type: string minLength: 1 compliance_checklist: type: string format: uuid nullable: true description: Compliance checklist that proposals must complete before submission proposal_slug_template: type: string nullable: true description: 'Template for proposal slugs. Supports: {call_slug}, {round_slug}, {org_slug}, {year}, {month}, {counter}, {counter_padded}. Default: {round_slug}-{counter_padded}' user_email_patterns: description: List of email regex patterns. User must match one. user_affiliations: description: List of allowed affiliations. User must have one. user_identity_sources: description: List of allowed identity sources (identity providers). user_nationalities: description: List of allowed nationality codes (ISO 3166-1 alpha-2). User must have one. user_organization_types: description: List of allowed organization type URNs (SCHAC). User must match one. user_assurance_levels: description: List of required assurance URIs (REFEDS). User must have ALL of these. required: - manager - name ProtectedProposalList: type: object properties: uuid: type: string format: uuid readOnly: true slug: type: string maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string maxLength: 150 state: allOf: - $ref: '#/components/schemas/ProposalStates' readOnly: true reviews: type: array items: {} description: |- Return serialized reviews based on user permissions and visibility settings. - Staff, call managers, and reviewers see all reviews. - Submitters see submitted reviews if visibility is enabled. readOnly: true approved_by_name: type: string readOnly: true created_by_name: type: string readOnly: true created: type: string format: date-time readOnly: true required: - approved_by_name - created - created_by_name - name - reviews - slug - state - uuid description: '' ProtectedProposalListRequest: type: object properties: slug: type: string minLength: 1 maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string minLength: 1 maxLength: 150 required: - name - slug description: '' ProtectedRound: type: object description: '' properties: uuid: type: string format: uuid readOnly: true slug: type: string readOnly: true maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string readOnly: true start_time: type: string format: date-time cutoff_time: type: string format: date-time status: allOf: - $ref: '#/components/schemas/RoundStatus' readOnly: true review_strategy: $ref: '#/components/schemas/ReviewStrategyEnum' deciding_entity: $ref: '#/components/schemas/DecidingEntityEnum' allocation_time: $ref: '#/components/schemas/AllocationTimeEnum' allocation_date: type: string format: date-time nullable: true minimal_average_scoring: type: string format: decimal pattern: ^-?\d{0,4}(?:\.\d{0,1})?$ nullable: true review_duration_in_days: type: integer minimum_number_of_reviewers: type: integer maximum: 2147483647 minimum: 0 nullable: true url: type: string readOnly: true proposals: type: array items: $ref: '#/components/schemas/ProtectedProposalList' readOnly: true required: - cutoff_time - name - proposals - slug - start_time - status - url - uuid ProtectedRoundRequest: type: object description: '' properties: start_time: type: string format: date-time cutoff_time: type: string format: date-time review_strategy: $ref: '#/components/schemas/ReviewStrategyEnum' deciding_entity: $ref: '#/components/schemas/DecidingEntityEnum' allocation_time: $ref: '#/components/schemas/AllocationTimeEnum' allocation_date: type: string format: date-time nullable: true minimal_average_scoring: type: string format: decimal pattern: ^-?\d{0,4}(?:\.\d{0,1})?$ nullable: true review_duration_in_days: type: integer minimum_number_of_reviewers: type: integer maximum: 2147483647 minimum: 0 nullable: true required: - cutoff_time - start_time ProtocolEnum: enum: - tcp - udp - icmp type: string description: '' ProviderCustomerStats: type: object description: '' properties: total: type: integer description: Total number of customers new_this_month: type: integer description: New customers this month top_by_revenue: type: array items: type: object additionalProperties: {} description: Top customers by revenue top_by_resources: type: array items: type: object additionalProperties: {} description: Top customers by resource count monthly: type: array items: type: object additionalProperties: {} description: Monthly customer counts required: - monthly - new_this_month - top_by_resources - top_by_revenue - total ProviderOffering: type: object description: '' properties: uuid: type: string format: uuid readOnly: true customer_uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ category_title: type: string readOnly: true type: type: string maxLength: 100 state: allOf: - $ref: '#/components/schemas/OfferingState' readOnly: true resources_count: type: integer readOnly: true billing_price_estimate: allOf: - $ref: '#/components/schemas/NestedPriceEstimate' readOnly: true components: type: array items: $ref: '#/components/schemas/OfferingComponent' plans: type: array items: $ref: '#/components/schemas/BaseProviderPlan' options: description: Fields describing resource provision form. resource_options: description: Fields describing resource report form. secret_options: allOf: - $ref: '#/components/schemas/MergedSecretOptions' readOnly: true thumbnail: type: string format: uri nullable: true required: [] ProviderOfferingCosts: type: object properties: period: type: string readOnly: true description: Billing period (YYYY-MM) price: type: number format: double readOnly: true description: Price amount excluding tax tax: type: number format: double readOnly: true description: Tax amount total: type: number format: double readOnly: true description: Total amount including tax required: - period - price - tax - total description: '' ProviderOfferingCustomer: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 slug: type: string maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ abbreviation: type: string maxLength: 12 phone_number: type: string maxLength: 255 email: type: string format: email title: Email address maxLength: 75 required: [] ProviderOfferingDetails: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true name: type: string maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ description: type: string maxLength: 4096 full_description: type: string privacy_policy_link: type: string format: uri maxLength: 200 access_url: type: string format: uri description: Publicly accessible offering access URL maxLength: 200 endpoints: type: array items: $ref: '#/components/schemas/NestedEndpoint' readOnly: true software_catalogs: type: array items: $ref: '#/components/schemas/NestedSoftwareCatalog' readOnly: true partitions: type: array items: $ref: '#/components/schemas/NestedPartition' readOnly: true roles: type: array items: $ref: '#/components/schemas/NestedRole' readOnly: true customer: type: string format: uri nullable: true customer_uuid: type: string format: uuid readOnly: true nullable: true customer_name: type: string readOnly: true nullable: true project: type: string format: uri readOnly: true nullable: true project_uuid: type: string format: uuid readOnly: true nullable: true project_name: type: string readOnly: true nullable: true category: type: string format: uri category_uuid: type: string format: uuid readOnly: true category_title: type: string readOnly: true attributes: type: object additionalProperties: {} readOnly: true options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true resource_options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true components: type: array items: $ref: '#/components/schemas/OfferingComponent' readOnly: true plugin_options: allOf: - $ref: '#/components/schemas/MergedPluginOptions' readOnly: true secret_options: allOf: - $ref: '#/components/schemas/MergedSecretOptions' readOnly: true service_attributes: type: object additionalProperties: {} readOnly: true state: allOf: - $ref: '#/components/schemas/OfferingState' readOnly: true vendor_details: type: string getting_started: type: string integration_guide: type: string thumbnail: type: string format: uri nullable: true order_count: type: integer readOnly: true plans: type: array items: $ref: '#/components/schemas/BaseProviderPlan' readOnly: true screenshots: type: array items: $ref: '#/components/schemas/NestedScreenshot' readOnly: true type: type: string maxLength: 100 shared: type: boolean description: Accessible to all customers. billable: type: boolean description: Purchase and usage is invoiced. scope: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true nullable: true scope_name: type: string format: uuid readOnly: true nullable: true scope_state: nullable: true readOnly: true oneOf: - $ref: '#/components/schemas/CoreStates' - $ref: '#/components/schemas/NullEnum' scope_error_message: type: string nullable: true readOnly: true files: type: array items: $ref: '#/components/schemas/NestedOfferingFile' readOnly: true quotas: type: array items: $ref: '#/components/schemas/Quota' readOnly: true paused_reason: type: string readOnly: true datacite_doi: type: string maxLength: 255 citation_count: type: integer readOnly: true description: Number of citations of a DOI latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' backend_id: type: string maxLength: 255 backend_id_rules: description: 'Validation rules for resource backend_id: format regex and uniqueness scope.' organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true tags: type: array items: $ref: '#/components/schemas/NestedTag' readOnly: true image: type: string format: uri nullable: true total_customers: type: integer nullable: true readOnly: true total_cost: type: integer nullable: true readOnly: true total_cost_estimated: type: integer nullable: true readOnly: true parent_description: type: string readOnly: true nullable: true parent_uuid: type: string format: uuid readOnly: true nullable: true parent_name: type: string readOnly: true nullable: true backend_metadata: {} has_compliance_requirements: type: boolean readOnly: true billing_type_classification: type: string description: |- Classify offering components by billing type. Returns 'limit_only', 'usage_only', or 'mixed'. readOnly: true compliance_checklist: type: string format: uri nullable: true integration_status: type: array items: $ref: '#/components/schemas/IntegrationStatus' nullable: true readOnly: true google_calendar_is_public: type: boolean nullable: true readOnly: true google_calendar_link: type: string nullable: true description: Get the Google Calendar link for an offering. readOnly: true required: [] ProviderOfferingDetailsRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ description: type: string maxLength: 4096 full_description: type: string privacy_policy_link: type: string format: uri maxLength: 200 access_url: type: string format: uri description: Publicly accessible offering access URL maxLength: 200 customer: type: string format: uri nullable: true category: type: string format: uri attributes: {} components: type: array items: $ref: '#/components/schemas/OfferingComponentRequest' vendor_details: type: string getting_started: type: string integration_guide: type: string thumbnail: type: string format: binary nullable: true plans: type: array items: $ref: '#/components/schemas/BaseProviderPlanRequest' type: type: string minLength: 1 maxLength: 100 shared: type: boolean description: Accessible to all customers. billable: type: boolean description: Purchase and usage is invoiced. datacite_doi: type: string maxLength: 255 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' backend_id: type: string maxLength: 255 backend_id_rules: description: 'Validation rules for resource backend_id: format regex and uniqueness scope.' image: type: string format: binary nullable: true backend_metadata: {} compliance_checklist: type: string format: uri nullable: true required: - category - name - type ProviderOfferingStats: type: object description: '' properties: offerings: type: array items: type: object additionalProperties: {} description: Offering statistics including resources, revenue, and utilization required: - offerings ProviderPlanDetails: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string article_code: type: string maxLength: 30 max_amount: type: integer maximum: 32767 minimum: 1 nullable: true description: Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. archived: type: boolean description: Forbids creation of new resources. is_active: type: boolean readOnly: true unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' init_price: type: number format: double readOnly: true switch_price: type: number format: double readOnly: true backend_id: type: string maxLength: 255 organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true components: type: array items: $ref: '#/components/schemas/NestedPlanComponent' readOnly: true offering: type: string format: uri prices: type: object additionalProperties: type: number format: double readOnly: true future_prices: type: object additionalProperties: type: number format: double readOnly: true quotas: type: object additionalProperties: type: number format: double readOnly: true resources_count: type: integer readOnly: true plan_type: type: string readOnly: true minimal_price: type: number format: double readOnly: true required: - components - future_prices - init_price - is_active - minimal_price - name - offering - organization_groups - plan_type - prices - quotas - resources_count - switch_price - url - uuid ProviderPlanDetailsRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string article_code: type: string maxLength: 30 max_amount: type: integer maximum: 32767 minimum: 1 nullable: true description: Maximum number of plans that could be active. Plan is disabled when maximum amount is reached. archived: type: boolean description: Forbids creation of new resources. unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ unit: $ref: '#/components/schemas/BillingUnit' backend_id: type: string maxLength: 255 offering: type: string format: uri required: - name - offering ProviderProject: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 500 image: type: string format: uri nullable: true required: [] description: '' ProviderRequestedOffering: type: object properties: uuid: type: string format: uuid readOnly: true state: allOf: - $ref: '#/components/schemas/RequestedOfferingStates' readOnly: true offering: type: string format: uri offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true provider_name: type: string readOnly: true category_uuid: type: string format: uuid readOnly: true category_name: type: string readOnly: true call_managing_organisation: type: string readOnly: true attributes: {} plan: type: string format: uri readOnly: true nullable: true plan_details: allOf: - $ref: '#/components/schemas/BasePublicPlan' readOnly: true options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true components: type: array items: $ref: '#/components/schemas/OfferingComponent' readOnly: true created: type: string format: date-time readOnly: true url: type: string format: uri readOnly: true call_name: type: string readOnly: true call: type: string format: uri description: type: string readOnly: true created_by_name: type: string readOnly: true created_by_email: type: string format: email title: Email address readOnly: true required: - call - call_managing_organisation - call_name - category_name - category_uuid - components - created - created_by_email - created_by_name - description - offering - offering_name - offering_uuid - options - plan - plan_details - provider_name - state - url - uuid description: '' ProviderRequestedResource: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string readOnly: true requested_offering: allOf: - $ref: '#/components/schemas/NestedRequestedOffering' readOnly: true resource: type: string format: uri nullable: true resource_name: type: string readOnly: true call_resource_template: type: string readOnly: true call_resource_template_name: type: string readOnly: true attributes: {} limits: {} description: type: string maxLength: 4096 created_by: type: string format: uri nullable: true created_by_name: type: string readOnly: true proposal_name: type: string readOnly: true proposal: type: string format: uri required: - call_resource_template - call_resource_template_name - created_by_name - proposal - proposal_name - requested_offering - resource_name - url - uuid description: '' ProviderResourceStats: type: object description: '' properties: total: type: integer description: Total number of resources by_state: type: object additionalProperties: type: integer description: Resource counts grouped by state by_offering: type: array items: type: object additionalProperties: {} description: Resource counts grouped by offering monthly: type: array items: type: object additionalProperties: {} description: Monthly resource counts required: - by_offering - by_state - monthly - total ProviderTeamUser: type: object description: '' properties: user_uuid: type: string format: uuid username: type: string full_name: type: string role: type: string nullable: true required: - full_name - role - user_uuid - username ProviderUser: type: object properties: uuid: type: string format: uuid readOnly: true full_name: type: string readOnly: true email: type: string format: email title: Email address maxLength: 320 image: type: string format: uri nullable: true required: [] description: '' PublicCall: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true start_date: type: string format: date-time readOnly: true end_date: type: string format: date-time readOnly: true slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ name: type: string maxLength: 150 description: type: string state: allOf: - $ref: '#/components/schemas/CallStates' readOnly: true manager: type: string format: uri manager_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true offerings: type: array items: $ref: '#/components/schemas/NestedRequestedOffering' readOnly: true rounds: type: array items: $ref: '#/components/schemas/NestedRound' readOnly: true documents: type: array items: $ref: '#/components/schemas/CallDocument' readOnly: true resource_templates: type: array items: $ref: '#/components/schemas/CallResourceTemplate' readOnly: true fixed_duration_in_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Fixed duration in days that applies to all proposals in this call readOnly: true backend_id: type: string maxLength: 255 external_url: type: string format: uri nullable: true maxLength: 200 reviewer_identity_visible_to_submitters: type: boolean description: Whether proposal applicants can see reviewer identities. If False, reviewers appear as 'Reviewer 1', 'Reviewer 2', etc. reviews_visible_to_submitters: type: boolean description: Whether proposal applicants can see review comments and scores. If False, applicants only see final approval/rejection status. has_eligibility_restrictions: type: boolean description: Check if call has any eligibility restrictions configured. readOnly: true required: [] PublicInvitation: type: object description: '' properties: call_name: type: string readOnly: true call_uuid: type: string format: uuid readOnly: true invitation_status: type: string readOnly: true expires_at: type: string format: date-time readOnly: true nullable: true is_expired: type: boolean readOnly: true max_assignments: type: integer readOnly: true nullable: true invited_by_name: type: string readOnly: true nullable: true description: Name of the person who sent the invitation profile_status: type: string readOnly: true nullable: true description: 'User''s profile status: ''published'', ''unpublished'', ''missing'', or null if not authenticated' requires_profile: type: boolean readOnly: true description: Whether the invitation requires creating a reviewer profile coi_configuration: allOf: - $ref: '#/components/schemas/InvitationCOIConfiguration' readOnly: true nullable: true description: COI configuration for this call coi_types: type: array items: type: array items: type: string readOnly: true description: Available COI types as list of [value, label] tuples proposals: type: array items: $ref: '#/components/schemas/InvitationProposalSummary' readOnly: true description: Proposals for which conflicts can be declared required: - call_name - call_uuid - coi_configuration - coi_types - expires_at - invitation_status - invited_by_name - is_expired - max_assignments - profile_status - proposals - requires_profile PublicMaintenanceAnnouncement: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string readOnly: true message: type: string readOnly: true maintenance_type: allOf: - $ref: '#/components/schemas/MaintenanceTypeEnum' readOnly: true description: Type of maintenance being performed maintenance_type_display: type: string readOnly: true external_reference_url: type: string format: uri readOnly: true description: Optional reference to an external maintenance tracker state: allOf: - $ref: '#/components/schemas/PublicMaintenanceAnnouncementStateEnum' readOnly: true scheduled_start: type: string format: date-time readOnly: true description: When the maintenance is scheduled to begin scheduled_end: type: string format: date-time readOnly: true description: When the maintenance is scheduled to complete actual_start: type: string format: date-time readOnly: true nullable: true description: When the maintenance actually began actual_end: type: string format: date-time readOnly: true nullable: true description: When the maintenance actually completed affected_offerings: type: array items: $ref: '#/components/schemas/MaintenanceAnnouncementOffering' readOnly: true service_provider_name: type: string readOnly: true required: - actual_end - actual_start - affected_offerings - external_reference_url - maintenance_type - maintenance_type_display - message - name - scheduled_end - scheduled_start - service_provider_name - state - url - uuid description: '' PublicMaintenanceAnnouncementStateEnum: enum: - Scheduled - In progress - Completed type: string description: '' PublicOfferingDetails: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true name: type: string maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ description: type: string maxLength: 4096 full_description: type: string privacy_policy_link: type: string format: uri maxLength: 200 access_url: type: string format: uri description: Publicly accessible offering access URL maxLength: 200 endpoints: type: array items: $ref: '#/components/schemas/NestedEndpoint' readOnly: true software_catalogs: type: array items: $ref: '#/components/schemas/NestedSoftwareCatalog' readOnly: true partitions: type: array items: $ref: '#/components/schemas/NestedPartition' readOnly: true roles: type: array items: $ref: '#/components/schemas/NestedRole' readOnly: true customer: type: string format: uri nullable: true customer_uuid: type: string format: uuid readOnly: true nullable: true customer_name: type: string readOnly: true nullable: true project: type: string format: uri readOnly: true nullable: true project_uuid: type: string format: uuid readOnly: true nullable: true project_name: type: string readOnly: true nullable: true category: type: string format: uri category_uuid: type: string format: uuid readOnly: true category_title: type: string readOnly: true attributes: type: object additionalProperties: {} readOnly: true options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true resource_options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true components: type: array items: $ref: '#/components/schemas/OfferingComponent' readOnly: true plugin_options: allOf: - $ref: '#/components/schemas/MergedPluginOptions' readOnly: true state: allOf: - $ref: '#/components/schemas/OfferingState' readOnly: true vendor_details: type: string getting_started: type: string integration_guide: type: string thumbnail: type: string format: uri nullable: true order_count: type: integer readOnly: true plans: type: array items: $ref: '#/components/schemas/BasePublicPlan' readOnly: true screenshots: type: array items: $ref: '#/components/schemas/NestedScreenshot' readOnly: true type: type: string maxLength: 100 shared: type: boolean description: Accessible to all customers. billable: type: boolean description: Purchase and usage is invoiced. scope: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true nullable: true scope_name: type: string format: uuid readOnly: true nullable: true scope_state: nullable: true readOnly: true oneOf: - $ref: '#/components/schemas/CoreStates' - $ref: '#/components/schemas/NullEnum' scope_error_message: type: string nullable: true readOnly: true files: type: array items: $ref: '#/components/schemas/NestedOfferingFile' readOnly: true quotas: type: array items: $ref: '#/components/schemas/Quota' readOnly: true paused_reason: type: string readOnly: true datacite_doi: type: string maxLength: 255 citation_count: type: integer readOnly: true description: Number of citations of a DOI latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' backend_id: type: string maxLength: 255 organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true tags: type: array items: $ref: '#/components/schemas/NestedTag' readOnly: true image: type: string format: uri nullable: true total_customers: type: integer nullable: true readOnly: true total_cost: type: integer nullable: true readOnly: true total_cost_estimated: type: integer nullable: true readOnly: true parent_description: type: string readOnly: true nullable: true parent_uuid: type: string format: uuid readOnly: true nullable: true parent_name: type: string readOnly: true nullable: true backend_metadata: {} has_compliance_requirements: type: boolean readOnly: true billing_type_classification: type: string description: |- Classify offering components by billing type. Returns 'limit_only', 'usage_only', or 'mixed'. readOnly: true compliance_checklist: type: string format: uri nullable: true user_has_consent: type: boolean readOnly: true is_accessible: type: boolean readOnly: true google_calendar_is_public: type: boolean nullable: true readOnly: true google_calendar_link: type: string nullable: true description: Get the Google Calendar link for an offering. readOnly: true promotion_campaigns: type: array items: $ref: '#/components/schemas/NestedCampaign' readOnly: true required: [] PublishingMetrics: type: object description: '' properties: messages_sent: type: integer readOnly: true description: Total messages successfully sent messages_failed: type: integer readOnly: true description: Total failed message attempts messages_retried: type: integer readOnly: true description: Messages that required retry messages_skipped: type: integer readOnly: true description: Messages skipped due to circuit breaker circuit_breaker_trips: type: integer readOnly: true description: Number of times circuit breaker opened rate_limiter_rejections: type: integer readOnly: true description: Messages rejected by rate limiter avg_publish_time_ms: type: number format: double readOnly: true description: Average message publish latency in milliseconds last_publish_time: type: number format: double readOnly: true nullable: true description: Unix timestamp of last publish attempt required: - avg_publish_time_ms - circuit_breaker_trips - last_publish_time - messages_failed - messages_retried - messages_sent - messages_skipped - rate_limiter_rejections PubsubCircuitBreakerSummary: type: object description: '' properties: state: type: string readOnly: true description: 'Current state: closed, open, or half_open' healthy: type: boolean readOnly: true description: Whether circuit breaker is in healthy state (closed) failure_count: type: integer readOnly: true description: Number of consecutive failures required: - failure_count - healthy - state PubsubMetricsSummary: type: object description: '' properties: messages_sent: type: integer readOnly: true description: Total messages sent messages_failed: type: integer readOnly: true description: Total messages failed failure_rate: type: string readOnly: true description: Failure rate as percentage string avg_latency_ms: type: number format: double readOnly: true description: Average publish latency in milliseconds required: - avg_latency_ms - failure_rate - messages_failed - messages_sent PubsubOverview: type: object description: '' properties: health_status: type: string readOnly: true description: 'Overall health: healthy, degraded, or critical' issues: type: array items: type: string readOnly: true description: List of current issues affecting health circuit_breaker: allOf: - $ref: '#/components/schemas/PubsubCircuitBreakerSummary' readOnly: true description: Circuit breaker summary metrics: allOf: - $ref: '#/components/schemas/PubsubMetricsSummary' readOnly: true description: Publishing metrics summary last_updated: type: string format: date-time readOnly: true description: Timestamp when overview was generated required: - circuit_breaker - health_status - issues - last_updated - metrics PullConflictResponse: type: object properties: detail: type: string required: - detail description: '' PullMarketplaceScriptResourceRequest: type: object properties: resource_uuid: type: string format: uuid required: - resource_uuid description: '' PullMembersResponse: type: object properties: created: type: integer updated: type: integer total_remote: type: integer required: - created - total_remote - updated description: '' PullResponse: type: object properties: detail: type: string required: - detail description: '' QosStrategyEnum: enum: - threshold - progressive type: string description: '' QueryPerformance: type: object description: '' properties: seq_scan_count: type: integer readOnly: true description: Total sequential scans (potentially expensive) seq_scan_rows: type: integer readOnly: true description: Total rows fetched by sequential scans index_scan_count: type: integer readOnly: true description: Total index scans index_scan_rows: type: integer readOnly: true description: Total rows fetched by index scans temp_files_count: type: integer readOnly: true description: Number of temporary files created temp_files_bytes: type: integer readOnly: true description: Total size of temporary files in bytes required: - index_scan_count - index_scan_rows - seq_scan_count - seq_scan_rows - temp_files_bytes - temp_files_count QueryRequest: type: object properties: query: type: string minLength: 1 description: Search query string required: - query description: '' Question: type: object description: '' properties: uuid: type: string format: uuid readOnly: true required: type: boolean description: type: string maxLength: 4096 user_guidance: type: string description: Additional guidance text visible to users when answering and reviewing question_options: type: array items: $ref: '#/components/schemas/QuestionOptions' readOnly: true question_type: allOf: - $ref: '#/components/schemas/QuestionTypeEnum' description: Type of question and expected answer format order: type: integer maximum: 2147483647 minimum: 0 min_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true description: Minimum value allowed for NUMBER, YEAR, and RATING type questions max_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true description: Maximum value allowed for NUMBER, YEAR, and RATING type questions allowed_file_types: description: List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed. allowed_mime_types: description: List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security. max_file_size_mb: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum file size in megabytes. If not set, no size limit is enforced. max_files_count: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced. operator: oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' review_answer_value: nullable: true description: Answer value that trigger review. always_requires_review: type: boolean description: This question always requires review regardless of answer guidance_answer_value: nullable: true description: Answer value that triggers display of user guidance. guidance_operator: description: Operator to use when comparing answer with guidance_answer_value oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' always_show_guidance: type: boolean description: Show user guidance always, regardless of answer. If False, guidance is conditional on answer matching guidance_answer_value with guidance_operator dependency_logic_operator: allOf: - $ref: '#/components/schemas/DependencyLogicOperatorEnum' description: 'Defines how multiple dependencies are evaluated. AND: All dependencies must be satisfied. OR: At least one dependency must be satisfied.' required: - question_options - uuid QuestionAdmin: type: object description: '' properties: uuid: type: string format: uuid readOnly: true required: type: boolean description: type: string maxLength: 4096 user_guidance: type: string description: Additional guidance text visible to users when answering and reviewing question_options: type: array items: $ref: '#/components/schemas/QuestionOptionsAdmin' readOnly: true question_type: allOf: - $ref: '#/components/schemas/QuestionTypeEnum' description: Type of question and expected answer format order: type: integer maximum: 2147483647 minimum: 0 min_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true description: Minimum value allowed for NUMBER, YEAR, and RATING type questions max_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true description: Maximum value allowed for NUMBER, YEAR, and RATING type questions allowed_file_types: description: List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed. allowed_mime_types: description: List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security. max_file_size_mb: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum file size in megabytes. If not set, no size limit is enforced. max_files_count: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced. operator: oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' review_answer_value: nullable: true description: Answer value that trigger review. always_requires_review: type: boolean description: This question always requires review regardless of answer guidance_answer_value: nullable: true description: Answer value that triggers display of user guidance. guidance_operator: description: Operator to use when comparing answer with guidance_answer_value oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' always_show_guidance: type: boolean description: Show user guidance always, regardless of answer. If False, guidance is conditional on answer matching guidance_answer_value with guidance_operator dependency_logic_operator: allOf: - $ref: '#/components/schemas/DependencyLogicOperatorEnum' description: 'Defines how multiple dependencies are evaluated. AND: All dependencies must be satisfied. OR: At least one dependency must be satisfied.' url: type: string format: uri readOnly: true checklist_name: type: string readOnly: true checklist_uuid: type: string format: uuid readOnly: true checklist_type: type: string readOnly: true checklist: type: string format: uri required: - checklist - checklist_name - checklist_type - checklist_uuid - question_options - url - uuid QuestionAdminRequest: type: object description: '' properties: required: type: boolean description: type: string maxLength: 4096 user_guidance: type: string description: Additional guidance text visible to users when answering and reviewing question_type: allOf: - $ref: '#/components/schemas/QuestionTypeEnum' description: Type of question and expected answer format order: type: integer maximum: 2147483647 minimum: 0 min_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true description: Minimum value allowed for NUMBER, YEAR, and RATING type questions max_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ nullable: true description: Maximum value allowed for NUMBER, YEAR, and RATING type questions allowed_file_types: description: List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed. allowed_mime_types: description: List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security. max_file_size_mb: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum file size in megabytes. If not set, no size limit is enforced. max_files_count: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced. operator: oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' review_answer_value: nullable: true description: Answer value that trigger review. always_requires_review: type: boolean description: This question always requires review regardless of answer guidance_answer_value: nullable: true description: Answer value that triggers display of user guidance. guidance_operator: description: Operator to use when comparing answer with guidance_answer_value oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' always_show_guidance: type: boolean description: Show user guidance always, regardless of answer. If False, guidance is conditional on answer matching guidance_answer_value with guidance_operator dependency_logic_operator: allOf: - $ref: '#/components/schemas/DependencyLogicOperatorEnum' description: 'Defines how multiple dependencies are evaluated. AND: All dependencies must be satisfied. OR: At least one dependency must be satisfied.' checklist: type: string format: uri required: - checklist QuestionAnswer: type: object description: '' properties: question_uuid: type: string format: uuid readOnly: true question_description: type: string readOnly: true question_type: type: string readOnly: true required: type: boolean readOnly: true order: type: integer readOnly: true min_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ readOnly: true nullable: true max_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ readOnly: true nullable: true total_projects: type: integer description: Get total projects count. readOnly: true answered_projects_count: type: integer description: Get count of projects that answered this question. readOnly: true project_answers: type: array items: type: object additionalProperties: {} description: Get all project answers for this question. readOnly: true question_options: type: array items: type: object additionalProperties: {} description: Get question options for select-type questions. readOnly: true required: - answered_projects_count - max_value - min_value - order - project_answers - question_description - question_options - question_type - question_uuid - required - total_projects QuestionDependency: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true question: type: string format: uri question_name: type: string readOnly: true depends_on_question: type: string format: uri depends_on_question_name: type: string readOnly: true required_answer_value: description: The answer value(s) that make this question visible operator: $ref: '#/components/schemas/ChecklistOperators' required: - depends_on_question - depends_on_question_name - question - question_name - required_answer_value - url - uuid QuestionDependencyRequest: type: object description: '' properties: question: type: string format: uri depends_on_question: type: string format: uri required_answer_value: description: The answer value(s) that make this question visible operator: $ref: '#/components/schemas/ChecklistOperators' required: - depends_on_question - question - required_answer_value QuestionOptions: type: object description: '' properties: uuid: type: string format: uuid readOnly: true label: type: string maxLength: 255 order: type: integer maximum: 2147483647 minimum: 0 required: - label - uuid QuestionOptionsAdmin: type: object description: '' properties: uuid: type: string format: uuid readOnly: true label: type: string maxLength: 255 order: type: integer maximum: 2147483647 minimum: 0 url: type: string format: uri readOnly: true question: type: string format: uri question_uuid: type: string format: uuid readOnly: true required: - label - question - question_uuid - url - uuid QuestionOptionsAdminRequest: type: object description: '' properties: label: type: string minLength: 1 maxLength: 255 order: type: integer maximum: 2147483647 minimum: 0 question: type: string format: uri required: - label - question QuestionTypeEnum: enum: - boolean - single_select - multi_select - text_input - text_area - number - date - file - multiple_files - phone_number - year - email - url - country - rating - datetime type: string description: '' QuestionWithAnswer: type: object description: '' properties: uuid: type: string format: uuid readOnly: true description: type: string readOnly: true user_guidance: type: string nullable: true readOnly: true question_type: allOf: - $ref: '#/components/schemas/QuestionTypeEnum' readOnly: true description: Type of question and expected answer format required: type: boolean readOnly: true order: type: integer readOnly: true existing_answer: type: object additionalProperties: {} nullable: true readOnly: true question_options: type: array items: {} nullable: true readOnly: true min_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ readOnly: true nullable: true description: Minimum value allowed for NUMBER, YEAR, and RATING type questions max_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ readOnly: true nullable: true description: Maximum value allowed for NUMBER, YEAR, and RATING type questions allowed_file_types: readOnly: true description: List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed. allowed_mime_types: readOnly: true description: List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security. max_file_size_mb: type: integer readOnly: true nullable: true description: Maximum file size in megabytes. If not set, no size limit is enforced. max_files_count: type: integer readOnly: true nullable: true description: Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced. dependencies_info: type: object additionalProperties: {} nullable: true readOnly: true required: - allowed_file_types - allowed_mime_types - dependencies_info - description - existing_answer - max_file_size_mb - max_files_count - max_value - min_value - order - question_options - question_type - required - user_guidance - uuid QuestionWithAnswerReviewer: type: object description: '' properties: uuid: type: string format: uuid readOnly: true description: type: string readOnly: true user_guidance: type: string nullable: true readOnly: true question_type: allOf: - $ref: '#/components/schemas/QuestionTypeEnum' readOnly: true description: Type of question and expected answer format required: type: boolean readOnly: true order: type: integer readOnly: true existing_answer: type: object additionalProperties: {} nullable: true readOnly: true question_options: type: array items: {} nullable: true readOnly: true min_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ readOnly: true nullable: true description: Minimum value allowed for NUMBER, YEAR, and RATING type questions max_value: type: string format: decimal pattern: ^-?\d{0,16}(?:\.\d{0,4})?$ readOnly: true nullable: true description: Maximum value allowed for NUMBER, YEAR, and RATING type questions allowed_file_types: readOnly: true description: List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed. allowed_mime_types: readOnly: true description: List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security. max_file_size_mb: type: integer readOnly: true nullable: true description: Maximum file size in megabytes. If not set, no size limit is enforced. max_files_count: type: integer readOnly: true nullable: true description: Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced. dependencies_info: type: object additionalProperties: {} nullable: true readOnly: true operator: oneOf: - $ref: '#/components/schemas/ChecklistOperators' - $ref: '#/components/schemas/BlankEnum' review_answer_value: nullable: true description: Answer value that trigger review. always_requires_review: type: boolean description: This question always requires review regardless of answer required: - allowed_file_types - allowed_mime_types - dependencies_info - description - existing_answer - max_file_size_mb - max_files_count - max_value - min_value - order - question_options - question_type - required - user_guidance - uuid Quota: type: object properties: name: type: string usage: type: integer limit: type: integer required: [] description: '' QuotaRequest: type: object properties: name: type: string minLength: 1 usage: type: integer limit: type: integer required: - limit - name - usage description: '' QuotasUpdateRequest: type: object properties: quotas: type: object additionalProperties: type: integer minimum: 0 description: Dictionary of quotas to update required: - quotas description: '' RESTRICTEDOFFERINGVISIBILITYMODEEnum: enum: - show_all - show_restricted_disabled - hide_inaccessible - require_membership type: string description: '' RancherApplication: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string error_traceback: type: string resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string maxLength: 255 access_url: type: string nullable: true readOnly: true runtime_state: type: string maxLength: 150 template: type: string format: uri rancher_project: type: string format: uri namespace: type: string format: uri version: type: string answers: type: object additionalProperties: {} rancher_project_name: type: string readOnly: true catalog_name: type: string readOnly: true template_name: type: string readOnly: true external_url: type: string nullable: true readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] RancherApplicationRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri error_message: type: string error_traceback: type: string backend_id: type: string maxLength: 255 runtime_state: type: string maxLength: 150 template: type: string format: uri rancher_project: type: string format: uri namespace: type: string format: uri namespace_name: type: string writeOnly: true minLength: 1 version: type: string minLength: 1 answers: type: object additionalProperties: {} required: - name - project - rancher_project - service_settings - template - version RancherCatalog: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 catalog_url: type: string format: uri maxLength: 200 branch: type: string maxLength: 255 commit: type: string readOnly: true runtime_state: type: string readOnly: true scope: type: string scope_type: allOf: - $ref: '#/components/schemas/RancherCatalogScopeType' readOnly: true required: - branch - catalog_url - commit - created - modified - name - runtime_state - scope - scope_type - url - uuid description: '' RancherCatalogCreate: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 catalog_url: type: string format: uri maxLength: 200 branch: type: string maxLength: 255 commit: type: string readOnly: true runtime_state: type: string readOnly: true scope: type: string scope_type: allOf: - $ref: '#/components/schemas/RancherCatalogScopeType' readOnly: true username: type: string maxLength: 255 password: type: string maxLength: 255 required: - branch - catalog_url - commit - created - modified - name - runtime_state - scope - scope_type - url - uuid description: '' RancherCatalogCreateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 catalog_url: type: string format: uri minLength: 1 maxLength: 200 branch: type: string minLength: 1 maxLength: 255 scope: type: string username: type: string maxLength: 255 password: type: string maxLength: 255 required: - branch - catalog_url - name - scope description: '' RancherCatalogRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 catalog_url: type: string format: uri minLength: 1 maxLength: 200 branch: type: string minLength: 1 maxLength: 255 scope: type: string required: - branch - catalog_url - name - scope description: '' RancherCatalogScopeType: enum: - global - cluster - project type: string description: '' RancherCatalogUpdate: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 catalog_url: type: string format: uri maxLength: 200 branch: type: string maxLength: 255 commit: type: string readOnly: true runtime_state: type: string readOnly: true scope: type: string scope_type: allOf: - $ref: '#/components/schemas/RancherCatalogScopeType' readOnly: true required: - branch - catalog_url - commit - created - modified - name - runtime_state - scope - scope_type - url - uuid description: '' RancherCatalogUpdateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 catalog_url: type: string format: uri minLength: 1 maxLength: 200 branch: type: string minLength: 1 maxLength: 255 scope: type: string required: - branch - catalog_url - name - scope description: '' RancherCluster: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string pattern: ^[a-z0-9]([-a-z0-9])+[a-z0-9]$ maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true nodes: type: array items: $ref: '#/components/schemas/RancherNestedNode' tenant: type: string format: uri tenant_uuid: type: string format: uuid readOnly: true vm_project: type: string format: uri nullable: true runtime_state: type: string readOnly: true install_longhorn: type: boolean default: false description: Longhorn is a distributed block storage deployed on top of Kubernetes cluster management_security_group: type: string format: uri readOnly: true public_ips: type: array items: $ref: '#/components/schemas/RancherNestedPublicIP' readOnly: true capacity: readOnly: true description: 'Cluster capacity in the format {''cpu'': ''10'', ''ram'': ''49125240Ki'', ''pods'': ''330''}' requested: readOnly: true description: 'Cluster requested resources in the format {''cpu'': ''1450m'', ''memory'': ''884Mi'', ''pods'': ''13''}' kubernetes_version: type: string readOnly: true description: Kubernetes version used in the cluster. router_ips: type: array items: {} readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] RancherClusterReference: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 marketplace_uuid: type: string nullable: true readOnly: true required: [] description: '' RancherClusterRequest: type: object description: '' properties: name: type: string minLength: 1 pattern: ^[a-z0-9]([-a-z0-9])+[a-z0-9]$ maxLength: 150 description: type: string maxLength: 4096 vm_project: type: string format: uri nullable: true ssh_public_key: type: string format: uri writeOnly: true install_longhorn: type: boolean default: false description: Longhorn is a distributed block storage deployed on top of Kubernetes cluster required: - name RancherClusterSecurityGroupRule: type: object properties: uuid: type: string format: uuid readOnly: true ethertype: allOf: - $ref: '#/components/schemas/EthertypeEnum' description: IP protocol version - either 'IPv4' or 'IPv6' direction: allOf: - $ref: '#/components/schemas/DirectionEnum' description: Traffic direction - either 'ingress' (incoming) or 'egress' (outgoing) protocol: description: The network protocol (TCP, UDP, ICMP, or empty for any protocol) oneOf: - $ref: '#/components/schemas/ProtocolEnum' - $ref: '#/components/schemas/BlankEnum' from_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Starting port number in the range (1-65535) to_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Ending port number in the range (1-65535) cidr: type: string nullable: true description: CIDR notation for the source/destination network address range maxLength: 255 description: type: string maxLength: 4096 required: - uuid description: '' RancherClusterSecurityGroupRuleRequest: type: object properties: ethertype: allOf: - $ref: '#/components/schemas/EthertypeEnum' description: IP protocol version - either 'IPv4' or 'IPv6' direction: allOf: - $ref: '#/components/schemas/DirectionEnum' description: Traffic direction - either 'ingress' (incoming) or 'egress' (outgoing) protocol: description: The network protocol (TCP, UDP, ICMP, or empty for any protocol) oneOf: - $ref: '#/components/schemas/ProtocolEnum' - $ref: '#/components/schemas/BlankEnum' from_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Starting port number in the range (1-65535) to_port: type: integer maximum: 65535 minimum: -2147483648 nullable: true description: Ending port number in the range (1-65535) cidr: type: string nullable: true description: CIDR notation for the source/destination network address range maxLength: 255 description: type: string maxLength: 4096 description: '' RancherClusterTemplate: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true nodes: type: array items: $ref: '#/components/schemas/RancherClusterTemplateNode' required: - created - modified - name - nodes - uuid description: '' RancherClusterTemplateNode: type: object properties: min_vcpu: type: integer maximum: 32767 minimum: 0 title: Min vCPU (cores) min_ram: type: integer maximum: 2147483647 minimum: 0 title: Min RAM (GB) system_volume_size: type: integer maximum: 2147483647 minimum: 0 title: System volume size (GB) preferred_volume_type: type: string maxLength: 150 role: $ref: '#/components/schemas/RancherNodeRoleEnum' required: - min_ram - min_vcpu - role - system_volume_size description: '' RancherCreateNode: type: object description: '' properties: cluster: type: string format: uri role: $ref: '#/components/schemas/RancherNodeRoleEnum' uuid: type: string format: uuid readOnly: true required: - cluster - role - uuid RancherCreateNodeRequest: type: object description: '' properties: cluster: type: string format: uri role: $ref: '#/components/schemas/RancherNodeRoleEnum' system_volume_size: type: integer writeOnly: true minimum: 64 system_volume_type: type: string format: uri writeOnly: true nullable: true memory: type: integer writeOnly: true cpu: type: integer writeOnly: true subnet: type: string format: uri writeOnly: true nullable: true flavor: type: string format: uri writeOnly: true nullable: true data_volumes: type: array items: $ref: '#/components/schemas/DataVolumeRequest' writeOnly: true ssh_public_key: type: string format: uri writeOnly: true tenant: type: string format: uri writeOnly: true required: - cluster - role - subnet RancherHPA: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true runtime_state: type: string readOnly: true cluster: type: string format: uri readOnly: true nullable: true cluster_uuid: type: string format: uuid readOnly: true cluster_name: type: string readOnly: true project: type: string format: uri readOnly: true nullable: true project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true namespace: type: string format: uri readOnly: true nullable: true namespace_uuid: type: string format: uuid readOnly: true namespace_name: type: string readOnly: true workload: type: string format: uri nullable: true workload_uuid: type: string format: uuid readOnly: true workload_name: type: string readOnly: true min_replicas: type: integer maximum: 32767 minimum: 0 max_replicas: type: integer maximum: 32767 minimum: 0 current_replicas: type: integer readOnly: true desired_replicas: type: integer readOnly: true metrics: {} required: - cluster - cluster_name - cluster_uuid - created - current_replicas - desired_replicas - metrics - modified - name - namespace - namespace_name - namespace_uuid - project - project_name - project_uuid - runtime_state - url - uuid - workload_name - workload_uuid description: '' RancherHPARequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 workload: type: string format: uri nullable: true min_replicas: type: integer maximum: 32767 minimum: 0 max_replicas: type: integer maximum: 32767 minimum: 0 metrics: {} required: - metrics - name description: '' RancherImportYaml: type: object properties: yaml: type: string default_namespace: type: string format: uri nullable: true namespace: type: string format: uri nullable: true required: - yaml description: '' RancherImportYamlRequest: type: object properties: yaml: type: string minLength: 1 default_namespace: type: string format: uri nullable: true namespace: type: string format: uri nullable: true required: - yaml description: '' RancherIngress: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string error_traceback: type: string resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string maxLength: 255 access_url: type: string nullable: true readOnly: true runtime_state: type: string maxLength: 150 rancher_project: type: string format: uri rancher_project_name: type: string readOnly: true namespace: type: string format: uri namespace_name: type: string readOnly: true rules: {} marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] RancherIngressRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri error_message: type: string error_traceback: type: string backend_id: type: string maxLength: 255 runtime_state: type: string maxLength: 150 rancher_project: type: string format: uri namespace: type: string format: uri rules: {} required: - name - project - rancher_project - service_settings RancherNamespace: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true runtime_state: type: string maxLength: 150 project: type: string format: uri nullable: true required: - created - modified - name - url - uuid RancherNestedNamespace: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 required: - name - url - uuid description: '' RancherNestedNode: type: object description: '' properties: url: type: string format: uri readOnly: true role: $ref: '#/components/schemas/RancherNodeRoleEnum' instance: type: string readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true uuid: type: string format: uuid readOnly: true error_message: type: string readOnly: true error_traceback: type: string backend_id: type: string maxLength: 255 initial_data: readOnly: true description: Initial data for instance creating. runtime_state: type: string readOnly: true k8s_version: type: string readOnly: true docker_version: type: string readOnly: true cpu_allocated: type: number format: double readOnly: true nullable: true cpu_total: type: integer readOnly: true nullable: true ram_allocated: type: integer readOnly: true nullable: true description: Allocated RAM in Mi. ram_total: type: integer readOnly: true nullable: true description: Total RAM in Mi. pods_allocated: type: integer readOnly: true nullable: true pods_total: type: integer readOnly: true nullable: true labels: readOnly: true annotations: readOnly: true required: [] RancherNestedNodeRequest: type: object description: '' properties: subnet: type: string format: uri writeOnly: true nullable: true flavor: type: string format: uri writeOnly: true nullable: true system_volume_size: type: integer writeOnly: true minimum: 64 system_volume_type: type: string format: uri writeOnly: true nullable: true data_volumes: type: array items: $ref: '#/components/schemas/DataVolumeRequest' writeOnly: true memory: type: integer writeOnly: true cpu: type: integer writeOnly: true role: $ref: '#/components/schemas/RancherNodeRoleEnum' tenant: type: string format: uri writeOnly: true error_traceback: type: string backend_id: type: string maxLength: 255 required: - role - subnet RancherNestedPublicIP: type: object properties: floating_ip: type: string format: uri readOnly: true floating_ip_uuid: type: string format: uuid readOnly: true ip_address: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 readOnly: true external_ip_address: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 readOnly: true required: [] description: '' RancherNestedWorkload: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true name: type: string maxLength: 150 required: [] RancherNestedWorkloadRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 required: - name RancherNode: type: object properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true name: type: string maxLength: 150 backend_id: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true service_settings_name: type: string readOnly: true service_settings_uuid: type: string format: uuid readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true cluster: type: string format: uri cluster_name: type: string readOnly: true cluster_uuid: type: string format: uuid readOnly: true instance: type: string instance_name: type: string readOnly: true instance_uuid: type: string format: uuid readOnly: true instance_marketplace_uuid: type: string format: uuid readOnly: true role: $ref: '#/components/schemas/RancherNodeRoleEnum' k8s_version: type: string readOnly: true docker_version: type: string readOnly: true cpu_allocated: type: number format: double readOnly: true nullable: true cpu_total: type: integer readOnly: true nullable: true ram_allocated: type: integer readOnly: true nullable: true description: Allocated RAM in Mi. ram_total: type: integer readOnly: true nullable: true description: Total RAM in Mi. pods_allocated: type: integer readOnly: true nullable: true pods_total: type: integer readOnly: true nullable: true labels: readOnly: true annotations: readOnly: true runtime_state: type: string readOnly: true required: - annotations - backend_id - cluster - cluster_name - cluster_uuid - cpu_allocated - cpu_total - created - docker_version - instance - instance_marketplace_uuid - instance_name - instance_uuid - k8s_version - labels - modified - name - pods_allocated - pods_total - project_uuid - ram_allocated - ram_total - resource_type - role - runtime_state - service_settings_name - service_settings_uuid - state - url - uuid description: '' RancherNodeRoleEnum: enum: - agent - server type: string description: '' RancherProject: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true runtime_state: type: string maxLength: 150 cluster: type: string format: uri nullable: true namespaces: type: array items: $ref: '#/components/schemas/RancherNestedNamespace' required: - created - modified - name - namespaces - url - uuid RancherRoleScopeType: enum: - cluster - project type: string description: '' RancherService: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string error_traceback: type: string resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string maxLength: 255 access_url: type: string nullable: true readOnly: true runtime_state: type: string maxLength: 150 namespace: type: string format: uri namespace_name: type: string readOnly: true cluster_ip: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true selector: nullable: true target_workloads: type: array items: $ref: '#/components/schemas/RancherNestedWorkload' marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] RancherServiceCreate: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string error_traceback: type: string resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string maxLength: 255 access_url: type: string nullable: true readOnly: true runtime_state: type: string maxLength: 150 namespace: type: string format: uri namespace_name: type: string readOnly: true cluster_ip: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true selector: nullable: true target_workloads: type: array items: $ref: '#/components/schemas/RancherWorkloadCreate' marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: - access_url - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - namespace_name - project - project_name - project_uuid - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - uuid RancherServiceCreateRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri error_message: type: string error_traceback: type: string backend_id: type: string maxLength: 255 runtime_state: type: string maxLength: 150 namespace: type: string format: uri cluster_ip: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true minLength: 1 selector: nullable: true target_workloads: type: array items: $ref: '#/components/schemas/RancherWorkloadCreateRequest' required: - name - project - service_settings RancherServiceRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri error_message: type: string error_traceback: type: string backend_id: type: string maxLength: 255 runtime_state: type: string maxLength: 150 namespace: type: string format: uri cluster_ip: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true minLength: 1 selector: nullable: true target_workloads: type: array items: $ref: '#/components/schemas/RancherNestedWorkloadRequest' required: - name - project - service_settings - target_workloads RancherTemplate: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true runtime_state: type: string maxLength: 150 catalog: type: string format: uri nullable: true cluster: type: string format: uri nullable: true project: type: string format: uri nullable: true icon: type: string format: uri nullable: true project_url: type: string format: uri maxLength: 500 default_version: type: string maxLength: 255 catalog_name: type: string readOnly: true versions: type: array items: type: string maxLength: 255 required: - catalog_name - created - default_version - modified - name - url - uuid - versions RancherTemplateBaseQuestion: type: object properties: label: type: string description: type: string variable: type: string required: type: boolean validate_: title: 'Validate ' type: $ref: '#/components/schemas/RancherTemplateQuestionType' default: type: string nullable: true group: type: string showIf: type: string required: - label - type - variable description: '' RancherTemplateQuestion: type: object properties: label: type: string description: type: string variable: type: string required: type: boolean validate_: title: 'Validate ' type: $ref: '#/components/schemas/RancherTemplateQuestionType' default: type: string nullable: true group: type: string showIf: type: string subquestions: type: array items: $ref: '#/components/schemas/RancherTemplateBaseQuestion' showSubquestionIf: type: string required: - label - type - variable description: '' RancherTemplateQuestionType: enum: - boolean - string - enum - secret type: string description: '' RancherUser: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true user: type: string format: uri cluster_roles: type: array items: $ref: '#/components/schemas/RancherUserClusterLink' readOnly: true project_roles: type: array items: $ref: '#/components/schemas/RancherUserProjectLink' readOnly: true settings: type: string format: uri is_active: type: boolean user_name: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true full_name: type: string readOnly: true required: - cluster_roles - full_name - project_roles - settings - url - user - user_name - uuid description: '' RancherUserClusterLink: type: object properties: cluster: type: string format: uri role: type: string format: uri cluster_name: type: string readOnly: true cluster_uuid: type: string format: uuid readOnly: true required: - cluster - cluster_name - cluster_uuid - role description: '' RancherUserProjectLink: type: object properties: project: type: string format: uri role: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true required: - project - project_name - project_uuid - role description: '' RancherWorkload: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true runtime_state: type: string maxLength: 150 cluster: type: string format: uri nullable: true cluster_uuid: type: string format: uuid readOnly: true cluster_name: type: string readOnly: true project: type: string format: uri nullable: true project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true namespace: type: string format: uri nullable: true namespace_uuid: type: string format: uuid readOnly: true namespace_name: type: string readOnly: true scale: type: integer maximum: 32767 minimum: 0 required: - cluster_name - cluster_uuid - created - modified - name - namespace_name - namespace_uuid - project_name - project_uuid - scale - url - uuid description: '' RancherWorkloadCreate: type: object properties: url: type: string format: uri required: - url description: '' RancherWorkloadCreateRequest: type: object properties: url: type: string format: uri required: - url description: '' RancherWorkloadRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 runtime_state: type: string maxLength: 150 cluster: type: string format: uri nullable: true project: type: string format: uri nullable: true namespace: type: string format: uri nullable: true scale: type: integer maximum: 32767 minimum: 0 required: - name - scale description: '' ReassignItemRequest: type: object description: '' properties: reviewer_pool_entry_uuid: type: string format: uuid description: UUID of the pool entry for the new reviewer manager_notes: type: string description: Notes to include in the reassignment notification required: - reviewer_pool_entry_uuid ReassignItemResponse: type: object description: '' properties: detail: type: string new_item_uuid: type: string format: uuid new_batch_uuid: type: string format: uuid required: - detail - new_batch_uuid - new_item_uuid ReconcileRequestRequest: type: object description: '' properties: year: type: integer maximum: 2100 minimum: 2000 month: type: integer maximum: 12 minimum: 1 settings_uuid: type: string format: uuid force: type: boolean default: false description: Force reconciliation even if not validated required: - month - year ReferenceNumberRequest: type: object properties: reference_number: type: string description: Reference number associated with the invoice. maxLength: 300 description: '' RelationshipTypeEnum: enum: - employment - consulting - equity - board - royalties - gifts - other type: string description: '' RemoteAllocation: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true node_limit: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 remote_project_identifier: type: string nullable: true description: The identifier of the project in the remote OpenPortal instance. maxLength: 64 node_usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ readOnly: true is_active: type: boolean readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] RemoteAllocationRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri node_limit: type: integer maximum: 9223372036854775807 minimum: 0 format: int64 remote_project_identifier: type: string nullable: true description: The identifier of the project in the remote OpenPortal instance. maxLength: 64 required: - name - project - service_settings RemoteAllocationSetLimits: type: object properties: node_limit: type: integer minimum: -1 required: - node_limit description: '' RemoteAllocationSetLimitsRequest: type: object properties: node_limit: type: integer minimum: -1 required: - node_limit description: '' RemoteAssociation: type: object properties: uuid: type: string format: uuid readOnly: true allocation: type: string format: uri required: - allocation - uuid description: '' RemoteCredentialsRequest: type: object properties: api_url: type: string format: uri minLength: 1 token: type: string minLength: 1 required: - api_url - token description: '' RemoteCustomer: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string readOnly: true abbreviation: type: string readOnly: true phone_number: type: string readOnly: true email: type: string readOnly: true required: - abbreviation - email - name - phone_number - uuid description: '' RemoteEduteamsRequestRequest: type: object properties: cuid: type: string minLength: 1 maxLength: 256 required: - cuid description: '' RemoteEduteamsUUID: type: object properties: uuid: type: string format: uuid required: - uuid description: '' RemoteGroup: type: object properties: id: type: string name: type: string path: type: string sub_group_count: type: integer required: - id - name - path - sub_group_count description: '' RemoteGroupMember: type: object properties: id: type: string username: type: string email: type: string first_name: type: string last_name: type: string required: - email - first_name - id - last_name - username description: '' RemoteOffering: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string readOnly: true type: type: string readOnly: true state: type: string readOnly: true category_title: type: string readOnly: true required: - category_title - name - state - type - uuid description: '' RemoteOfferingCreateRequest: type: object properties: api_url: type: string format: uri minLength: 1 token: type: string minLength: 1 remote_offering_uuid: type: string format: uuid local_category_uuid: type: string format: uuid local_customer_uuid: type: string format: uuid remote_customer_uuid: type: string format: uuid required: - api_url - local_category_uuid - local_customer_uuid - remote_customer_uuid - remote_offering_uuid - token description: '' RemoteOfferingCreateResponse: type: object properties: uuid: type: string format: uuid readOnly: true required: - uuid description: '' RemoteProjectUpdateRequest: type: object properties: uuid: type: string format: uuid readOnly: true state: type: string readOnly: true customer_name: type: string readOnly: true customer_uuid: type: string readOnly: true offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true reviewed_at: type: string format: date-time readOnly: true nullable: true description: Timestamp when the review was completed reviewed_by_full_name: type: string readOnly: true reviewed_by_uuid: type: string format: uuid readOnly: true review_comment: type: string nullable: true description: Optional comment provided during review old_name: type: string maxLength: 500 new_name: type: string maxLength: 500 old_description: type: string maxLength: 4096 new_description: type: string maxLength: 4096 old_end_date: type: string format: date nullable: true new_end_date: type: string format: date nullable: true old_oecd_fos_2007_code: type: string nullable: true maxLength: 5 old_oecd_fos_2007_label: type: string readOnly: true new_oecd_fos_2007_code: type: string nullable: true maxLength: 5 new_oecd_fos_2007_label: type: string readOnly: true old_is_industry: type: boolean nullable: true new_is_industry: type: boolean nullable: true created_by: type: integer nullable: true required: - created - customer_name - customer_uuid - new_oecd_fos_2007_label - offering_name - offering_uuid - old_oecd_fos_2007_label - reviewed_at - reviewed_by_full_name - reviewed_by_uuid - state - uuid description: '' RemoteResourceOrder: type: object description: '' properties: order_uuid: type: string format: uuid readOnly: true description: Order UUID remote_state: allOf: - $ref: '#/components/schemas/RemoteResourceOrderRemoteStateEnum' readOnly: true description: Remote order state local_state: allOf: - $ref: '#/components/schemas/OrderState' readOnly: true description: Local order state sync_status: allOf: - $ref: '#/components/schemas/SyncStatusEnum' readOnly: true description: 'Sync status: in_sync, out_of_sync, sync_failed' required: - local_state - order_uuid - remote_state - sync_status RemoteResourceOrderRemoteStateEnum: enum: - 1 - 7 - 8 - 9 - 2 - 3 - 4 - 5 - 6 type: integer description: '' RemoteResourceSyncStatus: type: object description: '' properties: local_state: allOf: - $ref: '#/components/schemas/ResourceState' readOnly: true description: Local resource state remote_state: readOnly: true nullable: true description: Remote resource state oneOf: - $ref: '#/components/schemas/RemoteResourceSyncStatusRemoteStateEnum' - $ref: '#/components/schemas/NullEnum' sync_status: allOf: - $ref: '#/components/schemas/SyncStatusEnum' readOnly: true description: 'Sync status: in_sync, out_of_sync, sync_failed' last_sync: type: string format: date-time readOnly: true nullable: true description: Last sync timestamp required: - last_sync - local_state - remote_state - sync_status RemoteResourceSyncStatusRemoteStateEnum: enum: - 1 - 2 - 3 - 4 - 5 - 6 type: integer description: '' RemoteResourceTeamMember: type: object description: '' properties: full_name: type: string readOnly: true description: Full name local_role: type: string readOnly: true description: Local role remote_role: type: string readOnly: true description: Remote role sync_status: allOf: - $ref: '#/components/schemas/SyncStatusEnum' readOnly: true description: 'Sync status: in_sync, out_of_sync, sync_failed' required: - full_name - local_role - remote_role - sync_status RemoteSynchronisation: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true api_url: type: string format: uri maxLength: 200 token: type: string maxLength: 255 remote_organization_uuid: type: string format: uuid remote_organization_name: type: string maxLength: 255 local_service_provider: type: string format: uri local_service_provider_name: type: string readOnly: true is_active: type: boolean last_execution: type: string format: date-time readOnly: true nullable: true last_output: type: string readOnly: true get_state_display: type: string readOnly: true error_message: type: string readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true remotelocalcategory_set: type: array items: $ref: '#/components/schemas/NestedRemoteLocalCategory' required: - api_url - created - error_message - get_state_display - last_execution - last_output - local_service_provider - local_service_provider_name - modified - remote_organization_name - remote_organization_uuid - remotelocalcategory_set - token - url - uuid RemoteSynchronisationRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 maxLength: 200 token: type: string minLength: 1 maxLength: 255 remote_organization_uuid: type: string format: uuid remote_organization_name: type: string minLength: 1 maxLength: 255 local_service_provider: type: string format: uri is_active: type: boolean remotelocalcategory_set: type: array items: $ref: '#/components/schemas/NestedRemoteLocalCategoryRequest' required: - api_url - local_service_provider - remote_organization_name - remote_organization_uuid - remotelocalcategory_set - token RemoveOfferingComponentRequest: type: object properties: uuid: type: string format: uuid description: UUID of the component to remove required: - uuid description: '' RemovePartitionRequest: type: object properties: partition_uuid: type: string format: uuid required: - partition_uuid description: '' RemoveSoftwareCatalogRequest: type: object properties: offering_catalog_uuid: type: string format: uuid description: UUID of the offering catalog to remove required: - offering_catalog_uuid description: '' RenewalEstimateComponent: type: object properties: component_type: type: string component_name: type: string billing_type: type: string billing_period: type: string nullable: true current_limit: type: integer new_limit: type: integer unit_price: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ measured_unit: type: string period_description: type: string total: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ required: - billing_period - billing_type - component_name - component_type - current_limit - measured_unit - new_limit - period_description - total - unit_price description: '' RenewalEstimateRequestRequest: type: object properties: extension_months: type: integer maximum: 60 minimum: 1 limits: type: object additionalProperties: type: integer minimum: 0 required: - extension_months description: '' RenewalEstimateResponse: type: object properties: components: type: array items: $ref: '#/components/schemas/RenewalEstimateComponent' subscription_total: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ limit_change_total: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ total: type: string format: decimal pattern: ^-?\d{0,12}(?:\.\d{0,10})?$ remaining_days: type: integer new_end_date: type: string format: date required: - components - limit_change_total - new_end_date - remaining_days - subscription_total - total description: '' ReplicationStats: type: object description: '' properties: is_replica: type: boolean readOnly: true description: Whether this database is a replica wal_bytes: type: integer readOnly: true nullable: true description: Write-ahead log size in bytes replication_lag_bytes: type: integer readOnly: true nullable: true description: Replication lag in bytes (only for replicas) required: - is_replica - replication_lag_bytes - wal_bytes ReportSection: type: object properties: header: type: string description: Section header text body: type: string description: Section body content required: [] description: '' ReportSectionRequest: type: object properties: header: type: string minLength: 1 description: Section header text body: type: string minLength: 1 description: Section body content required: - body - header description: '' RequestType: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 issue_type_name: type: string maxLength: 255 order: type: integer maximum: 2147483647 minimum: 0 description: Display order. First type (lowest order) is the default. required: - issue_type_name - name - url - uuid RequestTypeAdmin: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 issue_type_name: type: string maxLength: 255 backend_id: type: integer readOnly: true nullable: true description: Backend ID for synced types. Null for manually created types. backend_name: type: string readOnly: true nullable: true is_active: type: boolean description: Whether this request type is available for issue creation. order: type: integer maximum: 2147483647 minimum: 0 description: Display order. First type (lowest order) is the default. is_synced: type: boolean description: Returns True if the request type was synced from a backend. readOnly: true required: - backend_id - backend_name - is_synced - issue_type_name - name - url - uuid RequestTypeAdminRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 issue_type_name: type: string minLength: 1 maxLength: 255 is_active: type: boolean description: Whether this request type is available for issue creation. order: type: integer maximum: 2147483647 minimum: 0 description: Display order. First type (lowest order) is the default. required: - issue_type_name - name RequestTypes: enum: - Create - Update - Terminate - Restore type: string description: '' RequestedOffering: type: object description: '' properties: uuid: type: string format: uuid readOnly: true state: allOf: - $ref: '#/components/schemas/RequestedOfferingStates' readOnly: true offering: type: string format: uri offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true provider_name: type: string readOnly: true category_uuid: type: string format: uuid readOnly: true category_name: type: string readOnly: true call_managing_organisation: type: string readOnly: true attributes: {} plan: type: string format: uri nullable: true plan_details: allOf: - $ref: '#/components/schemas/BasePublicPlan' readOnly: true options: allOf: - $ref: '#/components/schemas/OfferingOptions' readOnly: true components: type: array items: $ref: '#/components/schemas/OfferingComponent' readOnly: true created: type: string format: date-time readOnly: true url: type: string readOnly: true approved_by: type: string format: uri readOnly: true nullable: true created_by: type: string format: uri readOnly: true nullable: true created_by_name: type: string readOnly: true approved_by_name: type: string readOnly: true description: type: string maxLength: 4096 required: - approved_by - approved_by_name - call_managing_organisation - category_name - category_uuid - components - created - created_by - created_by_name - offering - offering_name - offering_uuid - options - plan_details - provider_name - state - url - uuid RequestedOfferingRequest: type: object description: '' properties: offering: type: string format: uri attributes: {} plan: type: string format: uri nullable: true description: type: string maxLength: 4096 required: - offering RequestedOfferingStates: enum: - requested - accepted - canceled type: string description: '' RequestedResource: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string readOnly: true requested_offering: allOf: - $ref: '#/components/schemas/NestedRequestedOffering' readOnly: true resource: type: string format: uri readOnly: true nullable: true resource_name: type: string readOnly: true call_resource_template: type: string readOnly: true call_resource_template_name: type: string readOnly: true attributes: {} limits: {} description: type: string maxLength: 4096 created_by: type: string format: uri readOnly: true nullable: true created_by_name: type: string readOnly: true required: - call_resource_template - call_resource_template_name - created_by - created_by_name - requested_offering - resource - resource_name - url - uuid RequestedResourceRequest: type: object description: '' properties: attributes: {} limits: {} description: type: string maxLength: 4096 requested_offering_uuid: type: string format: uuid writeOnly: true call_resource_template_uuid: type: string format: uuid writeOnly: true Resource: type: object description: '' properties: offering: type: string format: uri offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true offering_description: type: string readOnly: true offering_image: type: string format: uri readOnly: true offering_thumbnail: type: string format: uri readOnly: true offering_type: type: string readOnly: true offering_shared: type: boolean description: Accessible to all customers. readOnly: true offering_billable: type: boolean description: Purchase and usage is invoiced. readOnly: true offering_plugin_options: description: Public data used by specific plugin, such as storage mode for OpenStack. readOnly: true provider_name: type: string readOnly: true provider_uuid: type: string format: uuid readOnly: true provider_slug: type: string readOnly: true category_title: type: string readOnly: true category_uuid: type: string format: uuid readOnly: true category_icon: type: string format: uri readOnly: true plan: type: string format: uri plan_unit: allOf: - $ref: '#/components/schemas/BillingUnit' readOnly: true nullable: true plan_name: type: string readOnly: true nullable: true plan_uuid: type: string format: uuid readOnly: true nullable: true plan_description: type: string readOnly: true nullable: true attributes: type: object additionalProperties: {} readOnly: true limits: type: object additionalProperties: type: integer readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true url: type: string format: uri readOnly: true scope: type: string readOnly: true description: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/ResourceState' readOnly: true resource_uuid: type: string format: uuid readOnly: true nullable: true backend_id: type: string readOnly: true effective_id: type: string readOnly: true resource_type: type: string nullable: true readOnly: true project: type: string format: uri readOnly: true project_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true project_description: type: string readOnly: true project_end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, all project resource will be scheduled for termination. readOnly: true project_end_date_requested_by: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true offering_slug: type: string readOnly: true parent_offering_uuid: type: string format: uuid readOnly: true parent_offering_name: type: string readOnly: true parent_offering_slug: type: string readOnly: true offering_backend_id: type: string readOnly: true parent_uuid: type: string format: uuid readOnly: true parent_name: type: string readOnly: true backend_metadata: allOf: - $ref: '#/components/schemas/BackendMetadata' readOnly: true is_usage_based: type: boolean description: Returns True if the resource has usage-based components that track variable consumption. readOnly: true is_limit_based: type: boolean description: Returns True if the resource has limit-based components with user-adjustable quotas. readOnly: true name: type: string maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ current_usages: type: object additionalProperties: type: number format: double description: Dictionary mapping component types to their latest reported usage amounts. readOnly: true can_terminate: type: boolean readOnly: true report: type: array items: $ref: '#/components/schemas/ReportSection' readOnly: true end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, a resource will be scheduled for termination. end_date_requested_by: type: string format: uri readOnly: true nullable: true username: type: string nullable: true readOnly: true limit_usage: type: object additionalProperties: type: number format: double description: Dictionary mapping limit-based component types to their consumed usage. For monthly periods, maps from current_usages; for longer periods, aggregates historical usage. readOnly: true downscaled: type: boolean restrict_member_access: type: boolean readOnly: true paused: type: boolean endpoints: type: array items: $ref: '#/components/schemas/NestedEndpoint' readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true options: readOnly: true nullable: true available_actions: type: array items: type: string readOnly: true last_sync: type: string format: date-time readOnly: true order_in_progress: allOf: - $ref: '#/components/schemas/OrderDetails' readOnly: true nullable: true creation_order: allOf: - $ref: '#/components/schemas/OrderDetails' readOnly: true nullable: true service_settings_uuid: type: string format: uuid readOnly: true project_slug: type: string readOnly: true customer_slug: type: string readOnly: true user_requires_reconsent: type: boolean description: Check if the current user needs to re-consent for this resource's offering. readOnly: true renewal_date: type: object additionalProperties: type: string format: date nullable: true readOnly: true offering_state: allOf: - $ref: '#/components/schemas/OfferingState' readOnly: true offering_components: type: array items: $ref: '#/components/schemas/OfferingComponent' readOnly: true required: [] ResourceBackendIDRequest: type: object properties: backend_id: type: string maxLength: 255 description: '' ResourceBackendMetadataRequest: type: object properties: backend_metadata: {} required: - backend_metadata description: '' ResourceDownscaledRequest: type: object properties: downscaled: type: boolean description: '' ResourceEndDateByProviderRequest: type: object properties: end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, a resource will be scheduled for termination. description: '' ResourceKeycloakScopesRequest: type: object properties: keycloak_available_scopes: type: array items: $ref: '#/components/schemas/KeycloakScopeOptionRequest' description: Pre-configured scope options for this resource. required: - keycloak_available_scopes description: '' ResourceLimitPeriod: type: object properties: start: type: string description: Start date of the resource limit period end: type: string description: End date of the resource limit period quantity: type: integer description: Quantity of resources consumed during this period billing_periods: type: integer description: Number of billing periods total: type: string description: Total amount for this period required: [] description: '' ResourceMissingUsage: type: object description: '' properties: uuid: type: string format: uuid description: UUID of the resource name: type: string description: Name of the resource state: type: string description: Current state of the resource created: type: string format: date-time description: Creation date of the resource offering_name: type: string description: Name of the offering offering_uuid: type: string format: uuid description: UUID of the offering provider_name: type: string description: Name of the service provider provider_uuid: type: string format: uuid description: UUID of the service provider customer_name: type: string description: Name of the customer organization customer_uuid: type: string format: uuid description: UUID of the customer organization project_name: type: string description: Name of the project project_uuid: type: string format: uuid description: UUID of the project last_usage_date: type: string format: date-time nullable: true description: Date of the last usage report days_since_last_report: type: integer nullable: true description: Number of days since last usage report required: - created - customer_name - customer_uuid - days_since_last_report - last_usage_date - name - offering_name - offering_uuid - project_name - project_uuid - provider_name - provider_uuid - state - uuid ResourceOffering: type: object properties: name: type: string maxLength: 150 uuid: type: string format: uuid readOnly: true required: - name - uuid description: '' ResourceOptionsRequest: type: object properties: options: nullable: true description: '' ResourcePausedRequest: type: object properties: paused: type: boolean description: '' ResourcePlanPeriod: type: object properties: uuid: type: string format: uuid readOnly: true plan_name: type: string readOnly: true plan_uuid: type: string format: uuid readOnly: true start: type: string format: date-time nullable: true end: type: string format: date-time nullable: true components: type: array items: $ref: '#/components/schemas/BaseComponentUsage' required: - components - plan_name - plan_uuid - uuid description: '' ResourceProvisioningStats: type: object properties: offering_uuid: type: string format: uuid readOnly: true description: UUID of the offering offering_name: type: string readOnly: true description: Name of the offering service_provider_uuid: type: string format: uuid readOnly: true description: UUID of the service provider service_provider_name: type: string readOnly: true description: Name of the service provider provisioning_count: type: integer readOnly: true description: Total finished provisioning attempts (DONE + ERRED) provisioning_success_count: type: integer readOnly: true description: Total successful provisioning attempts (DONE) provisioning_error_count: type: integer readOnly: true description: Total failed provisioning attempts (ERRED) provisioning_in_progress_count: type: integer readOnly: true description: Total currently in-progress provisioning attempts provisioning_success_rate: type: number format: double readOnly: true description: Rate of successful provisioning (0.0 to 1.0) avg_provisioning_duration: type: number format: double readOnly: true description: Average duration in seconds from Executing to Terminal state avg_pending_duration: type: number format: double readOnly: true description: Average duration in seconds from Creation to Executing state required: - avg_pending_duration - avg_provisioning_duration - offering_name - offering_uuid - provisioning_count - provisioning_error_count - provisioning_in_progress_count - provisioning_success_count - provisioning_success_rate - service_provider_name - service_provider_uuid description: '' ResourceReallocateLimitsRequest: type: object properties: limits: type: object additionalProperties: type: integer minimum: 1 targets: type: array items: $ref: '#/components/schemas/ResourceReallocateTargetRequest' required: - limits - targets description: '' ResourceReallocateLimitsResponse: type: object properties: source_order_uuid: type: string format: uuid readOnly: true description: UUID of the source order for limit reallocation target_order_uuids: type: array items: type: string format: uuid readOnly: true description: List of UUIDs for target orders receiving the reallocated limits required: - source_order_uuid - target_order_uuids description: '' ResourceReallocateTargetRequest: type: object properties: resource_uuid: type: string format: uuid allocated_limits: type: object additionalProperties: type: integer minimum: 1 required: - allocated_limits - resource_uuid description: '' ResourceRenewRequest: type: object description: '' properties: extension_months: type: integer maximum: 60 minimum: 12 description: Number of months to extend the subscription by. limits: type: object additionalProperties: type: integer minimum: 0 description: Optional new limits for the resource. Supports upgrades only. request_comment: type: string description: Optional comment for the renewal request. maxLength: 255 attachment: type: string format: binary description: Optional PDF attachment for the renewal request. required: - extension_months ResourceReportRequest: type: object properties: report: type: array items: $ref: '#/components/schemas/ReportSectionRequest' required: - report description: '' ResourceRequest: type: object description: '' properties: offering: type: string format: uri plan: type: string format: uri name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, a resource will be scheduled for termination. downscaled: type: boolean paused: type: boolean required: - name - offering ResourceResponseStatus: type: object properties: status: type: string readOnly: true description: Status of the resource response required: - status description: '' ResourceRestrictMemberAccessRequest: type: object properties: restrict_member_access: type: boolean description: '' ResourceSetLimitsRequest: type: object properties: limits: description: Dictionary mapping component types to their new limit values required: - limits description: '' ResourceSetStateErredRequest: type: object properties: error_message: type: string error_traceback: type: string description: '' ResourceSlugRequest: type: object properties: slug: type: string minLength: 1 maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ required: - slug description: '' ResourceState: enum: - Creating - OK - Erred - Updating - Terminating - Terminated type: string description: '' ResourceSuggestNameRequest: type: object properties: project: type: string format: uuid offering: type: string format: uuid plan: type: string format: uuid nullable: true attributes: {} required: - offering - project description: '' ResourceSwitchPlanRequest: type: object properties: plan: type: string format: uri required: - plan description: '' ResourceTerminateRequest: type: object properties: attributes: title: Termination attributes description: Optional attributes/parameters to pass to the termination operation description: '' ResourceUpdate: type: object properties: name: type: string maxLength: 150 description: type: string maxLength: 4096 end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, a resource will be scheduled for termination. required: - name description: '' ResourceUpdateLimitsRequest: type: object properties: limits: type: object additionalProperties: type: integer minimum: 0 request_comment: type: string nullable: true maxLength: 255 required: - limits description: '' ResourceUpdateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 end_date: type: string format: date nullable: true description: The date is inclusive. Once reached, a resource will be scheduled for termination. required: - name description: '' ResourceUsageByAffiliation: type: object description: '' properties: affiliation: type: string description: User affiliation value component_type: type: string description: Component type total_usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Total usage total_cost: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Total cost resource_count: type: integer description: Number of resources required: - affiliation - component_type - resource_count - total_cost - total_usage ResourceUsageByCustomer: type: object description: '' properties: customer_uuid: type: string format: uuid description: UUID of the customer customer_name: type: string description: Name of the customer customer_abbreviation: type: string nullable: true description: Abbreviation of the customer resources_ok: type: integer description: Number of OK resources resources_erred: type: integer description: Number of erred resources resources_total: type: integer description: Total number of active resources total_cost: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Total cost of resources usages: type: object additionalProperties: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Component usages keyed by component type limits: type: object additionalProperties: type: integer description: Resource limits keyed by limit name required: - customer_abbreviation - customer_name - customer_uuid - limits - resources_erred - resources_ok - resources_total - total_cost - usages ResourceUsageByOrgType: type: object description: '' properties: organization_type: type: string nullable: true description: SCHAC organization type URN component_type: type: string description: Component type (e.g., cpu, gpu) usage: type: string format: decimal pattern: ^-?\d{0,18}(?:\.\d{0,2})?$ description: Total usage for this component resource_count: type: integer description: Number of resources required: - component_type - organization_type - resource_count - usage ResourceUser: type: object properties: uuid: type: string format: uuid readOnly: true resource: type: string format: uri role: type: string format: uri user: type: string format: uri resource_uuid: type: string format: uuid readOnly: true role_uuid: type: string format: uuid readOnly: true user_uuid: type: string format: uuid readOnly: true resource_name: type: string readOnly: true role_name: type: string readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_full_name: type: string readOnly: true required: - resource - resource_name - resource_uuid - role - role_name - role_uuid - user - user_full_name - user_username - user_uuid - uuid description: '' ResourceUserRequest: type: object properties: resource: type: string format: uri role: type: string format: uri user: type: string format: uri required: - resource - role - user description: '' ResourcesGeographySummary: type: object description: '' properties: total_resources: type: integer description: Total number of active resources countries_count: type: integer description: Number of countries with active resources org_groups_count: type: integer description: Number of organization groups with active resources offerings_count: type: integer description: Number of offerings with active resources required: - countries_count - offerings_count - org_groups_count - total_resources ResourcesLimits: type: object properties: offering_uuid: type: string format: uuid readOnly: true description: UUID of the offering name: type: string readOnly: true description: Name of the limit value: type: integer readOnly: true description: Limit value offering_country: type: string readOnly: true description: Country of the offering organization_group_name: type: string readOnly: true description: Name of the organization group organization_group_uuid: type: string readOnly: true description: UUID of the organization group required: - name - offering_country - offering_uuid - organization_group_name - organization_group_uuid - value description: '' ReviewCommentRequest: type: object properties: comment: type: string minLength: 1 description: Optional comment for review description: '' ReviewStrategyEnum: enum: - after_round - after_proposal type: string description: '' ReviewSubmitRequest: type: object properties: summary_score: type: integer maximum: 32767 minimum: 0 summary_public_comment: type: string summary_private_comment: type: string description: '' ReviewerAffiliation: type: object description: '' properties: uuid: type: string format: uuid readOnly: true organization: type: string format: uuid nullable: true organization_name: type: string description: Organization name (used when not linked to Waldur org) maxLength: 255 organization_name_display: type: string description: Return organization name from linked Customer or from the text field. readOnly: true organization_identifier: type: string description: ROR, GRID, or other external identifier maxLength: 100 department: type: string maxLength: 255 position_title: type: string maxLength: 255 start_date: type: string format: date nullable: true end_date: type: string format: date nullable: true description: Leave empty for current affiliation is_primary: type: boolean affiliation_type: $ref: '#/components/schemas/AffiliationTypeEnum' created: type: string format: date-time readOnly: true required: - created - organization_name - organization_name_display - uuid ReviewerAffiliationRequest: type: object description: '' properties: organization: type: string format: uuid nullable: true organization_name: type: string minLength: 1 description: Organization name (used when not linked to Waldur org) maxLength: 255 organization_identifier: type: string description: ROR, GRID, or other external identifier maxLength: 100 department: type: string maxLength: 255 position_title: type: string maxLength: 255 start_date: type: string format: date nullable: true end_date: type: string format: date nullable: true description: Leave empty for current affiliation is_primary: type: boolean affiliation_type: $ref: '#/components/schemas/AffiliationTypeEnum' required: - organization_name ReviewerBid: type: object description: '' properties: uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true reviewer: type: string format: uri readOnly: true reviewer_uuid: type: string format: uuid readOnly: true reviewer_name: type: string readOnly: true proposal: type: string format: uri proposal_uuid: type: string format: uuid readOnly: true proposal_name: type: string readOnly: true bid: allOf: - $ref: '#/components/schemas/BidEnum' description: Reviewer's preference for reviewing this proposal bid_display: type: string readOnly: true comment: type: string description: Optional comment explaining the bid submitted_at: type: string format: date-time readOnly: true modified_at: type: string format: date-time readOnly: true required: - bid - bid_display - call - call_uuid - modified_at - proposal - proposal_name - proposal_uuid - reviewer - reviewer_name - reviewer_uuid - submitted_at - uuid ReviewerBidRequest: type: object description: '' properties: proposal: type: string format: uri bid: allOf: - $ref: '#/components/schemas/BidEnum' description: Reviewer's preference for reviewing this proposal comment: type: string description: Optional comment explaining the bid required: - bid - proposal ReviewerBidSubmitRequest: type: object description: '' properties: proposal_uuid: type: string format: uuid bid: $ref: '#/components/schemas/BidEnum' comment: type: string default: '' required: - bid - proposal_uuid ReviewerBulkBidRequest: type: object description: '' properties: bids: type: array items: $ref: '#/components/schemas/ReviewerBidSubmitRequest' required: - bids ReviewerExpertise: type: object description: '' properties: uuid: type: string format: uuid readOnly: true expertise_keyword: type: string description: Free-text keyword maxLength: 100 expertise_category: type: string format: uuid nullable: true expertise_category_name: type: string readOnly: true proficiency_level: $ref: '#/components/schemas/ProficiencyLevelEnum' years_experience: type: integer maximum: 2147483647 minimum: 0 nullable: true last_active_date: type: string format: date nullable: true description: When last worked in this area created: type: string format: date-time readOnly: true required: - created - expertise_category_name - expertise_keyword - uuid ReviewerExpertiseRequest: type: object description: '' properties: expertise_keyword: type: string minLength: 1 description: Free-text keyword maxLength: 100 expertise_category: type: string format: uuid nullable: true proficiency_level: $ref: '#/components/schemas/ProficiencyLevelEnum' years_experience: type: integer maximum: 2147483647 minimum: 0 nullable: true last_active_date: type: string format: date nullable: true description: When last worked in this area required: - expertise_keyword ReviewerInvitationRequest: type: object description: '' properties: reviewer_uuids: type: array items: type: string format: uuid description: List of reviewer profile UUIDs to invite max_assignments: type: integer minimum: 1 default: 5 invitation_message: type: string description: Custom message to include in invitation email required: - reviewer_uuids ReviewerProfile: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true user: type: string format: uri readOnly: true user_uuid: type: string format: uuid readOnly: true user_full_name: type: string readOnly: true user_email: type: string format: email title: Email address readOnly: true orcid_id: type: string nullable: true description: 'ORCID identifier (format: 0000-0000-0000-0000)' maxLength: 19 orcid_connected: type: boolean description: Check if ORCID is connected (has access token). readOnly: true orcid_last_sync: type: string format: date-time readOnly: true nullable: true biography: type: string description: Professional biography / summary alternative_names: description: List of name variants used in publications affiliations: type: array items: $ref: '#/components/schemas/ReviewerAffiliation' readOnly: true expertise_set: type: array items: $ref: '#/components/schemas/ReviewerExpertise' readOnly: true publications: type: array items: $ref: '#/components/schemas/ReviewerPublication' readOnly: true stats: allOf: - $ref: '#/components/schemas/ReviewerStats' readOnly: true profile_completeness: type: object additionalProperties: {} description: Calculate profile completeness percentage and missing fields. readOnly: true is_published: type: boolean readOnly: true description: Whether profile is discoverable by call managers published_at: type: string format: date-time readOnly: true nullable: true description: When the profile was published available_for_reviews: type: boolean description: Whether reviewer is currently accepting review requests created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - affiliations - created - expertise_set - is_published - modified - orcid_connected - orcid_last_sync - profile_completeness - publications - published_at - stats - url - user - user_email - user_full_name - user_uuid - uuid ReviewerProfileCreateRequest: type: object description: '' properties: orcid_id: type: string nullable: true description: 'ORCID identifier (format: 0000-0000-0000-0000)' maxLength: 19 biography: type: string description: Professional biography / summary alternative_names: description: List of name variants used in publications available_for_reviews: type: boolean description: Whether reviewer is currently accepting review requests ReviewerProfileRequest: type: object description: '' properties: orcid_id: type: string nullable: true description: 'ORCID identifier (format: 0000-0000-0000-0000)' maxLength: 19 biography: type: string description: Professional biography / summary alternative_names: description: List of name variants used in publications available_for_reviews: type: boolean description: Whether reviewer is currently accepting review requests ReviewerPublication: type: object description: '' properties: uuid: type: string format: uuid readOnly: true title: type: string maxLength: 500 doi: type: string nullable: true description: Digital Object Identifier maxLength: 100 publication_year: type: integer maximum: 2147483647 minimum: 0 venue: type: string description: Journal or conference name maxLength: 255 venue_type: $ref: '#/components/schemas/VenueTypeEnum' abstract: type: string coauthors: description: List of co-author names and identifiers external_ids: description: 'External identifiers: {"semantic_scholar": "...", "pubmed": "..."}' is_excluded_from_matching: type: boolean description: User can exclude old papers from expertise matching created: type: string format: date-time readOnly: true required: - created - publication_year - title - uuid - venue ReviewerPublicationRequest: type: object description: '' properties: title: type: string minLength: 1 maxLength: 500 doi: type: string nullable: true description: Digital Object Identifier maxLength: 100 publication_year: type: integer maximum: 2147483647 minimum: 0 venue: type: string minLength: 1 description: Journal or conference name maxLength: 255 venue_type: $ref: '#/components/schemas/VenueTypeEnum' abstract: type: string coauthors: description: List of co-author names and identifiers external_ids: description: 'External identifiers: {"semantic_scholar": "...", "pubmed": "..."}' is_excluded_from_matching: type: boolean description: User can exclude old papers from expertise matching required: - publication_year - title - venue ReviewerStats: type: object description: '' properties: uuid: type: string format: uuid readOnly: true total_reviews_completed: type: integer readOnly: true total_reviews_declined: type: integer readOnly: true total_reviews_timeout: type: integer readOnly: true average_review_time_days: type: number format: double readOnly: true nullable: true average_score_given: type: number format: double readOnly: true nullable: true last_review_date: type: string format: date readOnly: true nullable: true quality_rating: type: number format: double readOnly: true nullable: true quality_rating_count: type: integer readOnly: true required: - average_review_time_days - average_score_given - last_review_date - quality_rating - quality_rating_count - total_reviews_completed - total_reviews_declined - total_reviews_timeout - uuid ReviewerSuggestion: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true call: type: string format: uri readOnly: true call_uuid: type: string format: uuid readOnly: true call_name: type: string readOnly: true reviewer: type: string format: uri readOnly: true reviewer_uuid: type: string format: uuid readOnly: true reviewer_name: type: string readOnly: true reviewer_email: type: string format: email title: Email address readOnly: true reviewer_biography: type: string description: Professional biography / summary readOnly: true affinity_score: type: number format: double readOnly: true description: Combined affinity score (0-1) keyword_score: type: number format: double readOnly: true nullable: true description: Keyword matching score text_score: type: number format: double readOnly: true nullable: true description: TF-IDF text similarity score status: $ref: '#/components/schemas/ReviewerSuggestionStatusEnum' status_display: type: string readOnly: true reviewed_by: type: string format: uri readOnly: true nullable: true reviewed_by_name: type: string readOnly: true reviewed_at: type: string format: date-time readOnly: true nullable: true rejection_reason: type: string matched_keywords: readOnly: true description: Keywords from reviewer's expertise that matched the source text top_matching_proposals: readOnly: true description: 'Top proposals with highest affinity: [{uuid, name, slug, affinity}, ...]' source_type: allOf: - $ref: '#/components/schemas/SourceTypeEnum' readOnly: true description: What content was used to generate this suggestion source_type_display: type: string readOnly: true created: type: string format: date-time readOnly: true required: - affinity_score - call - call_name - call_uuid - created - keyword_score - matched_keywords - reviewed_at - reviewed_by - reviewed_by_name - reviewer - reviewer_biography - reviewer_email - reviewer_name - reviewer_uuid - source_type - source_type_display - status_display - text_score - top_matching_proposals - url - uuid ReviewerSuggestionRequest: type: object description: '' properties: status: $ref: '#/components/schemas/ReviewerSuggestionStatusEnum' rejection_reason: type: string ReviewerSuggestionStatusEnum: enum: - pending - confirmed - rejected - invited type: string description: '' RmqClientProperties: type: object description: '' properties: product: type: string readOnly: true nullable: true description: Client product name (e.g., 'pika', 'amqp-client') version: type: string readOnly: true nullable: true description: Client library version platform: type: string readOnly: true nullable: true description: Client platform (e.g., 'Python 3.11') required: - platform - product - version RmqEnrichedConnection: type: object description: '' properties: source_ip: type: string readOnly: true description: Client IP address vhost: type: string readOnly: true description: Virtual host name connected_at: type: string format: date-time readOnly: true nullable: true description: Connection establishment timestamp state: type: string readOnly: true description: 'Connection state: ''running'', ''blocked'', ''blocking''' recv_oct: type: integer readOnly: true description: Bytes received on this connection send_oct: type: integer readOnly: true description: Bytes sent on this connection channels: type: integer readOnly: true description: Number of channels on this connection timeout: type: integer readOnly: true nullable: true description: Heartbeat timeout in seconds client_properties: allOf: - $ref: '#/components/schemas/RmqClientProperties' readOnly: true nullable: true description: Client identification properties required: - channels - client_properties - connected_at - recv_oct - send_oct - source_ip - state - timeout - vhost RmqEnrichedUserStatsItem: type: object description: '' properties: username: type: string readOnly: true description: RabbitMQ username (corresponds to EventSubscription UUID) connections: type: array items: $ref: '#/components/schemas/RmqEnrichedConnection' readOnly: true description: List of active connections with detailed statistics required: - connections - username RmqListener: type: object description: '' properties: protocol: type: string readOnly: true description: Protocol name (e.g., 'amqp', 'http', 'clustering') port: type: integer readOnly: true description: Listening port number required: - port - protocol RmqMessageStats: type: object description: '' properties: publish: type: integer readOnly: true description: Total messages published publish_rate: type: number format: double readOnly: true description: Messages published per second deliver: type: integer readOnly: true description: Total messages delivered to consumers deliver_rate: type: number format: double readOnly: true description: Messages delivered per second confirm: type: integer readOnly: true description: Total messages confirmed by broker confirm_rate: type: number format: double readOnly: true description: Messages confirmed per second ack: type: integer readOnly: true description: Total messages acknowledged by consumers ack_rate: type: number format: double readOnly: true description: Messages acknowledged per second required: - ack - ack_rate - confirm - confirm_rate - deliver - deliver_rate - publish - publish_rate RmqObjectTotals: type: object description: '' properties: connections: type: integer readOnly: true description: Total active connections channels: type: integer readOnly: true description: Total active channels exchanges: type: integer readOnly: true description: Total exchanges queues: type: integer readOnly: true description: Total queues consumers: type: integer readOnly: true description: Total active consumers required: - channels - connections - consumers - exchanges - queues RmqOverview: type: object description: '' properties: cluster_name: type: string readOnly: true description: Name of the RabbitMQ cluster rabbitmq_version: type: string readOnly: true description: RabbitMQ server version erlang_version: type: string readOnly: true description: Erlang/OTP runtime version message_stats: allOf: - $ref: '#/components/schemas/RmqMessageStats' readOnly: true description: Message throughput statistics with rates queue_totals: allOf: - $ref: '#/components/schemas/RmqQueueTotals' readOnly: true description: Global queue message counts object_totals: allOf: - $ref: '#/components/schemas/RmqObjectTotals' readOnly: true description: Counts of connections, channels, queues, etc. node: type: string readOnly: true description: Current RabbitMQ node name listeners: type: array items: $ref: '#/components/schemas/RmqListener' readOnly: true description: Active protocol listeners required: - cluster_name - erlang_version - listeners - message_stats - node - object_totals - queue_totals - rabbitmq_version RmqPurgeRequestRequest: type: object description: '' properties: vhost: type: string minLength: 1 description: Virtual host name containing the queue(s) queue_name: type: string minLength: 1 description: Specific queue name (requires vhost) queue_pattern: type: string minLength: 1 description: Glob pattern to match queue names (e.g., '*_resource'). Requires vhost. purge_all_subscription_queues: type: boolean default: false description: If true, purge all subscription queues across all vhosts delete_queue: type: boolean default: false description: If true, delete the queue(s) entirely instead of just purging messages delete_all_subscription_queues: type: boolean default: false description: If true, delete all subscription queues across all vhosts RmqPurgeResponse: type: object description: '' properties: purged_queues: type: integer readOnly: true description: Number of queues that were purged purged_messages: type: integer readOnly: true description: Total number of messages that were purged deleted_queues: type: integer readOnly: true description: Number of queues that were deleted required: - deleted_queues - purged_messages - purged_queues RmqQueueStats: type: object description: '' properties: name: type: string readOnly: true description: Queue name (e.g., 'subscription_{uuid}_offering_{uuid}_{type}') messages: type: integer readOnly: true description: Total number of messages in the queue messages_ready: type: integer readOnly: true description: Number of messages ready for delivery messages_unacknowledged: type: integer readOnly: true description: Number of messages awaiting acknowledgement consumers: type: integer readOnly: true description: Number of active consumers for this queue subscription_uuid: type: string readOnly: true nullable: true description: Parsed subscription UUID from queue name offering_uuid: type: string readOnly: true nullable: true description: Parsed offering UUID from queue name object_type: type: string readOnly: true nullable: true description: Parsed object type from queue name (e.g., 'resource', 'order') message_ttl: type: integer readOnly: true nullable: true description: Message TTL in milliseconds max_length: type: integer readOnly: true nullable: true description: Maximum number of messages in queue max_length_bytes: type: integer readOnly: true nullable: true description: Maximum total size of messages in bytes expires: type: integer readOnly: true nullable: true description: Queue TTL - auto-delete after idle in milliseconds overflow: type: string readOnly: true nullable: true description: 'Behavior when full: ''drop-head'', ''reject-publish'', or ''reject-publish-dlx''' dead_letter_exchange: type: string readOnly: true nullable: true description: Dead letter exchange name dead_letter_routing_key: type: string readOnly: true nullable: true description: Dead letter routing key max_priority: type: integer readOnly: true nullable: true description: Maximum priority level (1-255) queue_mode: type: string readOnly: true nullable: true description: 'Queue mode: ''default'' or ''lazy''' queue_type: type: string readOnly: true nullable: true description: 'Queue type: ''classic'', ''quorum'', or ''stream''' required: - consumers - dead_letter_exchange - dead_letter_routing_key - expires - max_length - max_length_bytes - max_priority - message_ttl - messages - messages_ready - messages_unacknowledged - name - object_type - offering_uuid - overflow - queue_mode - queue_type - subscription_uuid RmqQueueTotals: type: object description: '' properties: messages: type: integer readOnly: true description: Total messages across all queues messages_ready: type: integer readOnly: true description: Messages ready for delivery messages_unacknowledged: type: integer readOnly: true description: Messages awaiting acknowledgement required: - messages - messages_ready - messages_unacknowledged RmqStatsError: type: object description: '' properties: error: type: string readOnly: true description: Error message describing what went wrong required: - error RmqStatsResponse: type: object description: '' properties: vhosts: type: array items: $ref: '#/components/schemas/RmqVhostStats' readOnly: true description: List of vhosts with their subscription queues total_messages: type: integer readOnly: true description: Total messages across all subscription queues total_queues: type: integer readOnly: true description: Total number of subscription queues required: - total_messages - total_queues - vhosts RmqStatsUser: type: object description: '' properties: uuid: type: string readOnly: true description: Waldur user UUID username: type: string readOnly: true description: Waldur username full_name: type: string readOnly: true description: User's full name required: - full_name - username - uuid RmqSubscription: type: object properties: created: type: string format: date-time readOnly: true uuid: type: string format: uuid readOnly: true source_ip: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 readOnly: true required: - created - source_ip - uuid description: '' RmqVHostStatsItem: type: object properties: name: type: string readOnly: true waldur_user: allOf: - $ref: '#/components/schemas/RmqWaldurUser' readOnly: true subscriptions: type: array items: $ref: '#/components/schemas/RmqSubscription' readOnly: true required: - name - subscriptions - waldur_user description: '' RmqVhostStats: type: object description: '' properties: name: type: string readOnly: true description: Virtual host name (corresponds to Waldur user UUID) user: allOf: - $ref: '#/components/schemas/RmqStatsUser' readOnly: true nullable: true description: Waldur user associated with this vhost queues: type: array items: $ref: '#/components/schemas/RmqQueueStats' readOnly: true description: List of subscription queues in this vhost total_messages: type: integer readOnly: true description: Total messages across all queues in this vhost required: - name - queues - total_messages - user RmqWaldurUser: type: object properties: full_name: type: string readOnly: true username: type: string readOnly: true email: type: string format: email readOnly: true required: - email - full_name - username description: '' RobotAccount: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true username: type: string maxLength: 32 description: type: string error_message: type: string readOnly: true error_traceback: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/RobotAccountStates' readOnly: true resource: type: string format: uri type: type: string description: Type of the robot account. maxLength: 5 users: type: array items: type: string format: uri description: Users who have access to this robot account. keys: {} backend_id: type: string readOnly: true fingerprints: type: array items: $ref: '#/components/schemas/Fingerprint' readOnly: true responsible_user: type: string format: uri nullable: true required: - backend_id - created - fingerprints - modified - resource - type - url - uuid description: '' RobotAccountDetails: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true username: type: string maxLength: 32 description: type: string error_message: type: string readOnly: true error_traceback: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/RobotAccountStates' readOnly: true resource: type: string format: uri type: type: string description: Type of the robot account. maxLength: 5 users: type: array items: $ref: '#/components/schemas/BasicUser' readOnly: true keys: {} backend_id: type: string readOnly: true fingerprints: type: array items: $ref: '#/components/schemas/Fingerprint' readOnly: true responsible_user: allOf: - $ref: '#/components/schemas/BasicUser' readOnly: true nullable: true user_keys: type: array items: $ref: '#/components/schemas/SshKey' readOnly: true resource_name: type: string readOnly: true resource_uuid: type: string format: uuid readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true provider_uuid: type: string format: uuid readOnly: true provider_name: type: string readOnly: true offering_plugin_options: allOf: - $ref: '#/components/schemas/MergedPluginOptions' readOnly: true required: [] RobotAccountErrorRequest: type: object properties: error_message: type: string minLength: 1 description: Error message to be saved to the robot account description: '' RobotAccountRequest: type: object properties: username: type: string maxLength: 32 description: type: string resource: type: string format: uri type: type: string minLength: 1 description: Type of the robot account. maxLength: 5 users: type: array items: type: string format: uri description: Users who have access to this robot account. keys: {} responsible_user: type: string format: uri nullable: true required: - resource - type description: '' RobotAccountStates: enum: - Requested - Creating - OK - Requested deletion - Deleted - Error type: string description: '' RoleDescription: type: object properties: description: type: string maxLength: 4096 description_en: type: string nullable: true title: Description [en] maxLength: 4096 description_et: type: string nullable: true title: Description [et] maxLength: 4096 description_lt: type: string nullable: true title: Description [lt] maxLength: 4096 description_lv: type: string nullable: true title: Description [lv] maxLength: 4096 description_ru: type: string nullable: true title: Description [ru] maxLength: 4096 description_it: type: string nullable: true title: Description [it] maxLength: 4096 description_de: type: string nullable: true title: Description [de] maxLength: 4096 description_da: type: string nullable: true title: Description [da] maxLength: 4096 description_sv: type: string nullable: true title: Description [sv] maxLength: 4096 description_es: type: string nullable: true title: Description [es] maxLength: 4096 description_fr: type: string nullable: true title: Description [fr] maxLength: 4096 description_nb: type: string nullable: true title: Description [nb] maxLength: 4096 description_ar: type: string nullable: true title: Description [ar] maxLength: 4096 description_cs: type: string nullable: true title: Description [cs] maxLength: 4096 description: '' RoleDescriptionRequest: type: object properties: description: type: string maxLength: 4096 description_en: type: string nullable: true title: Description [en] maxLength: 4096 description_et: type: string nullable: true title: Description [et] maxLength: 4096 description_lt: type: string nullable: true title: Description [lt] maxLength: 4096 description_lv: type: string nullable: true title: Description [lv] maxLength: 4096 description_ru: type: string nullable: true title: Description [ru] maxLength: 4096 description_it: type: string nullable: true title: Description [it] maxLength: 4096 description_de: type: string nullable: true title: Description [de] maxLength: 4096 description_da: type: string nullable: true title: Description [da] maxLength: 4096 description_sv: type: string nullable: true title: Description [sv] maxLength: 4096 description_es: type: string nullable: true title: Description [es] maxLength: 4096 description_fr: type: string nullable: true title: Description [fr] maxLength: 4096 description_nb: type: string nullable: true title: Description [nb] maxLength: 4096 description_ar: type: string nullable: true title: Description [ar] maxLength: 4096 description_cs: type: string nullable: true title: Description [cs] maxLength: 4096 description: '' RoleDetails: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 description_en: type: string nullable: true title: Description [en] maxLength: 4096 description_et: type: string nullable: true title: Description [et] maxLength: 4096 description_lt: type: string nullable: true title: Description [lt] maxLength: 4096 description_lv: type: string nullable: true title: Description [lv] maxLength: 4096 description_ru: type: string nullable: true title: Description [ru] maxLength: 4096 description_it: type: string nullable: true title: Description [it] maxLength: 4096 description_de: type: string nullable: true title: Description [de] maxLength: 4096 description_da: type: string nullable: true title: Description [da] maxLength: 4096 description_sv: type: string nullable: true title: Description [sv] maxLength: 4096 description_es: type: string nullable: true title: Description [es] maxLength: 4096 description_fr: type: string nullable: true title: Description [fr] maxLength: 4096 description_nb: type: string nullable: true title: Description [nb] maxLength: 4096 description_ar: type: string nullable: true title: Description [ar] maxLength: 4096 description_cs: type: string nullable: true title: Description [cs] maxLength: 4096 permissions: type: array items: type: string readOnly: true is_system_role: type: boolean readOnly: true is_active: type: boolean users_count: type: integer readOnly: true content_type: allOf: - $ref: '#/components/schemas/RoleType' readOnly: true required: [] RoleModifyRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 description_en: type: string nullable: true title: Description [en] maxLength: 4096 description_et: type: string nullable: true title: Description [et] maxLength: 4096 description_lt: type: string nullable: true title: Description [lt] maxLength: 4096 description_lv: type: string nullable: true title: Description [lv] maxLength: 4096 description_ru: type: string nullable: true title: Description [ru] maxLength: 4096 description_it: type: string nullable: true title: Description [it] maxLength: 4096 description_de: type: string nullable: true title: Description [de] maxLength: 4096 description_da: type: string nullable: true title: Description [da] maxLength: 4096 description_sv: type: string nullable: true title: Description [sv] maxLength: 4096 description_es: type: string nullable: true title: Description [es] maxLength: 4096 description_fr: type: string nullable: true title: Description [fr] maxLength: 4096 description_nb: type: string nullable: true title: Description [nb] maxLength: 4096 description_ar: type: string nullable: true title: Description [ar] maxLength: 4096 description_cs: type: string nullable: true title: Description [cs] maxLength: 4096 permissions: {} is_active: type: boolean content_type: type: string minLength: 1 required: - content_type - name - permissions RoleTemplate: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string readOnly: true description: Role internal name scope_type: allOf: - $ref: '#/components/schemas/RancherRoleScopeType' readOnly: true display_name: type: string readOnly: true description: Role public name settings: type: string format: uri readOnly: true required: - display_name - name - scope_type - settings - url - uuid description: '' RoleType: enum: - customer - service_provider - call_organizer - project - offering - call - proposal type: string description: '' RoundReviewer: type: object properties: full_name: type: string readOnly: true email: type: string format: email accepted_proposals: type: integer rejected_proposals: type: integer in_review_proposals: type: integer required: - accepted_proposals - email - full_name - in_review_proposals - rejected_proposals description: '' RoundStatus: enum: - scheduled - open - ended type: string description: '' RouterSetErredResponse: type: object properties: detail: type: string required: - detail description: '' RouterSetOkResponse: type: object properties: detail: type: string required: - detail description: '' Rule: type: object properties: name: type: string maxLength: 150 uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true user_affiliations: type: array items: type: string user_email_patterns: type: array items: type: string customer: type: string format: uri nullable: true customer_name: type: string readOnly: true customer_uuid: type: string readOnly: true use_user_organization_as_customer_name: type: boolean project_role: type: string format: uri nullable: true project_role_display_name: type: string readOnly: true project_role_description: type: string readOnly: true plan: type: string format: uri nullable: true plan_attributes: type: object additionalProperties: {} plan_limits: type: object additionalProperties: {} plan_name: type: string readOnly: true offering_name: type: string readOnly: true offering_uuid: type: string format: uuid readOnly: true category_title: type: string readOnly: true category_url: type: string format: uri readOnly: true required: - category_title - category_url - customer_name - customer_uuid - name - offering_name - offering_uuid - plan_name - project_role_description - project_role_display_name - url - uuid description: '' RuleRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 user_affiliations: type: array items: type: string minLength: 1 user_email_patterns: type: array items: type: string minLength: 1 customer: type: string format: uri nullable: true use_user_organization_as_customer_name: type: boolean project_role: type: string format: uri nullable: true project_role_name: type: string writeOnly: true nullable: true minLength: 1 plan: type: string format: uri nullable: true plan_attributes: type: object additionalProperties: {} plan_limits: type: object additionalProperties: {} required: - name description: '' RuntimeStates: type: object properties: value: type: string readOnly: true description: Value of the runtime state label: type: string readOnly: true description: Human-readable label for the runtime state required: - label - value description: '' SCRIPTRUNMODEEnum: enum: - docker - k8s type: string description: '' SIDEBARSTYLEEnum: enum: - primary - accent - accent-light - dark - light - auto type: string description: '' Saml2Login: type: object properties: idp: type: string required: - idp description: '' Saml2LoginComplete: type: object properties: SAMLResponse: type: string required: - SAMLResponse description: '' Saml2LoginCompleteRequest: type: object properties: SAMLResponse: type: string minLength: 1 required: - SAMLResponse description: '' Saml2LoginRequest: type: object properties: idp: type: string minLength: 1 required: - idp description: '' Saml2LogoutComplete: type: object properties: SAMLResponse: type: string SAMLRequest: type: string description: '' Saml2LogoutCompleteRequest: type: object properties: SAMLResponse: type: string minLength: 1 SAMLRequest: type: string minLength: 1 description: '' Saml2Provider: type: object properties: name: type: string url: type: string format: uri maxLength: 200 required: - name - url description: '' SaveSettingsRequestRequest: type: object description: '' properties: api_url: type: string format: uri minLength: 1 description: Arrow API base URL api_key: type: string minLength: 1 description: Arrow API Key export_type_reference: type: string classification_filter: type: string minLength: 1 default: IAAS sync_enabled: type: boolean default: false customer_mappings: type: array items: $ref: '#/components/schemas/CustomerMappingInputRequest' required: - api_key - api_url SaveSettingsResponse: type: object description: '' properties: settings_uuid: type: string format: uuid mappings_created: type: integer message: type: string required: - mappings_created - message - settings_uuid ScimSyncAllResponse: type: object properties: detail: type: string required: - detail description: '' Screenshot: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 created: type: string format: date-time readOnly: true description: type: string maxLength: 4096 image: type: string format: uri thumbnail: type: string format: uri readOnly: true nullable: true offering: type: string format: uri customer_uuid: type: string format: uuid readOnly: true required: - created - customer_uuid - image - name - offering - thumbnail - url - uuid ScreenshotRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 image: type: string format: binary offering: type: string format: uri required: - image - name - offering Section: type: object properties: url: type: string format: uri readOnly: true key: type: string maxLength: 255 created: type: string format: date-time readOnly: true title: type: string maxLength: 255 category: type: string format: uri category_title: type: string readOnly: true is_standalone: type: boolean description: Whether section is rendered as a separate tab. required: - category - category_title - created - key - title - url description: '' SectionRequest: type: object properties: key: type: string minLength: 1 maxLength: 255 title: type: string minLength: 1 maxLength: 255 category: type: string format: uri is_standalone: type: boolean description: Whether section is rendered as a separate tab. required: - category - key - title description: '' SelfDeclaredConflictRequest: type: object description: '' properties: proposal_uuid: type: string format: uuid coi_type: $ref: '#/components/schemas/CoiTypeEnum' severity: allOf: - $ref: '#/components/schemas/COISeverityLevel' default: apparent description: type: string default: '' required: - coi_type - proposal_uuid SendAllAssignmentBatchesRequest: type: object description: '' properties: batch_uuids: type: array items: type: string format: uuid description: Specific batch UUIDs to send. If empty, sends all draft batches. SendAllAssignmentBatchesResponse: type: object description: '' properties: batches_sent: type: integer skipped: type: integer required: - batches_sent - skipped SendAssignmentBatchRequest: type: object description: '' properties: manager_notes: type: string description: Optional notes to include in the invitation email SendAssignmentBatchResponse: type: object description: '' properties: detail: type: string expires_at: type: string format: date-time required: - detail - expires_at SendInvitationsResponse: type: object description: '' properties: invitations_sent: type: integer required: - invitations_sent SendNotificationResponse: type: object description: '' properties: status: type: string message: type: string required: - message - status ServerInfo: type: object description: '' properties: auth_url: type: string identity_api_version: type: string user_domain_name: type: string project_name: type: string project_id: type: string required: - auth_url - identity_api_version - project_id - project_name - user_domain_name ServiceAccountState: enum: - OK - Closed - Erred description: '' ServiceAttributesPreview: type: object description: '' properties: service_attributes: type: object additionalProperties: {} plugin_options: type: object additionalProperties: {} required: - plugin_options - service_attributes ServiceProvider: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true description: type: string maxLength: 4096 enable_notifications: type: boolean customer: type: string format: uri customer_name: type: string readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_image: type: string format: uri readOnly: true customer_abbreviation: type: string readOnly: true customer_slug: type: string readOnly: true customer_native_name: type: string readOnly: true customer_country: type: string readOnly: true image: type: string format: uri nullable: true organization_groups: type: array items: $ref: '#/components/schemas/OrganizationGroup' readOnly: true offering_count: type: integer readOnly: true required: [] ServiceProviderAccess: type: object description: '' properties: offering_uuid: type: string format: uuid offering_name: type: string provider_name: type: string nullable: true provider_uuid: type: string format: uuid nullable: true exposed_fields: type: array items: type: string consent_date: type: string nullable: true consent_version: type: string nullable: true provider_team: type: array items: $ref: '#/components/schemas/ProviderTeamUser' required: - consent_date - consent_version - exposed_fields - offering_name - offering_uuid - provider_name - provider_uuid ServiceProviderApiSecretCode: type: object properties: api_secret_code: type: string readOnly: true description: API secret code for authenticating service provider requests required: - api_secret_code description: '' ServiceProviderChecklistSummary: type: object description: '' properties: checklist_uuid: type: string format: uuid readOnly: true checklist_name: type: string readOnly: true questions_count: type: integer readOnly: true offerings_count: type: integer readOnly: true required: - checklist_name - checklist_uuid - offerings_count - questions_count ServiceProviderComplianceOverview: type: object description: '' properties: offering_uuid: type: string format: uuid readOnly: true offering_name: type: string readOnly: true checklist_name: type: string readOnly: true nullable: true total_users: type: integer readOnly: true users_with_completions: type: integer readOnly: true completed_users: type: integer readOnly: true pending_users: type: integer readOnly: true compliance_rate: type: number format: double readOnly: true required: - checklist_name - completed_users - compliance_rate - offering_name - offering_uuid - pending_users - total_users - users_with_completions ServiceProviderOfferingUserCompliance: type: object description: '' properties: uuid: type: string format: uuid readOnly: true user_full_name: type: string readOnly: true user_email: type: string readOnly: true offering_name: type: string readOnly: true checklist_name: type: string readOnly: true nullable: true username: type: string readOnly: true nullable: true state: allOf: - $ref: '#/components/schemas/ServiceProviderOfferingUserComplianceStateEnum' readOnly: true completion_percentage: type: integer nullable: true readOnly: true compliance_status: type: string readOnly: true last_updated: type: string format: date-time nullable: true readOnly: true created: type: string format: date-time readOnly: true required: - checklist_name - completion_percentage - compliance_status - created - last_updated - offering_name - state - user_email - user_full_name - username - uuid ServiceProviderOfferingUserComplianceStateEnum: enum: - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 type: integer description: '' ServiceProviderRequest: type: object description: '' properties: description: type: string maxLength: 4096 enable_notifications: type: boolean customer: type: string format: uri image: type: string format: binary nullable: true required: - customer ServiceProviderRevenues: type: object properties: total: type: integer readOnly: true description: Total revenue amount year: type: integer readOnly: true description: Invoice year month: type: integer readOnly: true description: Invoice month required: - month - total - year description: '' ServiceProviderSignatureRequest: type: object properties: customer: type: string format: uuid description: Service provider customer UUID data: type: string minLength: 1 description: JWT-encoded data signed with the service provider's API secret code dry_run: type: boolean default: false description: If true, validates the signature without executing the operation required: - customer - data description: '' ServiceProviderStatistics: type: object properties: active_campaigns: type: integer readOnly: true description: Number of active campaigns current_customers: type: integer readOnly: true description: Number of current customers customers_number_change: type: integer readOnly: true description: Change in number of customers active_resources: type: integer readOnly: true description: Number of active resources resources_number_change: type: integer readOnly: true description: Change in number of resources active_and_paused_offerings: type: integer readOnly: true description: Number of active and paused offerings unresolved_tickets: type: integer readOnly: true description: Number of unresolved support tickets pending_orders: type: integer readOnly: true description: Number of pending orders erred_resources: type: integer readOnly: true description: Number of resources in error state required: - active_and_paused_offerings - active_campaigns - active_resources - current_customers - customers_number_change - erred_resources - pending_orders - resources_number_change - unresolved_tickets description: '' ServiceSettings: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 type: type: string maxLength: 255 state: allOf: - $ref: '#/components/schemas/ServiceSettingsStateEnum' readOnly: true error_message: type: string readOnly: true shared: type: boolean description: Anybody can use it customer: type: string format: uri nullable: true title: Organization customer_name: type: string readOnly: true nullable: true customer_native_name: type: string readOnly: true terms_of_services: type: string format: uri maxLength: 255 scope: type: string nullable: true scope_uuid: type: string format: uuid readOnly: true options: type: object additionalProperties: {} readOnly: true required: [] ServiceSettingsStateEnum: enum: - CREATION_SCHEDULED - CREATING - UPDATE_SCHEDULED - UPDATING - DELETION_SCHEDULED - DELETING - OK - ERRED type: string description: '' SetBackendIdRequest: type: object properties: backend_id: type: string nullable: true resource_uuid: type: string format: uuid nullable: true scope_id: type: string default: '' description: '' SetErredRequest: type: object properties: error_message: type: string default: '' error_traceback: type: string default: '' description: '' SetErredResponse: type: object properties: detail: type: string required: - detail description: '' SetMtu: type: object properties: mtu: type: integer required: - mtu description: '' SetMtuRequest: type: object properties: mtu: type: integer required: - mtu description: '' SetOfferingsUsernameRequest: type: object properties: user_uuid: type: string format: uuid description: UUID of the user username: type: string description: Username for offering access required: - user_uuid - username description: '' SetOkResponse: type: object properties: detail: type: string required: - detail description: '' SetTokenQuotaRequest: type: object description: '' properties: user_uuid: type: string format: uuid description: UUID of the user to set quota for. daily_limit: type: integer minimum: -1 nullable: true description: Daily token limit. Omit or null = system default, -1 = unlimited. weekly_limit: type: integer minimum: -1 nullable: true description: Weekly token limit. Omit or null = system default, -1 = unlimited. monthly_limit: type: integer minimum: -1 nullable: true description: Monthly token limit. Omit or null = system default, -1 = unlimited. required: - user_uuid SettingsMetadataResponse: type: object description: '' properties: settings: type: array items: type: object additionalProperties: {} description: List of settings sections with configuration items required: - settings SilenceActionRequest: type: object description: '' properties: duration_days: type: integer description: Duration in days to silence the action. If not provided, silences permanently. SilenceActionResponse: type: object description: '' properties: status: type: string duration_days: type: integer nullable: true required: - status SiteAgentConfigGenerationRequest: type: object description: '' properties: offering_uuids: type: array items: type: string format: uuid description: List of SLURM offering UUIDs to include in configuration minItems: 1 include_policy_settings: type: boolean default: true description: Include SLURM periodic usage policy settings in configuration waldur_api_url: type: string format: uri description: Waldur API URL (defaults to current server URL) timezone: type: string minLength: 1 default: UTC description: Timezone for the site agent required: - offering_uuids SlurmAllocation: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true cpu_limit: type: integer readOnly: true minimum: 0 cpu_usage: type: integer readOnly: true gpu_limit: type: integer readOnly: true minimum: 0 gpu_usage: type: integer readOnly: true ram_limit: type: integer readOnly: true minimum: 0 ram_usage: type: integer readOnly: true username: type: string nullable: true readOnly: true gateway: type: string nullable: true readOnly: true is_active: type: boolean readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] SlurmAllocationRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri required: - name - project - service_settings SlurmAllocationSetLimits: type: object properties: cpu_limit: type: integer minimum: -1 gpu_limit: type: integer minimum: -1 ram_limit: type: integer minimum: -1 required: - cpu_limit - gpu_limit - ram_limit description: '' SlurmAllocationSetLimitsRequest: type: object properties: cpu_limit: type: integer minimum: -1 gpu_limit: type: integer minimum: -1 ram_limit: type: integer minimum: -1 required: - cpu_limit - gpu_limit - ram_limit description: '' SlurmAllocationUserUsage: type: object properties: cpu_usage: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 ram_usage: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 gpu_usage: type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 format: int64 month: type: integer maximum: 12 minimum: 1 year: type: integer maximum: 32767 minimum: 0 allocation: type: string format: uri user: type: string format: uri nullable: true username: type: string maxLength: 32 full_name: type: string readOnly: true required: - allocation - full_name - month - username - year description: '' SlurmAssociation: type: object properties: uuid: type: string format: uuid readOnly: true username: type: string pattern: ^[a-zA-Z0-9_.][a-zA-Z0-9_.-]*[a-zA-Z0-9_.$-]?$ maxLength: 128 allocation: type: string format: uri required: - allocation - username - uuid description: '' SlurmCommand: type: object description: '' properties: type: type: string description: 'Command type: fairshare, limits, qos, reset_usage' description: type: string description: Human-readable description command: type: string description: Actual shell command parameters: type: object additionalProperties: {} description: Command parameters required: - command - description - parameters - type SlurmCommandHistory: type: object description: '' properties: uuid: type: string format: uuid readOnly: true command_type: type: string description: 'Type of command: fairshare, limits, qos, reset_usage' maxLength: 50 description: type: string description: Human-readable description of what the command does shell_command: type: string description: Actual shell command that was/would be executed parameters: description: Command parameters as key-value pairs executed_at: type: string format: date-time readOnly: true execution_mode: allOf: - $ref: '#/components/schemas/ExecutionModeEnum' description: Whether command was executed in production or emulator mode success: type: boolean description: Whether the command execution was successful error_message: type: string description: Error message if command execution failed required: - command_type - description - executed_at - shell_command - uuid SlurmCommandResultModeEnum: enum: - production - emulator type: string description: '' SlurmCommandResultRequest: type: object description: '' properties: resource_uuid: type: string format: uuid description: UUID of the resource the command was applied to success: type: boolean description: Whether the command was applied successfully error_message: type: string default: '' description: Error message if the command failed mode: allOf: - $ref: '#/components/schemas/SlurmCommandResultModeEnum' default: production description: Execution mode of the command commands_executed: type: array items: type: string minLength: 1 description: List of shell commands actually executed by the site agent required: - resource_uuid - success SlurmPeriodicUsagePolicy: type: object description: '' properties: uuid: type: string format: uuid readOnly: true url: type: string format: uri readOnly: true scope: type: string format: uri scope_name: type: string readOnly: true scope_uuid: type: string format: uuid readOnly: true actions: type: string maxLength: 255 created: type: string format: date-time readOnly: true created_by_full_name: type: string readOnly: true created_by_username: type: string readOnly: true has_fired: type: boolean readOnly: true fired_datetime: type: string format: date-time readOnly: true options: description: Fields for saving actions extra data. Keys are name of actions. organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. component_limits_set: type: array items: $ref: '#/components/schemas/NestedOfferingComponentLimit' period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 period_name: type: string readOnly: true limit_type: allOf: - $ref: '#/components/schemas/LimitTypeEnum' description: SLURM limit type to apply tres_billing_enabled: type: boolean description: Use TRES billing units instead of raw TRES values tres_billing_weights: description: 'TRES billing weights (e.g., {"CPU": 0.015625, "Mem": 0.001953125, "GRES/gpu": 0.25})' carryover_factor: type: integer maximum: 2147483647 minimum: 0 description: Maximum percentage of base allocation that can carry over from unused previous period (0-100) grace_ratio: type: number format: double description: Grace period ratio (0.2 = 20% overconsumption allowed) carryover_enabled: type: boolean description: Enable unused allocation carryover to next period raw_usage_reset: type: boolean description: Reset raw usage at period transitions (PriorityUsageResetPeriod=None) qos_strategy: allOf: - $ref: '#/components/schemas/QosStrategyEnum' description: QoS management strategy warnings: type: array items: type: string readOnly: true description: Warnings about misconfiguration, e.g. missing site agent queue registration. required: - actions - component_limits_set - created - created_by_full_name - created_by_username - fired_datetime - has_fired - period_name - scope - scope_name - scope_uuid - url - uuid - warnings SlurmPeriodicUsagePolicyRequest: type: object description: '' properties: scope: type: string format: uri actions: type: string minLength: 1 maxLength: 255 options: description: Fields for saving actions extra data. Keys are name of actions. organization_groups: type: array items: type: string format: uri apply_to_all: type: boolean description: If True, policy applies to all customers. Mutually exclusive with organization_groups. component_limits_set: type: array items: $ref: '#/components/schemas/NestedOfferingComponentLimitRequest' period: allOf: - $ref: '#/components/schemas/PolicyPeriodEnum' minimum: -2147483648 maximum: 2147483647 limit_type: allOf: - $ref: '#/components/schemas/LimitTypeEnum' description: SLURM limit type to apply tres_billing_enabled: type: boolean description: Use TRES billing units instead of raw TRES values tres_billing_weights: description: 'TRES billing weights (e.g., {"CPU": 0.015625, "Mem": 0.001953125, "GRES/gpu": 0.25})' carryover_factor: type: integer maximum: 2147483647 minimum: 0 description: Maximum percentage of base allocation that can carry over from unused previous period (0-100) grace_ratio: type: number format: double description: Grace period ratio (0.2 = 20% overconsumption allowed) carryover_enabled: type: boolean description: Enable unused allocation carryover to next period raw_usage_reset: type: boolean description: Reset raw usage at period transitions (PriorityUsageResetPeriod=None) qos_strategy: allOf: - $ref: '#/components/schemas/QosStrategyEnum' description: QoS management strategy required: - actions - component_limits_set - scope SlurmPolicyCarryover: type: object description: '' properties: previous_usage: type: number format: double carryover_factor: type: integer base_allocation: type: number format: double unused: type: number format: double carryover_cap: type: number format: double carryover: type: number format: double total_allocation: type: number format: double required: - base_allocation - carryover - carryover_cap - carryover_factor - previous_usage - total_allocation - unused SlurmPolicyDateProjection: type: object description: '' properties: days: type: integer nullable: true date: type: string format: date nullable: true status: $ref: '#/components/schemas/SlurmPolicyDateProjectionStatusEnum' required: - date - days - status SlurmPolicyDateProjectionStatusEnum: enum: - never - exceeded - projected type: string description: '' SlurmPolicyDateProjections: type: object description: '' properties: notification: $ref: '#/components/schemas/SlurmPolicyDateProjection' slowdown: $ref: '#/components/schemas/SlurmPolicyDateProjection' blocked: $ref: '#/components/schemas/SlurmPolicyDateProjection' required: - blocked - notification - slowdown SlurmPolicyDryRunResource: type: object description: '' properties: resource_uuid: type: string format: uuid resource_name: type: string usage_percentage: type: number format: double paused: type: boolean downscaled: type: boolean would_trigger: type: array items: type: string required: - downscaled - paused - resource_name - resource_uuid - usage_percentage - would_trigger SlurmPolicyDryRunResponse: type: object description: '' properties: policy_uuid: type: string format: uuid billing_period: type: string grace_limit_percentage: type: number format: double resources: type: array items: $ref: '#/components/schemas/SlurmPolicyDryRunResource' required: - billing_period - grace_limit_percentage - policy_uuid - resources SlurmPolicyEvaluateRequestRequest: type: object description: '' properties: resource_uuid: type: string format: uuid nullable: true description: Evaluate a specific resource. If omitted, evaluates all offering resources. SlurmPolicyEvaluateResource: type: object description: '' properties: resource_uuid: type: string format: uuid resource_name: type: string usage_percentage: type: number format: double actions_taken: type: array items: type: string previous_state: type: object additionalProperties: {} new_state: type: object additionalProperties: {} required: - actions_taken - new_state - previous_state - resource_name - resource_uuid - usage_percentage SlurmPolicyEvaluateResponse: type: object description: '' properties: policy_uuid: type: string format: uuid billing_period: type: string resources: type: array items: $ref: '#/components/schemas/SlurmPolicyEvaluateResource' required: - billing_period - policy_uuid - resources SlurmPolicyEvaluationLog: type: object description: '' properties: uuid: type: string format: uuid readOnly: true resource_uuid: type: string format: uuid readOnly: true resource_name: type: string readOnly: true billing_period: type: string description: Billing period identifier, e.g. '2026-Q1' maxLength: 20 usage_percentage: type: number format: double description: Resource usage percentage at the time of evaluation grace_limit_percentage: type: number format: double description: Grace limit percentage threshold (e.g. 120 for 20% grace) actions_taken: description: List of actions taken during this evaluation (e.g. ['pause', 'notify']) previous_state: description: 'Resource state before evaluation: {paused: bool, downscaled: bool}' new_state: description: 'Resource state after evaluation: {paused: bool, downscaled: bool}' stomp_message_sent: type: boolean description: Whether a STOMP message was sent to the site agent site_agent_confirmed: type: boolean nullable: true description: Whether the site agent confirmed command execution (null = no response yet) site_agent_response: nullable: true description: Response payload from the site agent evaluated_at: type: string format: date-time readOnly: true description: When this evaluation was performed required: - billing_period - evaluated_at - grace_limit_percentage - resource_name - resource_uuid - usage_percentage - uuid SlurmPolicyPreviewRequestRequest: type: object description: '' properties: allocation: type: number format: double default: 1000.0 description: Base allocation for the period (in node-hours or billing units) grace_ratio: type: number format: double maximum: 1 minimum: 0 default: 0.2 description: Grace ratio for overconsumption allowance (0.2 = 20%) previous_usage: type: number format: double default: 0.0 description: Usage from the previous period carryover_factor: type: integer maximum: 100 minimum: 0 default: 50 description: Maximum percentage of base allocation that can carry over (0-100) carryover_enabled: type: boolean default: true description: Whether unused allocation carries over to next period resource_uuid: type: string format: uuid nullable: true description: Optional resource UUID to use for current usage data current_usage: type: number format: double default: 0.0 description: Current usage in this period (manual input or from resource) daily_usage_rate: type: number format: double default: 0.0 description: Average daily usage rate for projections SlurmPolicyPreviewResponse: type: object description: '' properties: base_allocation: type: number format: double effective_allocation: type: number format: double carryover_enabled: type: boolean carryover: allOf: - $ref: '#/components/schemas/SlurmPolicyCarryover' nullable: true thresholds: $ref: '#/components/schemas/SlurmPolicyThresholds' grace_ratio: type: number format: double carryover_factor: type: integer current_usage: type: number format: double daily_usage_rate: type: number format: double usage_percentage: type: number format: double current_qos_status: $ref: '#/components/schemas/CurrentQosStatusEnum' date_projections: $ref: '#/components/schemas/SlurmPolicyDateProjections' preview_commands: type: array items: $ref: '#/components/schemas/SlurmCommand' command_history: type: array items: $ref: '#/components/schemas/SlurmCommandHistory' billing_period_start: type: string format: date billing_period_end: type: string format: date required: - base_allocation - carryover - carryover_enabled - carryover_factor - effective_allocation - grace_ratio - thresholds SlurmPolicyThresholds: type: object description: '' properties: allocation: type: number format: double grace_ratio: type: number format: double notification_ratio: type: number format: double notification_threshold: type: number format: double slowdown_threshold: type: number format: double blocked_threshold: type: number format: double required: - allocation - blocked_threshold - grace_ratio - notification_ratio - notification_threshold - slowdown_threshold SmaxWebHookReceiver: type: object properties: id: type: string required: - id description: '' SmaxWebHookReceiverRequest: type: object properties: id: type: string minLength: 1 required: - id description: '' SoftwareCatalog: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true name: type: string description: Catalog name (e.g., EESSI, Spack) maxLength: 100 version: type: string description: Catalog version (e.g., 2023.06, 0.21.0) maxLength: 50 catalog_type: allOf: - $ref: '#/components/schemas/CatalogTypeEnum' default: binary_runtime description: Type of software catalog catalog_type_display: type: string readOnly: true source_url: type: string format: uri description: Catalog source URL maxLength: 200 description: type: string metadata: description: Catalog-specific metadata (architecture maps, API endpoints, etc.) auto_update_enabled: type: boolean description: Whether to automatically update this catalog via scheduled tasks last_update_attempt: type: string format: date-time readOnly: true nullable: true last_successful_update: type: string format: date-time readOnly: true nullable: true update_errors: type: string package_count: type: integer readOnly: true version_count: type: integer readOnly: true target_count: type: integer readOnly: true required: - catalog_type_display - created - last_successful_update - last_update_attempt - modified - name - package_count - target_count - url - uuid - version - version_count SoftwareCatalogDiscover: type: object description: '' properties: name: type: string catalog_type: type: string latest_version: type: string existing: type: boolean existing_version: type: string nullable: true update_available: type: boolean required: - catalog_type - existing - existing_version - latest_version - name - update_available SoftwareCatalogImportRequest: type: object description: '' properties: name: $ref: '#/components/schemas/NameEnum' required: - name SoftwareCatalogRequest: type: object description: '' properties: name: type: string minLength: 1 description: Catalog name (e.g., EESSI, Spack) maxLength: 100 version: type: string minLength: 1 description: Catalog version (e.g., 2023.06, 0.21.0) maxLength: 50 catalog_type: allOf: - $ref: '#/components/schemas/CatalogTypeEnum' default: binary_runtime description: Type of software catalog source_url: type: string format: uri description: Catalog source URL maxLength: 200 description: type: string metadata: description: Catalog-specific metadata (architecture maps, API endpoints, etc.) auto_update_enabled: type: boolean description: Whether to automatically update this catalog via scheduled tasks update_errors: type: string required: - name - version SoftwareCatalogUUID: type: object properties: uuid: type: string format: uuid description: UUID of the software catalog required: - uuid description: '' SoftwarePackage: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true catalog: type: string format: uri name: type: string maxLength: 200 description: type: string homepage: type: string format: uri nullable: true maxLength: 200 categories: description: Package categories (e.g., ['bio', 'hpc', 'build-tools']) licenses: description: Software licenses (e.g., ['GPL-3.0', 'MIT']) maintainers: description: Package maintainers is_extension: type: boolean description: Whether this package is an extension of another package parent_software: type: string format: uri nullable: true description: Parent package for extensions (e.g., Python package within Python) catalog_name: type: string readOnly: true catalog_version: type: string readOnly: true catalog_type: type: string readOnly: true catalog_type_display: type: string readOnly: true version_count: type: integer readOnly: true extension_count: type: integer readOnly: true versions: type: array items: $ref: '#/components/schemas/NestedSoftwareVersion' readOnly: true required: - catalog - catalog_name - catalog_type - catalog_type_display - catalog_version - created - extension_count - modified - name - url - uuid - version_count - versions SoftwarePackageRequest: type: object description: '' properties: catalog: type: string format: uri name: type: string minLength: 1 maxLength: 200 description: type: string homepage: type: string format: uri nullable: true maxLength: 200 categories: description: Package categories (e.g., ['bio', 'hpc', 'build-tools']) licenses: description: Software licenses (e.g., ['GPL-3.0', 'MIT']) maintainers: description: Package maintainers is_extension: type: boolean description: Whether this package is an extension of another package parent_software: type: string format: uri nullable: true description: Parent package for extensions (e.g., Python package within Python) required: - catalog - name SoftwareTarget: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true target_type: type: string readOnly: true description: Type of target (architecture, platform, variant, etc.) target_name: type: string readOnly: true description: Target identifier (x86_64/generic, linux, variant_name, etc.) target_subtype: type: string readOnly: true description: Target subtype (microarchitecture, distribution, etc.) location: type: string readOnly: true description: Target location (CVMFS path, download URL, etc.) metadata: readOnly: true description: Target-specific metadata (build options, system requirements, etc.) required: - created - location - metadata - modified - target_name - target_subtype - target_type - url - uuid SoftwareVersion: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true version: type: string readOnly: true release_date: type: string format: date readOnly: true nullable: true dependencies: readOnly: true description: Package dependencies (format varies by catalog type) metadata: readOnly: true description: Version-specific metadata (toolchains, build info, modules, etc.) package_name: type: string readOnly: true catalog_type: type: string readOnly: true target_count: type: integer readOnly: true module: type: object additionalProperties: {} readOnly: true required_modules: type: array items: {} readOnly: true extensions: type: array items: {} readOnly: true toolchain: type: object additionalProperties: {} readOnly: true toolchain_families_compatibility: type: array items: {} readOnly: true required: - catalog_type - created - dependencies - extensions - metadata - modified - module - package_name - release_date - required_modules - target_count - toolchain - toolchain_families_compatibility - url - uuid - version SourceTypeEnum: enum: - call_description - all_proposals - selected_proposals - custom_keywords type: string description: '' SshKey: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 public_key: type: string maxLength: 2000 fingerprint_md5: type: string readOnly: true fingerprint_sha256: type: string readOnly: true fingerprint_sha512: type: string readOnly: true user_uuid: type: string format: uuid readOnly: true is_shared: type: boolean readOnly: true type: type: string readOnly: true required: [] SshKeyRequest: type: object description: '' properties: name: type: string maxLength: 150 public_key: type: string minLength: 1 maxLength: 2000 required: - public_key StateTransitionError: type: object properties: detail: type: string description: Error message to be displayed to the user required: - detail description: '' StorageDataType: type: object properties: key: type: string label: type: string required: - key - label description: '' StorageDataTypeRequest: type: object properties: key: type: string minLength: 1 label: type: string minLength: 1 required: - key - label description: '' StorageFolderConfig: type: object properties: component_type: type: string default_hard_quota_multiplier: type: number format: double minimum: 1.0 default: 1.0 inode_soft_multiplier: type: integer minimum: 1 default: 7000 inode_hard_multiplier: type: integer minimum: 1 default: 10000 storage_data_types: type: array items: $ref: '#/components/schemas/StorageDataType' default_permission: allOf: - $ref: '#/components/schemas/DefaultPermissionEnum' default: '2770' description: Default permission to auto-select required: - component_type - storage_data_types description: '' StorageFolderConfigRequest: type: object properties: component_type: type: string minLength: 1 default_hard_quota_multiplier: type: number format: double minimum: 1.0 default: 1.0 inode_soft_multiplier: type: integer minimum: 1 default: 7000 inode_hard_multiplier: type: integer minimum: 1 default: 10000 storage_data_types: type: array items: $ref: '#/components/schemas/StorageDataTypeRequest' default_permission: allOf: - $ref: '#/components/schemas/DefaultPermissionEnum' default: '2770' description: Default permission to auto-select required: - component_type - storage_data_types description: '' StorageModeEnum: enum: - fixed - dynamic type: string description: '' SubNetMapping: type: object properties: src_cidr: type: string dst_cidr: type: string required: - dst_cidr - src_cidr description: '' SubNetMappingRequest: type: object properties: src_cidr: type: string minLength: 1 dst_cidr: type: string minLength: 1 required: - dst_cidr - src_cidr description: '' SubmitRequestResponse: type: object properties: uuid: type: string description: UUID of the created permission request scope_name: type: string description: Name of the invitation scope scope_uuid: type: string description: UUID of the invitation scope auto_approved: type: boolean description: Whether the request was automatically approved required: - auto_approved - scope_name - scope_uuid - uuid description: '' SubresourceOffering: type: object properties: uuid: type: string format: uuid readOnly: true description: UUID of the offering type: type: string readOnly: true description: Type of the offering required: - type - uuid description: '' SuggestAlternativeReviewers: type: object description: '' properties: suggestions: type: array items: type: object additionalProperties: {} description: List of alternative reviewers with affinity scores required: - suggestions SuggestionRejectRequest: type: object description: '' properties: reason: type: string description: Reason for rejecting the suggestion SupportStats: type: object properties: open_issues_count: type: integer readOnly: true closed_this_month_count: type: integer readOnly: true recent_broadcasts_count: type: integer readOnly: true required: - closed_this_month_count - open_issues_count - recent_broadcasts_count description: '' SupportUser: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 backend_id: type: string nullable: true maxLength: 255 user: type: string format: uri nullable: true backend_name: type: string nullable: true maxLength: 255 required: - backend_id - name - url - user - uuid SupportedCountriesResponse: type: object properties: supported_countries: type: array items: type: string required: - supported_countries description: '' SyncFromArrowRequestRequest: type: object description: '' properties: settings_uuid: type: string format: uuid SyncPauseRequestRequest: type: object description: '' properties: settings_uuid: type: string format: uuid pause_global: type: boolean default: false SyncPauseResponse: type: object description: '' properties: paused: type: array items: type: string description: List of paused items resumed: type: array items: type: string description: List of resumed items SyncResourceHistoricalConsumptionRequestRequest: type: object description: '' properties: resource_uuid: type: string format: uuid description: UUID of the resource to sync period_from: type: string minLength: 1 description: Start period in YYYY-MM format. Defaults to 12 months ago. period_to: type: string minLength: 1 description: End period in YYYY-MM format. Defaults to current month. force: type: boolean default: false description: If True, sync even for finalized periods. dry_run: type: boolean default: false description: If True, preview consumption data without saving. required: - resource_uuid SyncResourceHistoricalConsumptionResponse: type: object description: '' properties: resource_uuid: type: string format: uuid resource_name: type: string periods_synced: type: integer periods_skipped: type: integer periods_no_data: type: integer default: 0 errors: type: array items: type: object additionalProperties: {} dry_run: type: boolean default: false preview_periods: type: array items: type: object additionalProperties: {} required: - errors - periods_skipped - periods_synced - resource_name - resource_uuid SyncResourcesRequestRequest: type: object description: '' properties: period_from: type: string minLength: 1 description: 'Start period in YYYY-MM format (default: 6 months ago, Arrow max)' period_to: type: string minLength: 1 description: 'End period in YYYY-MM format (default: current month)' settings_uuid: type: string format: uuid offering_uuid: type: string format: uuid description: Offering UUID for creating new resources project_uuid: type: string format: uuid description: Project UUID for creating new resources (ignored if force_import=True) force_import: type: boolean default: false description: If True, auto-create Waldur Customers and Projects from Arrow data. Each Arrow customer gets a Waldur Customer with an 'Arrow Azure Subscriptions' project. SyncResourcesResponse: type: object description: '' properties: synced: type: integer created: type: integer updated: type: integer orders_created: type: integer customers_created: type: integer projects_created: type: integer mappings_created: type: integer invoices_created: type: integer invoice_items_created: type: integer errors: type: array items: type: object additionalProperties: {} required: - created - synced - updated SyncStatusEnum: enum: - in_sync - out_of_sync - sync_failed type: string description: '' SyncStatusResponse: type: object properties: local_only: type: array items: type: string remote_only: type: array items: type: string synced: type: array items: $ref: '#/components/schemas/SyncedGroup' required: - local_only - remote_only - synced description: '' SyncedGroup: type: object properties: local_name: type: string remote_name: type: string backend_id: type: string required: - backend_id - local_name - remote_name description: '' SystemLog: type: object properties: id: type: integer readOnly: true created: type: string format: date-time readOnly: true source: allOf: - $ref: '#/components/schemas/SystemLogSourceEnum' readOnly: true instance: type: string readOnly: true description: Pod name (K8s) or container name (Docker) level: type: string readOnly: true level_number: type: integer readOnly: true logger_name: type: string readOnly: true message: type: string readOnly: true context: readOnly: true required: - context - created - id - instance - level - level_number - logger_name - message - source description: '' SystemLogInstance: type: object properties: source: type: string readOnly: true instance: type: string readOnly: true last_seen: type: string format: date-time readOnly: true count: type: integer readOnly: true required: - count - instance - last_seen - source description: '' SystemLogSourceEnum: enum: - api - worker - beat type: string description: '' SystemLogStatsInstance: type: object properties: source: type: string readOnly: true instance: type: string readOnly: true count: type: integer readOnly: true required: - count - instance - source description: '' SystemLogStatsResponse: type: object properties: instances: type: array items: $ref: '#/components/schemas/SystemLogStatsInstance' readOnly: true total_size_bytes: type: integer readOnly: true total_size_mb: type: number format: double readOnly: true required: - instances - total_size_bytes - total_size_mb description: '' TableGrowthAlert: type: object description: '' properties: table_name: type: string description: Name of the table triggering the alert period: allOf: - $ref: '#/components/schemas/GrowthPeriodEnum' description: Growth period that exceeded the threshold growth_percent: type: number format: double description: Actual growth percentage observed threshold: type: integer description: Configured threshold that was exceeded required: - growth_percent - period - table_name - threshold TableGrowthStats: type: object description: '' properties: table_name: type: string description: Name of the database table current_total_size: type: integer description: Current total size including indexes in bytes current_data_size: type: integer description: Current data-only size in bytes current_row_estimate: type: integer nullable: true description: Current estimated row count week_ago_total_size: type: integer nullable: true description: Total size from 7 days ago in bytes week_ago_row_estimate: type: integer nullable: true description: Row estimate from 7 days ago month_ago_total_size: type: integer nullable: true description: Total size from 30 days ago in bytes month_ago_row_estimate: type: integer nullable: true description: Row estimate from 30 days ago weekly_growth_percent: type: number format: double nullable: true description: Percentage growth over the past week monthly_growth_percent: type: number format: double nullable: true description: Percentage growth over the past month weekly_row_growth_percent: type: number format: double nullable: true description: Percentage row count growth over the past week monthly_row_growth_percent: type: number format: double nullable: true description: Percentage row count growth over the past month required: - current_data_size - current_row_estimate - current_total_size - month_ago_row_estimate - month_ago_total_size - monthly_growth_percent - monthly_row_growth_percent - table_name - week_ago_row_estimate - week_ago_total_size - weekly_growth_percent - weekly_row_growth_percent TableGrowthStatsResponse: type: object description: '' properties: date: type: string format: date description: Current date of the statistics weekly_threshold_percent: type: integer description: Configured weekly growth alert threshold monthly_threshold_percent: type: integer description: Configured monthly growth alert threshold tables: type: array items: $ref: '#/components/schemas/TableGrowthStats' description: Table growth statistics sorted by growth rate alerts: type: array items: $ref: '#/components/schemas/TableGrowthAlert' description: List of tables that exceeded configured growth thresholds required: - alerts - date - monthly_threshold_percent - tables - weekly_threshold_percent TableSize: type: object properties: table_name: type: string readOnly: true description: Name of the database table total_size: type: integer readOnly: true description: Total size of the table in bytes data_size: type: integer readOnly: true description: Size of the actual data in bytes external_size: type: integer readOnly: true description: Size of external data (e.g., TOAST) in bytes required: - data_size - external_size - table_name - total_size description: '' Tag: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 100 description: type: string offering_count: type: integer description: |- Return offering count filtered by user permissions. Staff sees all offerings. Service providers see their own + active/paused/archived public offerings. readOnly: true created: type: string format: date-time readOnly: true created_by_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true created_by_full_name: type: string readOnly: true required: - created - created_by_full_name - created_by_username - name - offering_count - url - uuid TagRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 100 description: type: string required: - name TagsRequest: type: object properties: tags: type: array items: type: string format: uuid description: '' TargetUser: type: object description: '' properties: uuid: type: string format: uuid username: type: string full_name: type: string required: - full_name - username - uuid Template: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string issue_type: $ref: '#/components/schemas/IssueTypeEnum' attachments: type: array items: $ref: '#/components/schemas/TemplateAttachment' readOnly: true required: - attachments - description - name - url - uuid description: '' TemplateAttachment: type: object properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 file: type: string format: uri mime_type: type: string readOnly: true file_size: type: integer readOnly: true created: type: string format: date-time readOnly: true required: - created - file - file_size - mime_type - name - uuid description: '' TemplateAttachmentRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 file: type: string format: binary required: - file - name description: '' TemplateRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string minLength: 1 issue_type: $ref: '#/components/schemas/IssueTypeEnum' required: - description - name description: '' TemplateVersion: type: object properties: readme: type: string readOnly: true app_readme: type: string readOnly: true questions: type: array items: $ref: '#/components/schemas/RancherTemplateQuestion' readOnly: true required: - app_readme - questions - readme description: '' Tenant: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 required: - name - url - uuid description: '' TenantSecurityGroupUpdateRequest: type: object properties: uuid: type: string format: uuid name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 rules: type: array items: $ref: '#/components/schemas/OpenStackSecurityGroupRuleUpdateByNameRequest' required: - name description: '' TestConnectionResponse: type: object properties: status: type: string groups_count: type: integer groups: type: array items: type: string required: - groups - groups_count - status description: '' ThreadSession: type: object description: '' properties: uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 chat_session: type: string format: uuid readOnly: true flags: readOnly: true is_archived: type: boolean message_count: type: integer readOnly: true is_flagged: type: boolean readOnly: true max_severity: allOf: - $ref: '#/components/schemas/InjectionSeverityEnum' readOnly: true user_username: type: string readOnly: true user_full_name: type: string readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: [] ThreadSessionRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 is_archived: type: boolean TimeSeriesToSData: type: object properties: date: type: string format: date readOnly: true description: Date of the data point count: type: integer readOnly: true description: Count for the date required: - count - date description: '' ToSConsentDashboard: type: object description: '' properties: active_users_count: type: integer readOnly: true description: Number of active users total_users_count: type: integer readOnly: true description: Total number of users active_users_percentage: type: number format: double readOnly: true description: Percentage of active users accepted_consents_count: type: integer readOnly: true description: Number of accepted consents revoked_consents_count: type: integer readOnly: true description: Number of revoked consents total_consents_count: type: integer readOnly: true description: Total number of consents revoked_consents_over_time: type: array items: $ref: '#/components/schemas/TimeSeriesToSData' readOnly: true tos_version_adoption: type: array items: $ref: '#/components/schemas/VersionAdoption' readOnly: true active_users_over_time: type: array items: $ref: '#/components/schemas/TimeSeriesToSData' readOnly: true accepted_consents_over_time: type: array items: $ref: '#/components/schemas/TimeSeriesToSData' readOnly: true required: - accepted_consents_count - accepted_consents_over_time - active_users_count - active_users_over_time - active_users_percentage - revoked_consents_count - revoked_consents_over_time - tos_version_adoption - total_consents_count - total_users_count TokenQuotaUsageResponse: type: object description: '' properties: daily_limit: type: integer maximum: 2147483647 minimum: -1 nullable: true description: Daily token limit (non-negative integer). Null uses system default. -1 means unlimited. daily_usage: type: integer maximum: 2147483647 minimum: 0 daily_remaining: type: integer nullable: true description: Get remaining daily tokens. readOnly: true daily_reset_at: type: string format: date-time description: Calculate next midnight (00:00:00). readOnly: true daily_system_default: type: integer description: Get system default daily token limit from constance config. readOnly: true weekly_limit: type: integer maximum: 2147483647 minimum: -1 nullable: true description: Weekly token limit (non-negative integer). Null uses system default. -1 means unlimited. weekly_usage: type: integer maximum: 2147483647 minimum: 0 weekly_remaining: type: integer nullable: true description: Get remaining weekly tokens. readOnly: true weekly_reset_at: type: string format: date-time description: Calculate next Monday at midnight. readOnly: true weekly_system_default: type: integer description: Get system default weekly token limit from constance config. readOnly: true monthly_limit: type: integer maximum: 2147483647 minimum: -1 nullable: true description: Monthly token limit (non-negative integer). Null uses system default. -1 means unlimited. monthly_usage: type: integer maximum: 2147483647 minimum: 0 monthly_remaining: type: integer nullable: true description: Get remaining monthly tokens. readOnly: true monthly_reset_at: type: string format: date-time description: Calculate first day of next month at midnight. readOnly: true monthly_system_default: type: integer description: Get system default monthly token limit from constance config. readOnly: true required: - daily_remaining - daily_reset_at - daily_system_default - monthly_remaining - monthly_reset_at - monthly_system_default - weekly_remaining - weekly_reset_at - weekly_system_default TokenRequest: type: object properties: token: type: string minLength: 1 description: Authentication token for invitation acceptance required: - token description: '' ToolExecuteRequest: type: object properties: tool: type: string minLength: 1 description: Name of the tool to execute. maxLength: 100 arguments: description: Tool arguments. required: - tool description: '' TopQueue: type: object description: '' properties: vhost: type: string readOnly: true description: Virtual host name name: type: string readOnly: true description: Queue name messages: type: integer readOnly: true description: Number of messages in queue consumers: type: integer readOnly: true description: Number of consumers attached required: - consumers - messages - name - vhost TotalCustomerCost: type: object properties: total: type: number format: double readOnly: true price: type: number format: double readOnly: true required: - price - total description: '' TransactionStats: type: object description: '' properties: committed: type: integer readOnly: true description: Total committed transactions rolled_back: type: integer readOnly: true description: Total rolled back transactions rollback_ratio_percent: type: number format: double readOnly: true description: Percentage of transactions that were rolled back deadlocks: type: integer readOnly: true description: Total number of deadlocks detected required: - committed - deadlocks - rollback_ratio_percent - rolled_back TriggerCOIDetectionJobTypeEnum: enum: - full_call - incremental type: string description: '' TriggerCOIDetectionRequest: type: object description: '' properties: job_type: allOf: - $ref: '#/components/schemas/TriggerCOIDetectionJobTypeEnum' default: full_call TriggerConsumptionSyncRequestRequest: type: object description: '' properties: year: type: integer maximum: 2100 minimum: 2000 month: type: integer maximum: 12 minimum: 1 settings_uuid: type: string format: uuid resource_uuid: type: string format: uuid description: Sync specific resource only required: - month - year TriggerSyncRequestRequest: type: object description: '' properties: year: type: integer maximum: 2100 minimum: 2000 month: type: integer maximum: 12 minimum: 1 settings_uuid: type: string format: uuid resource_uuid: type: string format: uuid description: If set, only sync billing lines for this resource. required: - month - year UnsilenceActionResponse: type: object description: '' properties: status: type: string required: - status UpdateActionsRequest: type: object description: '' properties: provider_action_type: type: string nullable: true minLength: 1 description: Optional provider action type to update. If not provided, updates all providers. UpdateActionsResponse: type: object description: '' properties: status: type: string message: type: string provider_action_type: type: string nullable: true required: - message - status UpdateOfferingComponentRequest: type: object properties: uuid: type: string format: uuid billing_type: $ref: '#/components/schemas/BillingTypeEnum' type: type: string minLength: 1 description: Unique internal name of the measured unit, for example floating_ip. pattern: ^[a-zA-Z0-9_\-\/:]+$ maxLength: 50 name: type: string minLength: 1 description: Display name for the measured unit, for example, Floating IP. maxLength: 150 description: type: string maxLength: 4096 measured_unit: type: string description: Unit of measurement, for example, GB. maxLength: 30 unit_factor: type: integer maximum: 2147483647 minimum: -2147483648 description: The conversion factor from backend units to measured_unit limit_period: nullable: true oneOf: - $ref: '#/components/schemas/LimitPeriodEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' limit_amount: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true article_code: type: string maxLength: 30 max_value: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true min_value: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true max_available_limit: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true is_boolean: type: boolean default_limit: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true is_prepaid: type: boolean overage_component: type: string format: uuid nullable: true min_prepaid_duration: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true max_prepaid_duration: type: integer maximum: 2147483647 minimum: -2147483648 nullable: true required: - billing_type - name - type - uuid description: '' UrgencyEnum: enum: - low - medium - high type: string description: '' User: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ full_name: type: string readOnly: true maxLength: 200 native_name: type: string maxLength: 100 job_title: type: string maxLength: 120 email: type: string format: email phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 civil_number: type: string readOnly: true nullable: true description: type: string maxLength: 4096 is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_support: type: boolean title: Support status description: Designates whether the user is a global support user. token: type: string readOnly: true token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. token_expires_at: type: string format: date-time nullable: true readOnly: true registration_method: type: string readOnly: true description: Indicates what registration method was used. date_joined: type: string format: date-time readOnly: true agreement_date: type: string format: date-time readOnly: true nullable: true description: Indicates when the user has agreed with the policy. notifications_enabled: type: boolean description: Designates whether the user is allowed to receive email notifications. preferred_language: type: string maxLength: 10 permissions: type: array items: $ref: '#/components/schemas/Permission' readOnly: true requested_email: type: string nullable: true readOnly: true affiliations: readOnly: true description: Person's affiliation within organization such as student, faculty, staff. first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 birth_date: type: string format: date nullable: true identity_provider_name: type: string readOnly: true identity_provider_label: type: string readOnly: true identity_provider_management_url: type: string readOnly: true identity_provider_fields: type: array items: type: string readOnly: true image: type: string format: uri nullable: true identity_source: type: string readOnly: true title: Source of identity description: Indicates what identity provider was used. has_active_session: type: boolean readOnly: true ip_address: type: string readOnly: true nullable: true gender: nullable: true description: ISO 5218 gender code minimum: 0 maximum: 32767 oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) maxLength: 50 place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) maxLength: 2 nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) organization_country: type: string maxLength: 2 organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) maxLength: 255 organization_registry_code: type: string description: Company registration code of the user's organization, if known maxLength: 255 eduperson_assurance: description: REFEDS assurance profile URIs from identity provider is_identity_manager: type: boolean description: Designates whether the user is allowed to manage remote user identities. attribute_sources: readOnly: true description: 'Per-attribute source and freshness tracking. Format: {''field_name'': {''source'': ''isd:'', ''timestamp'': ''ISO8601''}}.' managed_isds: description: 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: readOnly: true description: List of ISDs that have asserted this user exists. User is deactivated when this becomes empty. required: [] UserAction: type: object description: '' properties: uuid: type: string format: uuid readOnly: true action_type: type: string description: Type of action, e.g. 'pending_order', 'expiring_resource' maxLength: 100 title: type: string maxLength: 255 description: type: string urgency: $ref: '#/components/schemas/UrgencyEnum' due_date: type: string format: date-time nullable: true is_silenced: type: boolean silenced_until: type: string format: date-time nullable: true is_temporarily_silenced: type: boolean readOnly: true is_effectively_silenced: type: boolean readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true related_object_name: type: string readOnly: true related_object_type: type: string readOnly: true corrective_actions: type: array items: $ref: '#/components/schemas/CorrectiveAction' readOnly: true days_until_due: type: integer nullable: true readOnly: true route_name: type: string description: UI-Router state name for navigation maxLength: 100 route_params: type: object additionalProperties: {} readOnly: true project_name: type: string maxLength: 255 project_uuid: type: string format: uuid nullable: true organization_name: type: string maxLength: 255 organization_uuid: type: string format: uuid nullable: true offering_name: type: string maxLength: 255 offering_uuid: type: string format: uuid nullable: true offering_type: type: string maxLength: 100 resource_name: type: string maxLength: 255 resource_uuid: type: string format: uuid nullable: true order_type: type: string maxLength: 100 required: - action_type - corrective_actions - created - days_until_due - description - is_effectively_silenced - is_temporarily_silenced - modified - related_object_name - related_object_type - route_params - title - urgency - uuid UserActionExecution: type: object description: '' properties: id: type: integer readOnly: true corrective_action_label: type: string maxLength: 255 executed_at: type: string format: date-time readOnly: true success: type: boolean error_message: type: string execution_metadata: type: string required: - corrective_action_label - executed_at - id UserActionProvider: type: object description: '' properties: id: type: integer readOnly: true app_name: type: string maxLength: 100 provider_class: type: string maxLength: 200 action_type: type: string maxLength: 100 is_enabled: type: boolean schedule: type: string maxLength: 50 last_execution: type: string format: date-time readOnly: true nullable: true last_execution_status: type: string readOnly: true required: - action_type - app_name - id - last_execution - last_execution_status - provider_class UserActionSummary: type: object description: '' properties: total: type: integer by_urgency: type: object additionalProperties: {} by_type: type: object additionalProperties: {} overdue: type: integer required: - by_type - by_urgency - overdue - total UserActiveStatusCount: type: object description: '' properties: status: type: string count: type: integer required: - count - status UserAffiliationCount: type: object properties: affiliation: type: string description: Affiliation name count: type: integer description: Number of users required: - affiliation - count description: '' UserAgreement: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true content: type: string agreement_type: $ref: '#/components/schemas/AgreementTypeEnum' language: type: string description: ISO 639-1 language code (e.g., 'en', 'de', 'et'). Leave empty for the default version. maxLength: 10 created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - agreement_type - content - created - language - modified - url - uuid description: '' UserAgreementRequest: type: object properties: content: type: string minLength: 1 agreement_type: $ref: '#/components/schemas/AgreementTypeEnum' language: type: string description: ISO 639-1 language code (e.g., 'en', 'de', 'et'). Leave empty for the default version. maxLength: 10 required: - agreement_type - content - language description: '' UserAttributeEnum: enum: - username - full_name - email - phone_number - organization - job_title - affiliations - gender - personal_title - birth_date - place_of_birth - country_of_residence - nationality - nationalities - organization_country - organization_type - organization_registry_code - eduperson_assurance - civil_number - identity_source type: string description: '' UserAuthMethodCount: type: object properties: method: type: string description: Authentication method count: type: integer description: Number of users required: - count - method description: '' UserAuthToken: type: object properties: created: type: string format: date-time readOnly: true user_first_name: type: string readOnly: true user_last_name: type: string readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. readOnly: true user_token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. readOnly: true token: type: string readOnly: true required: - created - token - user_first_name - user_is_active - user_last_name - user_token_lifetime - user_username description: '' UserChecklistCompletion: type: object description: '' properties: uuid: type: string format: uuid readOnly: true offering_user: allOf: - $ref: '#/components/schemas/OfferingUser' readOnly: true offering_user_uuid: type: string nullable: true readOnly: true offering_name: type: string nullable: true readOnly: true offering_uuid: type: string nullable: true readOnly: true customer_provider_uuid: type: string nullable: true readOnly: true customer_provider_name: type: string nullable: true readOnly: true checklist_uuid: type: string readOnly: true checklist_name: type: string readOnly: true checklist_description: type: string readOnly: true is_completed: type: boolean readOnly: true description: Whether all required questions have been answered completion_percentage: type: number format: double maximum: 100 minimum: 0 readOnly: true unanswered_required_questions: type: integer minimum: 0 readOnly: true requires_review: type: boolean readOnly: true description: Whether any answers triggered review requirements reviewed_by: type: integer readOnly: true nullable: true description: User who reviewed the checklist completion reviewed_at: type: string format: date-time readOnly: true nullable: true review_notes: type: string readOnly: true description: Notes from the reviewer created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true required: - checklist_description - checklist_name - checklist_uuid - completion_percentage - created - customer_provider_name - customer_provider_uuid - is_completed - modified - offering_name - offering_user - offering_user_uuid - offering_uuid - requires_review - review_notes - reviewed_at - reviewed_by - unanswered_required_questions - uuid UserConsentInfo: type: object description: '' properties: uuid: type: string format: uuid readOnly: true version: type: string readOnly: true agreement_date: type: string format: date-time readOnly: true is_revoked: type: boolean readOnly: true required: - agreement_date - is_revoked - uuid - version UserDataAccess: type: object description: '' properties: administrative_access: $ref: '#/components/schemas/AdministrativeAccess' organizational_access: type: array items: $ref: '#/components/schemas/OrganizationalAccess' service_provider_access: type: array items: $ref: '#/components/schemas/ServiceProviderAccess' summary: $ref: '#/components/schemas/DataAccessSummary' required: - administrative_access - organizational_access - service_provider_access - summary UserDataAccessLog: type: object description: '' properties: uuid: type: string format: uuid timestamp: type: string format: date-time accessor_type: $ref: '#/components/schemas/AccessorTypeEnum' accessed_fields: type: array items: type: string accessor_category: type: string accessor: $ref: '#/components/schemas/AccessorUser' ip_address: description: An IPv4 or IPv6 address. oneOf: - type: string format: ipv4 - type: string format: ipv6 nullable: true context: type: object additionalProperties: {} required: - accessed_fields - accessor_type - timestamp - uuid UserEmailChangeRequest: type: object properties: email: type: string format: email minLength: 1 required: - email description: '' UserIdentitySourceCount: type: object properties: identity_source: type: string description: Identity source count: type: integer description: Number of users required: - count - identity_source description: '' UserInfo: type: object properties: shortname: type: string nullable: true description: A short, unique name for you. It will be used to form your local username on any systems. Should only contain lower-case letters and digits and must start with a letter. pattern: ^[a-z][a-z0-9]+$ maxLength: 32 minLength: 4 user: type: string format: uri required: - user description: '' UserInfoRequest: type: object properties: shortname: type: string nullable: true minLength: 4 description: A short, unique name for you. It will be used to form your local username on any systems. Should only contain lower-case letters and digits and must start with a letter. pattern: ^[a-z][a-z0-9]+$ maxLength: 32 user: type: string format: uri required: - user description: '' UserJobTitleCount: type: object properties: job_title: type: string nullable: true description: Job title count: type: integer description: Number of users required: - count - job_title description: '' UserLanguageCount: type: object description: '' properties: language: type: string count: type: integer required: - count - language UserOfferingConsent: type: object description: '' properties: uuid: type: string format: uuid readOnly: true user_uuid: type: string format: uuid readOnly: true offering_uuid: type: string format: uuid readOnly: true agreement_date: type: string format: date-time readOnly: true version: type: string maxLength: 50 revocation_date: type: string format: date-time readOnly: true nullable: true created: type: string format: date-time readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_full_name: type: string readOnly: true user_email: type: string format: email title: Email address readOnly: true offering_name: type: string readOnly: true offering_slug: type: string readOnly: true offering_url: type: string format: uri readOnly: true modified: type: string format: date-time readOnly: true has_consent: type: boolean readOnly: true requires_reconsent: type: boolean readOnly: true collected_attributes: type: array items: type: string description: List of user attributes that will be shared with service provider readOnly: true required: - agreement_date - collected_attributes - created - has_consent - modified - offering_name - offering_slug - offering_url - offering_uuid - requires_reconsent - revocation_date - user_email - user_full_name - user_username - user_uuid - uuid UserOfferingConsentCreate: type: object properties: offering: type: string format: uuid required: - offering description: '' UserOfferingConsentCreateRequest: type: object properties: offering: type: string format: uuid required: - offering description: '' UserOfferingConsentRequest: type: object description: '' properties: version: type: string maxLength: 50 UserOrganizationCount: type: object properties: organization: type: string description: Organization name count: type: integer description: Number of users required: - count - organization description: '' UserOrganizationTypeCount: type: object properties: organization_type: type: string nullable: true description: Organization type (SCHAC URN) count: type: integer description: Number of users required: - count - organization_type description: '' UserRegistrationTrend: type: object description: '' properties: month: type: string count: type: integer required: - count - month UserRequest: type: object description: '' properties: username: type: string minLength: 1 description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 100 job_title: type: string maxLength: 120 email: type: string format: email minLength: 1 phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 description: type: string maxLength: 4096 is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_support: type: boolean title: Support status description: Designates whether the user is a global support user. token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. agree_with_policy: type: boolean writeOnly: true description: User must agree with the policy to register. notifications_enabled: type: boolean description: Designates whether the user is allowed to receive email notifications. preferred_language: type: string maxLength: 10 first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 birth_date: type: string format: date nullable: true image: type: string format: binary nullable: true gender: nullable: true description: ISO 5218 gender code minimum: 0 maximum: 32767 oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) maxLength: 50 place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) maxLength: 2 nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) organization_country: type: string maxLength: 2 organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) maxLength: 255 organization_registry_code: type: string description: Company registration code of the user's organization, if known maxLength: 255 eduperson_assurance: description: REFEDS assurance profile URIs from identity provider is_identity_manager: type: boolean description: Designates whether the user is allowed to manage remote user identities. managed_isds: description: 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. required: - email - username UserRoleCreateRequest: type: object properties: role: type: string minLength: 1 user: type: string format: uuid expiration_time: type: string format: date-time nullable: true required: - role - user description: '' UserRoleDeleteRequest: type: object properties: role: type: string minLength: 1 user: type: string format: uuid expiration_time: type: string format: date-time nullable: true required: - role - user description: '' UserRoleDetails: type: object properties: uuid: type: string format: uuid readOnly: true created: type: string format: date-time readOnly: true expiration_time: type: string format: date-time nullable: true role_name: type: string readOnly: true role_uuid: type: string format: uuid readOnly: true user_email: type: string format: email title: Email address readOnly: true user_full_name: type: string readOnly: true user_username: type: string description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters readOnly: true user_uuid: type: string format: uuid readOnly: true user_image: type: string format: uri readOnly: true created_by_full_name: type: string readOnly: true created_by_uuid: type: string format: uuid readOnly: true required: [] description: '' UserRoleExpirationTime: type: object properties: expiration_time: type: string format: date-time nullable: true required: - expiration_time description: '' UserRoleUpdateRequest: type: object properties: role: type: string minLength: 1 user: type: string format: uuid expiration_time: type: string format: date-time nullable: true required: - role - user description: '' UsernameGenerationPolicyEnum: enum: - service_provider - anonymized - full_name - waldur_username - freeipa - identity_claim type: string description: '' ValidationDecisionEnum: enum: - approved - rejected - pending type: string description: '' ValidationMethodEnum: enum: - ariregister - wirtschaftscompass - bolagsverket - breg type: string description: '' VendorNameChoice: type: object description: '' properties: value: type: string label: type: string required: - label - value VenueTypeEnum: enum: - journal - conference - preprint - book - thesis - report - other type: string description: '' Version: type: object properties: version: type: string description: Current installed version of the application latest_version: type: string description: Latest available version from GitHub, if available. required: - version description: '' VersionAdoption: type: object description: '' properties: version: type: string readOnly: true description: Version identifier users_count: type: integer readOnly: true description: Number of users on this version required: - users_count - version VersionHistory: type: object description: '' properties: id: type: integer description: Version ID revision_date: type: string format: date-time description: When this revision was created revision_user: type: object additionalProperties: {} nullable: true readOnly: true description: User who created this revision revision_comment: type: string description: Comment describing the revision serialized_data: type: object additionalProperties: {} readOnly: true description: Serialized model fields at this revision required: - id - revision_comment - revision_date - revision_user - serialized_data VisibilityEnum: enum: - private - public type: string description: '' VisibleInvitationDetails: type: object properties: scope_uuid: type: string format: uuid readOnly: true description: UUID of the invitation scope (Customer or Project) scope_name: type: string readOnly: true description: Name of the invitation scope scope_description: type: string description: Description of the invitation scope readOnly: true scope_type: type: string nullable: true readOnly: true description: Type of the invitation scope (e.g., 'customer', 'project') customer_uuid: type: string format: uuid readOnly: true description: UUID of the customer organization customer_name: type: string readOnly: true description: Name of the customer organization role_name: type: string readOnly: true description: Name of the role being granted (e.g., 'PROJECT.ADMIN') role_description: type: string readOnly: true description: Description of the role being granted created_by_full_name: type: string readOnly: true description: Full name of the user who created this invitation created_by_username: type: string readOnly: true description: Username of the user who created this invitation created_by_image: type: string format: uri readOnly: true description: Profile image of the user who created this invitation email: type: string format: email description: Invitation link will be sent to this email. Note that user can accept invitation with different email. maxLength: 254 error_message: type: string readOnly: true execution_state: allOf: - $ref: '#/components/schemas/ExecutionStateEnum' readOnly: true state: allOf: - $ref: '#/components/schemas/InvitationState' readOnly: true description: Current state of the invitation (e.g., 'pending', 'accepted', 'rejected') required: - created_by_full_name - created_by_image - created_by_username - customer_name - customer_uuid - email - error_message - execution_state - role_description - role_name - scope_description - scope_name - scope_type - scope_uuid - state description: '' VmwareCluster: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 required: - name - url - uuid VmwareDatastore: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 type: type: string maxLength: 255 capacity: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Capacity, in MB. free_space: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Available space, in MB. required: - name - type - url - uuid VmwareDisk: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string readOnly: true description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true size: type: integer maximum: 2147483647 minimum: 1024 description: Size in MiB vm: type: string format: uri readOnly: true vm_uuid: type: string format: uuid readOnly: true vm_name: type: string readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] VmwareDiskExtend: type: object properties: size: type: integer maximum: 2147483647 minimum: 0 description: Size in MiB required: - size description: '' VmwareDiskExtendRequest: type: object properties: size: type: integer maximum: 2147483647 minimum: 0 description: Size in MiB required: - size description: '' VmwareDiskRequest: type: object description: '' properties: description: type: string maxLength: 4096 size: type: integer maximum: 2147483647 minimum: 1024 description: Size in MiB required: - size VmwareFolder: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 required: - name - url - uuid VmwareLimit: type: object properties: max_cpu: type: integer readOnly: true max_cores_per_socket: type: integer readOnly: true max_ram: type: integer readOnly: true max_disk: type: integer readOnly: true max_disk_total: type: integer readOnly: true required: - max_cores_per_socket - max_cpu - max_disk - max_disk_total - max_ram description: '' VmwareNestedDisk: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true size: type: integer maximum: 2147483647 minimum: 0 description: Size in MiB required: [] description: '' VmwareNestedDiskRequest: type: object properties: size: type: integer maximum: 2147483647 minimum: 0 description: Size in MiB required: - size description: '' VmwareNestedNetwork: type: object properties: url: type: string format: uri required: - url description: '' VmwareNestedNetworkRequest: type: object properties: url: type: string format: uri required: - url description: '' VmwareNestedPort: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 mac_address: type: string readOnly: true network: type: string format: uri required: [] description: '' VmwareNestedPortRequest: type: object properties: name: type: string minLength: 1 maxLength: 150 network: type: string format: uri required: - name - network description: '' VmwareNetwork: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 type: type: string maxLength: 255 required: - name - type - url - uuid VmwarePort: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string readOnly: true description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri readOnly: true service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri readOnly: true project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true mac_address: type: string readOnly: true vm: type: string format: uri readOnly: true vm_uuid: type: string format: uuid readOnly: true vm_name: type: string readOnly: true network: type: string format: uri network_name: type: string readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] VmwarePortRequest: type: object description: '' properties: description: type: string maxLength: 4096 network: type: string format: uri required: - network VmwareTemplate: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 created: type: string format: date-time modified: type: string format: date-time guest_os: type: string description: Defines the valid guest operating system types used for configuring a virtual machine maxLength: 50 guest_os_name: type: string readOnly: true cores: type: integer maximum: 32767 minimum: 0 description: Number of cores in a VM cores_per_socket: type: integer maximum: 32767 minimum: 0 description: Number of cores per socket in a VM ram: type: integer maximum: 2147483647 minimum: 0 description: Memory size in MiB disk: type: integer maximum: 2147483647 minimum: 0 description: Disk size in MiB required: - created - guest_os - guest_os_name - modified - name - url - uuid VmwareVirtualMachine: type: object description: '' properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true name: type: string maxLength: 150 description: type: string maxLength: 4096 service_name: type: string readOnly: true service_settings: type: string format: uri service_settings_uuid: type: string format: uuid readOnly: true service_settings_state: type: string readOnly: true service_settings_error_message: type: string readOnly: true project: type: string format: uri project_name: type: string readOnly: true project_uuid: type: string format: uuid readOnly: true customer: type: string format: uri readOnly: true customer_uuid: type: string format: uuid readOnly: true customer_name: type: string readOnly: true customer_native_name: type: string readOnly: true customer_abbreviation: type: string readOnly: true error_message: type: string readOnly: true error_traceback: type: string readOnly: true resource_type: type: string readOnly: true state: allOf: - $ref: '#/components/schemas/CoreStates' readOnly: true created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true backend_id: type: string readOnly: true access_url: type: string nullable: true readOnly: true guest_os: nullable: true oneOf: - $ref: '#/components/schemas/GuestOsEnum' - $ref: '#/components/schemas/NullEnum' guest_os_name: type: string readOnly: true cores: type: integer maximum: 32767 minimum: 1 description: Number of cores in a VM cores_per_socket: type: integer maximum: 32767 minimum: 1 description: Number of cores per socket in a VM ram: type: integer maximum: 2147483647 minimum: 1024 description: Memory size in MiB disk: type: integer readOnly: true description: Disk size in MiB disks: type: array items: $ref: '#/components/schemas/VmwareNestedDisk' readOnly: true runtime_state: type: string readOnly: true cluster: type: string format: uri nullable: true datastore: type: string format: uri nullable: true folder: type: string format: uri nullable: true template_name: type: string readOnly: true cluster_name: type: string readOnly: true datastore_name: type: string readOnly: true folder_name: type: string readOnly: true ports: type: array items: $ref: '#/components/schemas/VmwareNestedPort' readOnly: true guest_power_state: allOf: - $ref: '#/components/schemas/GuestPowerStateEnum' readOnly: true title: The power state of the guest operating system. tools_state: type: string readOnly: true tools_installed: type: boolean readOnly: true marketplace_offering_uuid: type: string nullable: true readOnly: true marketplace_offering_name: type: string nullable: true readOnly: true marketplace_offering_plugin_options: type: object additionalProperties: {} nullable: true readOnly: true marketplace_category_uuid: type: string nullable: true readOnly: true marketplace_category_name: type: string nullable: true readOnly: true marketplace_resource_uuid: type: string nullable: true readOnly: true marketplace_plan_uuid: type: string nullable: true readOnly: true marketplace_resource_state: type: string nullable: true readOnly: true is_usage_based: type: boolean nullable: true readOnly: true is_limit_based: type: boolean nullable: true readOnly: true required: [] VmwareVirtualMachineRequest: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri guest_os: nullable: true oneOf: - $ref: '#/components/schemas/GuestOsEnum' - $ref: '#/components/schemas/NullEnum' cores: type: integer maximum: 32767 minimum: 1 description: Number of cores in a VM cores_per_socket: type: integer maximum: 32767 minimum: 1 description: Number of cores per socket in a VM ram: type: integer maximum: 2147483647 minimum: 1024 description: Memory size in MiB template: type: string format: uri writeOnly: true nullable: true cluster: type: string format: uri nullable: true networks: type: array items: $ref: '#/components/schemas/VmwareNestedNetworkRequest' writeOnly: true datastore: type: string format: uri nullable: true folder: type: string format: uri nullable: true required: - name - project - service_settings VolumeAttachRequest: type: object description: '' properties: instance: type: string format: uri description: Instance that this volume is attached to, if any required: - instance VolumeTypeEnum: enum: - gp2 - io1 - standard type: string description: '' VolumeTypeMapping: type: object properties: src_type_uuid: type: string format: uuid dst_type_uuid: type: string format: uuid required: - dst_type_uuid - src_type_uuid description: '' VolumeTypeMappingRequest: type: object properties: src_type_uuid: type: string format: uuid dst_type_uuid: type: string format: uuid required: - dst_type_uuid - src_type_uuid description: '' VolumeTypeResponse: type: object description: '' properties: id: type: string name: type: string description: type: string required: - id - name WALDURSUPPORTACTIVEBACKENDTYPEEnum: enum: - atlassian - zammad - smax type: string description: '' WaldurCustomerBrief: type: object description: '' properties: uuid: type: string format: uuid name: type: string abbreviation: type: string required: - name - uuid WaldurFieldSuggestion: type: object properties: field: type: string description: Waldur User model field name description: type: string description: Human-readable field description suggested_claims: type: array items: type: string description: OIDC claims that could map to this field, ordered by likelihood available_claims: type: array items: type: string description: Claims from this IdP that match the suggestions required: - available_claims - description - field - suggested_claims description: '' WaldurResourceForLinking: type: object description: '' properties: uuid: type: string format: uuid name: type: string backend_id: type: string description: Current backend_id (Arrow license reference if linked). project_name: type: string offering_name: type: string state: type: string required: - backend_id - name - offering_name - project_name - state - uuid WebHook: type: object properties: url: type: string format: uri readOnly: true uuid: type: string format: uuid readOnly: true is_active: type: boolean author_uuid: type: string format: uuid readOnly: true event_types: type: array items: $ref: '#/components/schemas/EventTypesEnum' event_groups: type: array items: $ref: '#/components/schemas/EventGroupsEnum' created: type: string format: date-time readOnly: true modified: type: string format: date-time readOnly: true hook_type: type: string readOnly: true author_fullname: type: string readOnly: true author_username: type: string readOnly: true author_email: type: string readOnly: true destination_url: type: string format: uri maxLength: 200 content_type: $ref: '#/components/schemas/WebHookContentTypeEnum' required: - author_email - author_fullname - author_username - author_uuid - created - destination_url - hook_type - modified - url - uuid description: '' WebHookContentTypeEnum: enum: - json - form type: string description: '' WebHookReceiver: type: object properties: webhookEvent: type: string issue: $ref: '#/components/schemas/JiraIssue' comment: $ref: '#/components/schemas/JiraComment' changelog: $ref: '#/components/schemas/JiraChangelog' issue_event_type_name: type: string required: - issue - webhookEvent description: '' WebHookReceiverRequest: type: object properties: webhookEvent: type: string minLength: 1 issue: $ref: '#/components/schemas/JiraIssueRequest' comment: $ref: '#/components/schemas/JiraCommentRequest' changelog: $ref: '#/components/schemas/JiraChangelogRequest' issue_event_type_name: type: string minLength: 1 required: - issue - webhookEvent description: '' WebHookRequest: type: object properties: is_active: type: boolean event_types: type: array items: $ref: '#/components/schemas/EventTypesEnum' event_groups: type: array items: $ref: '#/components/schemas/EventGroupsEnum' destination_url: type: string format: uri minLength: 1 maxLength: 200 content_type: $ref: '#/components/schemas/WebHookContentTypeEnum' required: - destination_url description: '' WidgetEnum: enum: - csv - filesize - attached_instance type: string description: '' ZAMMADARTICLETYPEEnum: enum: - email - phone - web - note - sms - chat - fax - twitter status - twitter direct-message - facebook feed post - facebook feed comment - telegram personal-message type: string description: '' GenericOrderAttributes: type: object description: '' additionalProperties: true properties: name: type: string description: The name of the resource to be created. Will be displayed in the portal. maxLength: 150 description: type: string description: A free-form description for the resource. CallManagingOrganisationRequestForm: type: object description: '' properties: description: type: string maxLength: 4096 customer: type: string format: uri image: type: string format: binary nullable: true required: - customer CallManagingOrganisationRequestMultipart: type: object description: '' properties: description: type: string maxLength: 4096 customer: type: string format: uri image: type: string format: binary nullable: true required: - customer PatchedCallManagingOrganisationRequestForm: type: object description: '' properties: description: type: string maxLength: 4096 image: type: string format: binary nullable: true PatchedCallManagingOrganisationRequestMultipart: type: object description: '' properties: description: type: string maxLength: 4096 image: type: string format: binary nullable: true CustomerRequestForm: type: object description: '' properties: backend_id: type: string description: Organization identifier in another application. maxLength: 255 image: type: string format: binary nullable: true blocked: type: boolean archived: type: boolean display_billing_info_in_projects: type: boolean default_tax_percent: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,2})?$ accounting_start_date: type: string format: date-time title: Start date of accounting sponsor_number: type: integer maximum: 2147483647 minimum: 0 nullable: true description: External ID of the sponsor covering the costs max_service_accounts: type: integer maximum: 32767 minimum: 0 nullable: true description: Maximum number of service accounts allowed project_metadata_checklist: type: string format: uuid nullable: true description: Checklist to be used for project metadata validation in this organization grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 160 abbreviation: type: string maxLength: 12 description: type: string maxLength: 4096 contact_details: type: string maxLength: 500 agreement_number: type: string maxLength: 160 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 access_subnets: type: string description: Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. registration_code: type: string maxLength: 160 homepage: type: string format: uri maxLength: 255 domain: type: string maxLength: 255 vat_code: type: string description: VAT number maxLength: 20 postal: type: string maxLength: 20 address: type: string maxLength: 300 bank_name: type: string maxLength: 150 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true bank_account: type: string maxLength: 50 country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 required: - name CustomerRequestMultipart: type: object description: '' properties: backend_id: type: string description: Organization identifier in another application. maxLength: 255 image: type: string format: binary nullable: true blocked: type: boolean archived: type: boolean display_billing_info_in_projects: type: boolean default_tax_percent: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,2})?$ accounting_start_date: type: string format: date-time title: Start date of accounting sponsor_number: type: integer maximum: 2147483647 minimum: 0 nullable: true description: External ID of the sponsor covering the costs max_service_accounts: type: integer maximum: 32767 minimum: 0 nullable: true description: Maximum number of service accounts allowed project_metadata_checklist: type: string format: uuid nullable: true description: Checklist to be used for project metadata validation in this organization grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 160 abbreviation: type: string maxLength: 12 description: type: string maxLength: 4096 contact_details: type: string maxLength: 500 agreement_number: type: string maxLength: 160 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 access_subnets: type: string description: Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. registration_code: type: string maxLength: 160 homepage: type: string format: uri maxLength: 255 domain: type: string maxLength: 255 vat_code: type: string description: VAT number maxLength: 20 postal: type: string maxLength: 20 address: type: string maxLength: 300 bank_name: type: string maxLength: 150 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true bank_account: type: string maxLength: 50 country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 required: - name PatchedCustomerRequestForm: type: object description: '' properties: backend_id: type: string description: Organization identifier in another application. maxLength: 255 image: type: string format: binary nullable: true blocked: type: boolean archived: type: boolean display_billing_info_in_projects: type: boolean default_tax_percent: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,2})?$ accounting_start_date: type: string format: date-time title: Start date of accounting sponsor_number: type: integer maximum: 2147483647 minimum: 0 nullable: true description: External ID of the sponsor covering the costs max_service_accounts: type: integer maximum: 32767 minimum: 0 nullable: true description: Maximum number of service accounts allowed project_metadata_checklist: type: string format: uuid nullable: true description: Checklist to be used for project metadata validation in this organization grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 160 abbreviation: type: string maxLength: 12 description: type: string maxLength: 4096 contact_details: type: string maxLength: 500 agreement_number: type: string maxLength: 160 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 access_subnets: type: string description: Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. registration_code: type: string maxLength: 160 homepage: type: string format: uri maxLength: 255 domain: type: string maxLength: 255 vat_code: type: string description: VAT number maxLength: 20 postal: type: string maxLength: 20 address: type: string maxLength: 300 bank_name: type: string maxLength: 150 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true bank_account: type: string maxLength: 50 country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 PatchedCustomerRequestMultipart: type: object description: '' properties: backend_id: type: string description: Organization identifier in another application. maxLength: 255 image: type: string format: binary nullable: true blocked: type: boolean archived: type: boolean display_billing_info_in_projects: type: boolean default_tax_percent: type: string format: decimal pattern: ^-?\d{0,3}(?:\.\d{0,2})?$ accounting_start_date: type: string format: date-time title: Start date of accounting sponsor_number: type: integer maximum: 2147483647 minimum: 0 nullable: true description: External ID of the sponsor covering the costs max_service_accounts: type: integer maximum: 32767 minimum: 0 nullable: true description: Maximum number of service accounts allowed project_metadata_checklist: type: string format: uuid nullable: true description: Checklist to be used for project metadata validation in this organization grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 160 abbreviation: type: string maxLength: 12 description: type: string maxLength: 4096 contact_details: type: string maxLength: 500 agreement_number: type: string maxLength: 160 email: type: string format: email title: Email address maxLength: 75 phone_number: type: string maxLength: 255 access_subnets: type: string description: Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. registration_code: type: string maxLength: 160 homepage: type: string format: uri maxLength: 255 domain: type: string maxLength: 255 vat_code: type: string description: VAT number maxLength: 20 postal: type: string maxLength: 20 address: type: string maxLength: 300 bank_name: type: string maxLength: 150 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true bank_account: type: string maxLength: 50 country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' notification_emails: type: string description: Comma-separated list of notification email addresses maxLength: 640 ExternalLinkRequestForm: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 link: type: string format: uri minLength: 1 maxLength: 500 image: type: string format: binary nullable: true required: - link - name description: '' ExternalLinkRequestMultipart: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 link: type: string format: uri minLength: 1 maxLength: 500 image: type: string format: binary nullable: true required: - link - name description: '' PatchedExternalLinkRequestForm: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 link: type: string format: uri minLength: 1 maxLength: 500 image: type: string format: binary nullable: true description: '' PatchedExternalLinkRequestMultipart: type: object properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 link: type: string format: uri minLength: 1 maxLength: 500 image: type: string format: binary nullable: true description: '' PaidRequestForm: type: object properties: date: type: string format: date proof: type: string format: binary required: - date description: '' PaidRequestMultipart: type: object properties: date: type: string format: date proof: type: string format: binary required: - date description: '' MarketplaceCategoryRequestForm: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true default_vm_category: type: boolean description: Set to "true" if this category is for OpenStack VM. Only one category can have "true" value. default_volume_category: type: boolean description: Set to true if this category is for OpenStack Volume. Only one category can have "true" value. default_tenant_category: type: boolean description: Set to true if this category is for OpenStack Tenant. Only one category can have "true" value. group: type: string format: uri nullable: true required: - title MarketplaceCategoryRequestMultipart: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true default_vm_category: type: boolean description: Set to "true" if this category is for OpenStack VM. Only one category can have "true" value. default_volume_category: type: boolean description: Set to true if this category is for OpenStack Volume. Only one category can have "true" value. default_tenant_category: type: boolean description: Set to true if this category is for OpenStack Tenant. Only one category can have "true" value. group: type: string format: uri nullable: true required: - title PatchedMarketplaceCategoryRequestForm: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true default_vm_category: type: boolean description: Set to "true" if this category is for OpenStack VM. Only one category can have "true" value. default_volume_category: type: boolean description: Set to true if this category is for OpenStack Volume. Only one category can have "true" value. default_tenant_category: type: boolean description: Set to true if this category is for OpenStack Tenant. Only one category can have "true" value. group: type: string format: uri nullable: true PatchedMarketplaceCategoryRequestMultipart: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true default_vm_category: type: boolean description: Set to "true" if this category is for OpenStack VM. Only one category can have "true" value. default_volume_category: type: boolean description: Set to true if this category is for OpenStack Volume. Only one category can have "true" value. default_tenant_category: type: boolean description: Set to true if this category is for OpenStack Tenant. Only one category can have "true" value. group: type: string format: uri nullable: true CategoryGroupRequestForm: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true required: - title CategoryGroupRequestMultipart: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true required: - title PatchedCategoryGroupRequestForm: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true PatchedCategoryGroupRequestMultipart: type: object description: '' properties: title: type: string minLength: 1 maxLength: 255 description: type: string icon: type: string format: binary nullable: true OfferingFileRequestForm: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 offering: type: string format: uri file: type: string format: binary required: - file - name - offering OfferingFileRequestMultipart: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 offering: type: string format: uri file: type: string format: binary required: - file - name - offering OrderConsumerInfoRequestForm: type: object properties: consumer_message: type: string consumer_message_attachment: type: string format: binary description: '' OrderConsumerInfoRequestMultipart: type: object properties: consumer_message: type: string consumer_message_attachment: type: string format: binary description: '' OrderProviderInfoRequestForm: type: object properties: provider_message: type: string provider_message_url: type: string format: uri provider_message_attachment: type: string format: binary description: '' OrderProviderInfoRequestMultipart: type: object properties: provider_message: type: string provider_message_url: type: string format: uri provider_message_attachment: type: string format: binary description: '' OrderAttachmentRequestForm: type: object properties: attachment: type: string format: binary nullable: true description: '' OrderAttachmentRequestMultipart: type: object properties: attachment: type: string format: binary nullable: true description: '' OfferingCreateRequestForm: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ description: type: string full_description: type: string privacy_policy_link: type: string format: uri maxLength: 200 access_url: type: string format: uri description: Publicly accessible offering access URL maxLength: 200 customer: type: string format: uri nullable: true category: type: string format: uri attributes: {} options: $ref: '#/components/schemas/OfferingOptionsRequest' resource_options: $ref: '#/components/schemas/OfferingOptionsRequest' components: type: array items: $ref: '#/components/schemas/OfferingComponentRequest' plugin_options: $ref: '#/components/schemas/MergedPluginOptionsRequest' vendor_details: type: string getting_started: type: string integration_guide: type: string thumbnail: type: string format: binary nullable: true plans: type: array items: $ref: '#/components/schemas/BaseProviderPlanRequest' type: type: string minLength: 1 maxLength: 100 shared: type: boolean description: Accessible to all customers. billable: type: boolean description: Purchase and usage is invoiced. datacite_doi: type: string maxLength: 255 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' backend_id: type: string maxLength: 255 backend_id_rules: description: 'Validation rules for resource backend_id: format regex and uniqueness scope.' image: type: string format: binary nullable: true backend_metadata: {} compliance_checklist: type: string format: uri nullable: true limits: type: object additionalProperties: $ref: '#/components/schemas/OfferingComponentLimitRequest' writeOnly: true required: - category - name - type OfferingCreateRequestMultipart: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ description: type: string full_description: type: string privacy_policy_link: type: string format: uri maxLength: 200 access_url: type: string format: uri description: Publicly accessible offering access URL maxLength: 200 customer: type: string format: uri nullable: true category: type: string format: uri attributes: {} options: $ref: '#/components/schemas/OfferingOptionsRequest' resource_options: $ref: '#/components/schemas/OfferingOptionsRequest' components: type: array items: $ref: '#/components/schemas/OfferingComponentRequest' plugin_options: $ref: '#/components/schemas/MergedPluginOptionsRequest' vendor_details: type: string getting_started: type: string integration_guide: type: string thumbnail: type: string format: binary nullable: true plans: type: array items: $ref: '#/components/schemas/BaseProviderPlanRequest' type: type: string minLength: 1 maxLength: 100 shared: type: boolean description: Accessible to all customers. billable: type: boolean description: Purchase and usage is invoiced. datacite_doi: type: string maxLength: 255 latitude: type: number format: double nullable: true longitude: type: number format: double nullable: true country: description: Country code (ISO 3166-1 alpha-2) oneOf: - $ref: '#/components/schemas/CountryEnum' - $ref: '#/components/schemas/BlankEnum' backend_id: type: string maxLength: 255 backend_id_rules: description: 'Validation rules for resource backend_id: format regex and uniqueness scope.' image: type: string format: binary nullable: true backend_metadata: {} compliance_checklist: type: string format: uri nullable: true limits: type: object additionalProperties: $ref: '#/components/schemas/OfferingComponentLimitRequest' writeOnly: true required: - category - name - type OfferingImageRequestForm: type: object properties: image: type: string format: binary required: - image description: '' OfferingImageRequestMultipart: type: object properties: image: type: string format: binary required: - image description: '' OfferingThumbnailRequestForm: type: object properties: thumbnail: type: string format: binary required: - thumbnail description: '' OfferingThumbnailRequestMultipart: type: object properties: thumbnail: type: string format: binary required: - thumbnail description: '' ResourceRenewRequestForm: type: object description: '' properties: extension_months: type: integer maximum: 60 minimum: 12 description: Number of months to extend the subscription by. limits: type: object additionalProperties: type: integer minimum: 0 description: Optional new limits for the resource. Supports upgrades only. request_comment: type: string description: Optional comment for the renewal request. maxLength: 255 attachment: type: string format: binary description: Optional PDF attachment for the renewal request. required: - extension_months ResourceRenewRequestMultipart: type: object description: '' properties: extension_months: type: integer maximum: 60 minimum: 12 description: Number of months to extend the subscription by. limits: type: object additionalProperties: type: integer minimum: 0 description: Optional new limits for the resource. Supports upgrades only. request_comment: type: string description: Optional comment for the renewal request. maxLength: 255 attachment: type: string format: binary description: Optional PDF attachment for the renewal request. required: - extension_months ScreenshotRequestForm: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 image: type: string format: binary offering: type: string format: uri required: - image - name - offering ScreenshotRequestMultipart: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 image: type: string format: binary offering: type: string format: uri required: - image - name - offering ServiceProviderRequestForm: type: object description: '' properties: description: type: string maxLength: 4096 enable_notifications: type: boolean customer: type: string format: uri image: type: string format: binary nullable: true required: - customer ServiceProviderRequestMultipart: type: object description: '' properties: description: type: string maxLength: 4096 enable_notifications: type: boolean customer: type: string format: uri image: type: string format: binary nullable: true required: - customer PatchedServiceProviderRequestForm: type: object description: '' properties: description: type: string maxLength: 4096 enable_notifications: type: boolean image: type: string format: binary nullable: true PatchedServiceProviderRequestMultipart: type: object description: '' properties: description: type: string maxLength: 4096 enable_notifications: type: boolean image: type: string format: binary nullable: true OnboardingJustificationDocumentationRequestForm: type: object description: '' properties: file: type: string format: binary nullable: true description: Upload supporting documentation. OnboardingJustificationDocumentationRequestMultipart: type: object description: '' properties: file: type: string format: binary nullable: true description: Upload supporting documentation. ProjectRequestForm: type: object description: '' properties: name: type: string minLength: 1 maxLength: 500 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ customer: type: string format: uri title: Organization description: type: string description: Project description (HTML content will be sanitized) type: type: string format: uri nullable: true title: Project type backend_id: type: string maxLength: 255 start_date: type: string format: date nullable: true description: Project start date. Cannot be edited after the start date has arrived. end_date: type: string format: date nullable: true description: Project end date. Setting this field requires DELETE_PROJECT permission. oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' is_industry: type: boolean image: type: string format: binary nullable: true kind: allOf: - $ref: '#/components/schemas/KindEnum' title: Project type staff_notes: type: string description: Internal notes visible only to staff and support users (HTML content will be sanitized) grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated. Overrides customer-level setting. user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). required: - customer - name ProjectRequestMultipart: type: object description: '' properties: name: type: string minLength: 1 maxLength: 500 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ customer: type: string format: uri title: Organization description: type: string description: Project description (HTML content will be sanitized) type: type: string format: uri nullable: true title: Project type backend_id: type: string maxLength: 255 start_date: type: string format: date nullable: true description: Project start date. Cannot be edited after the start date has arrived. end_date: type: string format: date nullable: true description: Project end date. Setting this field requires DELETE_PROJECT permission. oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' is_industry: type: boolean image: type: string format: binary nullable: true kind: allOf: - $ref: '#/components/schemas/KindEnum' title: Project type staff_notes: type: string description: Internal notes visible only to staff and support users (HTML content will be sanitized) grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated. Overrides customer-level setting. user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). required: - customer - name PatchedProjectRequestForm: type: object description: '' properties: name: type: string minLength: 1 maxLength: 500 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ customer: type: string format: uri title: Organization description: type: string description: Project description (HTML content will be sanitized) type: type: string format: uri nullable: true title: Project type backend_id: type: string maxLength: 255 start_date: type: string format: date nullable: true description: Project start date. Cannot be edited after the start date has arrived. end_date: type: string format: date nullable: true description: Project end date. Setting this field requires DELETE_PROJECT permission. oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' is_industry: type: boolean image: type: string format: binary nullable: true kind: allOf: - $ref: '#/components/schemas/KindEnum' title: Project type staff_notes: type: string description: Internal notes visible only to staff and support users (HTML content will be sanitized) grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated. Overrides customer-level setting. user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). PatchedProjectRequestMultipart: type: object description: '' properties: name: type: string minLength: 1 maxLength: 500 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ customer: type: string format: uri title: Organization description: type: string description: Project description (HTML content will be sanitized) type: type: string format: uri nullable: true title: Project type backend_id: type: string maxLength: 255 start_date: type: string format: date nullable: true description: Project start date. Cannot be edited after the start date has arrived. end_date: type: string format: date nullable: true description: Project end date. Setting this field requires DELETE_PROJECT permission. oecd_fos_2007_code: nullable: true oneOf: - $ref: '#/components/schemas/OecdFos2007CodeEnum' - $ref: '#/components/schemas/BlankEnum' - $ref: '#/components/schemas/NullEnum' is_industry: type: boolean image: type: string format: binary nullable: true kind: allOf: - $ref: '#/components/schemas/KindEnum' title: Project type staff_notes: type: string description: Internal notes visible only to staff and support users (HTML content will be sanitized) grace_period_days: type: integer maximum: 2147483647 minimum: 0 nullable: true description: Number of extra days after project end date before resources are terminated. Overrides customer-level setting. user_email_patterns: {} user_affiliations: {} user_identity_sources: description: List of allowed identity sources (identity providers). ConstanceSettingsRequestForm: type: object properties: SITE_NAME: type: string SITE_DESCRIPTION: type: string HOMEPORT_URL: type: string RANCHER_USERNAME_INPUT_LABEL: type: string DISCLAIMER_AREA_TEXT: type: string minLength: 1 SITE_ADDRESS: type: string SITE_EMAIL: type: string SITE_PHONE: type: string CURRENCY_NAME: type: string THUMBNAIL_SIZE: type: string ANONYMOUS_USER_CAN_VIEW_OFFERINGS: type: boolean ANONYMOUS_USER_CAN_VIEW_PLANS: type: boolean RESTRICTED_OFFERING_VISIBILITY_MODE: $ref: '#/components/schemas/RESTRICTEDOFFERINGVISIBILITYMODEEnum' ALLOW_SERVICE_PROVIDER_OFFERING_MANAGEMENT: type: boolean NOTIFY_STAFF_ABOUT_APPROVALS: type: boolean NOTIFY_ABOUT_RESOURCE_CHANGE: type: boolean DISABLE_SENDING_NOTIFICATIONS_ABOUT_RESOURCE_UPDATE: type: boolean MARKETPLACE_LANDING_PAGE: type: string ENABLE_STALE_RESOURCE_NOTIFICATIONS: type: boolean TELEMETRY_URL: type: string TELEMETRY_VERSION: type: integer SCRIPT_RUN_MODE: $ref: '#/components/schemas/SCRIPTRUNMODEEnum' DOCKER_CLIENT: type: string minLength: 1 DOCKER_RUN_OPTIONS: type: string minLength: 1 DOCKER_SCRIPT_DIR: type: string DOCKER_REMOVE_CONTAINER: type: boolean DOCKER_IMAGES: type: string minLength: 1 DOCKER_VOLUME_NAME: type: string K8S_NAMESPACE: type: string K8S_CONFIG_PATH: type: string K8S_JOB_TIMEOUT: type: integer ENABLE_STRICT_CHECK_ACCEPTING_INVITATION: type: boolean INVITATION_DISABLE_MULTIPLE_ROLES: type: boolean DEFAULT_IDP: oneOf: - $ref: '#/components/schemas/DEFAULTIDPEnum' - $ref: '#/components/schemas/BlankEnum' DOCS_URL: type: string format: uri SHORT_PAGE_TITLE: type: string FULL_PAGE_TITLE: type: string PROJECT_END_DATE_MANDATORY: type: boolean ENABLE_ORDER_START_DATE: type: boolean BRAND_COLOR: type: string pattern: ^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$ HERO_LINK_LABEL: type: string HERO_LINK_URL: type: string format: uri SUPPORT_PORTAL_URL: type: string format: uri COMMON_FOOTER_TEXT: type: string minLength: 1 COMMON_FOOTER_HTML: type: string minLength: 1 LANGUAGE_CHOICES: type: string DISABLE_DARK_THEME: type: boolean POWERED_BY_LOGO: type: string format: binary nullable: true HERO_IMAGE: type: string format: binary nullable: true MARKETPLACE_HERO_IMAGE: type: string format: binary nullable: true CALL_MANAGEMENT_HERO_IMAGE: type: string format: binary nullable: true SIDEBAR_LOGO: type: string format: binary nullable: true SIDEBAR_LOGO_DARK: type: string format: binary nullable: true SIDEBAR_LOGO_MOBILE: type: string format: binary nullable: true SIDEBAR_STYLE: $ref: '#/components/schemas/SIDEBARSTYLEEnum' FONT_FAMILY: $ref: '#/components/schemas/FONTFAMILYEnum' LOGIN_LOGO: type: string format: binary nullable: true LOGIN_LOGO_MULTILINGUAL: type: object additionalProperties: type: string format: binary nullable: true LOGIN_PAGE_LAYOUT: $ref: '#/components/schemas/LOGINPAGELAYOUTEnum' LOGIN_PAGE_VIDEO_URL: type: string format: uri LOGIN_PAGE_STATS: type: array items: {} LOGIN_PAGE_CAROUSEL_SLIDES: type: array items: {} LOGIN_PAGE_NEWS: type: array items: {} FAVICON: type: string format: binary nullable: true OFFERING_LOGO_PLACEHOLDER: type: string format: binary nullable: true DISCLAIMER_AREA_LOGO: type: string format: binary nullable: true WALDUR_SUPPORT_ENABLED: type: boolean WALDUR_SUPPORT_ACTIVE_BACKEND_TYPE: $ref: '#/components/schemas/WALDURSUPPORTACTIVEBACKENDTYPEEnum' WALDUR_SUPPORT_DISPLAY_REQUEST_TYPE: type: boolean ATLASSIAN_MAP_WALDUR_USERS_TO_SERVICEDESK_AGENTS: type: boolean ATLASSIAN_API_URL: type: string format: uri ATLASSIAN_USERNAME: type: string ATLASSIAN_PASSWORD: type: string ATLASSIAN_EMAIL: type: string format: email minLength: 1 ATLASSIAN_USE_OLD_API: type: boolean ATLASSIAN_TOKEN: type: string ATLASSIAN_PERSONAL_ACCESS_TOKEN: type: string ATLASSIAN_OAUTH2_CLIENT_ID: type: string ATLASSIAN_OAUTH2_ACCESS_TOKEN: type: string ATLASSIAN_OAUTH2_TOKEN_TYPE: type: string ATLASSIAN_VERIFY_SSL: type: boolean ATLASSIAN_PROJECT_ID: type: string ATLASSIAN_SHARED_USERNAME: type: boolean ATLASSIAN_CUSTOM_ISSUE_FIELD_MAPPING_ENABLED: type: boolean ATLASSIAN_DEFAULT_OFFERING_ISSUE_TYPE: type: string ATLASSIAN_EXCLUDED_ATTACHMENT_TYPES: type: string ATLASSIAN_DESCRIPTION_TEMPLATE: type: string ATLASSIAN_SUMMARY_TEMPLATE: type: string ATLASSIAN_AFFECTED_RESOURCE_FIELD: type: string ATLASSIAN_IMPACT_FIELD: type: string ATLASSIAN_ORGANISATION_FIELD: type: string ATLASSIAN_RESOLUTION_SLA_FIELD: type: string ATLASSIAN_PROJECT_FIELD: type: string ATLASSIAN_REPORTER_FIELD: type: string ATLASSIAN_CALLER_FIELD: type: string ATLASSIAN_SLA_FIELD: type: string ATLASSIAN_LINKED_ISSUE_TYPE: type: string ATLASSIAN_SATISFACTION_FIELD: type: string ATLASSIAN_REQUEST_FEEDBACK_FIELD: type: string ATLASSIAN_TEMPLATE_FIELD: type: string ATLASSIAN_WALDUR_BACKEND_ID_FIELD: type: string ZAMMAD_API_URL: type: string format: uri ZAMMAD_TOKEN: type: string ZAMMAD_GROUP: type: string ZAMMAD_ARTICLE_TYPE: $ref: '#/components/schemas/ZAMMADARTICLETYPEEnum' ZAMMAD_COMMENT_MARKER: type: string ZAMMAD_COMMENT_PREFIX: type: string ZAMMAD_COMMENT_COOLDOWN_DURATION: type: integer SMAX_API_URL: type: string format: uri SMAX_TENANT_ID: type: string SMAX_LOGIN: type: string SMAX_PASSWORD: type: string SMAX_ORGANISATION_FIELD: type: string SMAX_PROJECT_FIELD: type: string SMAX_AFFECTED_RESOURCE_FIELD: type: string SMAX_TIMES_TO_PULL: type: integer SMAX_SECONDS_TO_WAIT: type: integer SMAX_CREATION_SOURCE_NAME: type: string SMAX_REQUESTS_OFFERING: type: string SMAX_VERIFY_SSL: type: boolean ENABLE_MOCK_SERVICE_ACCOUNT_BACKEND: type: boolean ENABLE_MOCK_COURSE_ACCOUNT_BACKEND: type: boolean PROPOSAL_REVIEW_DURATION: type: integer ORCID_CLIENT_ID: type: string ORCID_CLIENT_SECRET: type: string ORCID_REDIRECT_URI: type: string format: uri ORCID_API_URL: type: string format: uri ORCID_AUTH_URL: type: string format: uri ORCID_SANDBOX_MODE: type: boolean SEMANTIC_SCHOLAR_API_KEY: type: string CROSSREF_MAILTO: type: string format: email minLength: 1 REVIEWER_PROFILES_ENABLED: type: boolean COI_DETECTION_ENABLED: type: boolean COI_DISCLOSURE_REQUIRED: type: boolean AUTOMATED_MATCHING_ENABLED: type: boolean COI_COAUTHORSHIP_LOOKBACK_YEARS: type: integer COI_COAUTHORSHIP_THRESHOLD_PAPERS: type: integer COI_INSTITUTIONAL_LOOKBACK_YEARS: type: integer USER_TABLE_COLUMNS: type: string AUTO_APPROVE_USER_TOS: type: boolean FREEIPA_ENABLED: type: boolean FREEIPA_HOSTNAME: type: string FREEIPA_USERNAME: type: string FREEIPA_PASSWORD: type: string FREEIPA_VERIFY_SSL: type: boolean FREEIPA_USERNAME_PREFIX: type: string FREEIPA_GROUPNAME_PREFIX: type: string FREEIPA_BLACKLISTED_USERNAMES: type: array items: type: string minLength: 1 FREEIPA_GROUP_SYNCHRONIZATION_ENABLED: type: boolean SCIM_MEMBERSHIP_SYNC_ENABLED: type: boolean SCIM_API_URL: type: string SCIM_API_KEY: type: string SCIM_URN_NAMESPACE: type: string KEYCLOAK_ICON: type: string format: binary nullable: true COUNTRIES: type: array items: type: string minLength: 1 OIDC_AUTH_URL: type: string OIDC_INTROSPECTION_URL: type: string OIDC_CLIENT_ID: type: string OIDC_CLIENT_SECRET: type: string OIDC_USER_FIELD: type: string OIDC_CACHE_TIMEOUT: type: integer OIDC_ACCESS_TOKEN_ENABLED: type: boolean OIDC_BLOCK_CREATION_OF_UNINVITED_USERS: type: boolean OIDC_MATCHMAKING_BY_EMAIL: type: boolean DEACTIVATE_USER_IF_NO_ROLES: type: boolean WALDUR_AUTH_SOCIAL_ROLE_CLAIM: type: string REMOTE_EDUTEAMS_REFRESH_TOKEN: type: string DEFAULT_OFFERING_USER_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' INVITATION_ALLOWED_FIELDS: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' ENABLED_USER_PROFILE_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' MANDATORY_USER_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' ENFORCE_MANDATORY_USER_ATTRIBUTES: type: boolean MAINTENANCE_ANNOUNCEMENT_NOTIFY_BEFORE_MINUTES: type: integer MAINTENANCE_ANNOUNCEMENT_NOTIFY_SYSTEM: type: array items: oneOf: - $ref: '#/components/schemas/NotifySystemEnum' - $ref: '#/components/schemas/BlankEnum' ENFORCE_USER_CONSENT_FOR_OFFERINGS: type: boolean ENFORCE_OFFERING_USER_PROFILE_COMPLETENESS: type: boolean DISABLED_OFFERING_TYPES: type: array items: oneOf: - $ref: '#/components/schemas/OfferingTypeEnum' - $ref: '#/components/schemas/BlankEnum' ONBOARDING_VALIDATION_METHODS: type: array items: oneOf: - $ref: '#/components/schemas/OnboardingValidationEnum' - $ref: '#/components/schemas/BlankEnum' ONBOARDING_VERIFICATION_EXPIRY_HOURS: type: integer ONBOARDING_ARIREGISTER_BASE_URL: type: string format: uri ONBOARDING_ARIREGISTER_USERNAME: type: string ONBOARDING_ARIREGISTER_PASSWORD: type: string ONBOARDING_ARIREGISTER_TIMEOUT: type: integer ONBOARDING_WICO_API_URL: type: string format: uri ONBOARDING_WICO_TOKEN: type: string ONBOARDING_BOLAGSVERKET_API_URL: type: string format: uri ONBOARDING_BOLAGSVERKET_TOKEN_API_URL: type: string format: uri ONBOARDING_BOLAGSVERKET_CLIENT_ID: type: string ONBOARDING_BOLAGSVERKET_CLIENT_SECRET: type: string ONBOARDING_BREG_API_URL: type: string format: uri LLM_CHAT_ENABLED: type: boolean LLM_INFERENCES_BACKEND_TYPE: type: string LLM_INFERENCES_API_URL: type: string format: uri LLM_INFERENCES_API_TOKEN: type: string LLM_INFERENCES_MODEL: type: string LLM_TOKEN_LIMIT_DAILY: type: integer LLM_TOKEN_LIMIT_WEEKLY: type: integer LLM_TOKEN_LIMIT_MONTHLY: type: integer LLM_CHAT_SESSION_RETENTION_DAYS: type: integer LLM_CHAT_HISTORY_LIMIT: type: integer LLM_INJECTION_ALLOWLIST: type: string SOFTWARE_CATALOG_EESSI_UPDATE_ENABLED: type: boolean SOFTWARE_CATALOG_EESSI_VERSION: type: string SOFTWARE_CATALOG_EESSI_API_URL: type: string SOFTWARE_CATALOG_EESSI_INCLUDE_EXTENSIONS: type: boolean SOFTWARE_CATALOG_SPACK_UPDATE_ENABLED: type: boolean SOFTWARE_CATALOG_SPACK_VERSION: type: string SOFTWARE_CATALOG_SPACK_DATA_URL: type: string SOFTWARE_CATALOG_UPDATE_EXISTING_PACKAGES: type: boolean SOFTWARE_CATALOG_CLEANUP_ENABLED: type: boolean SOFTWARE_CATALOG_RETENTION_DAYS: type: integer SYSTEM_LOG_ENABLED: type: boolean SYSTEM_LOG_MAX_ROWS_PER_SOURCE: type: integer TABLE_GROWTH_MONITORING_ENABLED: type: boolean TABLE_GROWTH_WEEKLY_THRESHOLD_PERCENT: type: integer TABLE_GROWTH_MONTHLY_THRESHOLD_PERCENT: type: integer TABLE_GROWTH_RETENTION_DAYS: type: integer TABLE_GROWTH_MIN_SIZE_BYTES: type: integer USER_ACTIONS_ENABLED: type: boolean USER_ACTIONS_PENDING_ORDER_HOURS: type: integer USER_ACTIONS_HIGH_URGENCY_NOTIFICATION: type: boolean USER_ACTIONS_NOTIFICATION_THRESHOLD: type: integer USER_ACTIONS_EXECUTION_RETENTION_DAYS: type: integer USER_ACTIONS_DEFAULT_EXPIRATION_REMINDERS: type: array items: type: string minLength: 1 USER_DATA_ACCESS_LOGGING_ENABLED: type: boolean USER_DATA_ACCESS_LOG_RETENTION_DAYS: type: integer USER_DATA_ACCESS_LOG_SELF_ACCESS: type: boolean ARROW_AUTO_RECONCILIATION: type: boolean ARROW_SYNC_INTERVAL_HOURS: type: integer ARROW_CONSUMPTION_SYNC_ENABLED: type: boolean ARROW_CONSUMPTION_SYNC_INTERVAL_HOURS: type: integer ARROW_BILLING_CHECK_INTERVAL_HOURS: type: integer SLURM_POLICY_EVALUATION_LOG_RETENTION_DAYS: type: integer FEDERATED_IDENTITY_SYNC_ENABLED: type: boolean FEDERATED_IDENTITY_SYNC_ALLOWED_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' FEDERATED_IDENTITY_DEACTIVATION_POLICY: $ref: '#/components/schemas/FEDERATEDIDENTITYDEACTIVATIONPOLICYEnum' ENABLE_PROJECT_DIGEST: type: boolean description: '' ConstanceSettingsRequestMultipart: type: object properties: SITE_NAME: type: string SITE_DESCRIPTION: type: string HOMEPORT_URL: type: string RANCHER_USERNAME_INPUT_LABEL: type: string DISCLAIMER_AREA_TEXT: type: string minLength: 1 SITE_ADDRESS: type: string SITE_EMAIL: type: string SITE_PHONE: type: string CURRENCY_NAME: type: string THUMBNAIL_SIZE: type: string ANONYMOUS_USER_CAN_VIEW_OFFERINGS: type: boolean ANONYMOUS_USER_CAN_VIEW_PLANS: type: boolean RESTRICTED_OFFERING_VISIBILITY_MODE: $ref: '#/components/schemas/RESTRICTEDOFFERINGVISIBILITYMODEEnum' ALLOW_SERVICE_PROVIDER_OFFERING_MANAGEMENT: type: boolean NOTIFY_STAFF_ABOUT_APPROVALS: type: boolean NOTIFY_ABOUT_RESOURCE_CHANGE: type: boolean DISABLE_SENDING_NOTIFICATIONS_ABOUT_RESOURCE_UPDATE: type: boolean MARKETPLACE_LANDING_PAGE: type: string ENABLE_STALE_RESOURCE_NOTIFICATIONS: type: boolean TELEMETRY_URL: type: string TELEMETRY_VERSION: type: integer SCRIPT_RUN_MODE: $ref: '#/components/schemas/SCRIPTRUNMODEEnum' DOCKER_CLIENT: type: string minLength: 1 DOCKER_RUN_OPTIONS: type: string minLength: 1 DOCKER_SCRIPT_DIR: type: string DOCKER_REMOVE_CONTAINER: type: boolean DOCKER_IMAGES: type: string minLength: 1 DOCKER_VOLUME_NAME: type: string K8S_NAMESPACE: type: string K8S_CONFIG_PATH: type: string K8S_JOB_TIMEOUT: type: integer ENABLE_STRICT_CHECK_ACCEPTING_INVITATION: type: boolean INVITATION_DISABLE_MULTIPLE_ROLES: type: boolean DEFAULT_IDP: oneOf: - $ref: '#/components/schemas/DEFAULTIDPEnum' - $ref: '#/components/schemas/BlankEnum' DOCS_URL: type: string format: uri SHORT_PAGE_TITLE: type: string FULL_PAGE_TITLE: type: string PROJECT_END_DATE_MANDATORY: type: boolean ENABLE_ORDER_START_DATE: type: boolean BRAND_COLOR: type: string pattern: ^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$ HERO_LINK_LABEL: type: string HERO_LINK_URL: type: string format: uri SUPPORT_PORTAL_URL: type: string format: uri COMMON_FOOTER_TEXT: type: string minLength: 1 COMMON_FOOTER_HTML: type: string minLength: 1 LANGUAGE_CHOICES: type: string DISABLE_DARK_THEME: type: boolean POWERED_BY_LOGO: type: string format: binary nullable: true HERO_IMAGE: type: string format: binary nullable: true MARKETPLACE_HERO_IMAGE: type: string format: binary nullable: true CALL_MANAGEMENT_HERO_IMAGE: type: string format: binary nullable: true SIDEBAR_LOGO: type: string format: binary nullable: true SIDEBAR_LOGO_DARK: type: string format: binary nullable: true SIDEBAR_LOGO_MOBILE: type: string format: binary nullable: true SIDEBAR_STYLE: $ref: '#/components/schemas/SIDEBARSTYLEEnum' FONT_FAMILY: $ref: '#/components/schemas/FONTFAMILYEnum' LOGIN_LOGO: type: string format: binary nullable: true LOGIN_LOGO_MULTILINGUAL: type: object additionalProperties: type: string format: binary nullable: true LOGIN_PAGE_LAYOUT: $ref: '#/components/schemas/LOGINPAGELAYOUTEnum' LOGIN_PAGE_VIDEO_URL: type: string format: uri LOGIN_PAGE_STATS: type: array items: {} LOGIN_PAGE_CAROUSEL_SLIDES: type: array items: {} LOGIN_PAGE_NEWS: type: array items: {} FAVICON: type: string format: binary nullable: true OFFERING_LOGO_PLACEHOLDER: type: string format: binary nullable: true DISCLAIMER_AREA_LOGO: type: string format: binary nullable: true WALDUR_SUPPORT_ENABLED: type: boolean WALDUR_SUPPORT_ACTIVE_BACKEND_TYPE: $ref: '#/components/schemas/WALDURSUPPORTACTIVEBACKENDTYPEEnum' WALDUR_SUPPORT_DISPLAY_REQUEST_TYPE: type: boolean ATLASSIAN_MAP_WALDUR_USERS_TO_SERVICEDESK_AGENTS: type: boolean ATLASSIAN_API_URL: type: string format: uri ATLASSIAN_USERNAME: type: string ATLASSIAN_PASSWORD: type: string ATLASSIAN_EMAIL: type: string format: email minLength: 1 ATLASSIAN_USE_OLD_API: type: boolean ATLASSIAN_TOKEN: type: string ATLASSIAN_PERSONAL_ACCESS_TOKEN: type: string ATLASSIAN_OAUTH2_CLIENT_ID: type: string ATLASSIAN_OAUTH2_ACCESS_TOKEN: type: string ATLASSIAN_OAUTH2_TOKEN_TYPE: type: string ATLASSIAN_VERIFY_SSL: type: boolean ATLASSIAN_PROJECT_ID: type: string ATLASSIAN_SHARED_USERNAME: type: boolean ATLASSIAN_CUSTOM_ISSUE_FIELD_MAPPING_ENABLED: type: boolean ATLASSIAN_DEFAULT_OFFERING_ISSUE_TYPE: type: string ATLASSIAN_EXCLUDED_ATTACHMENT_TYPES: type: string ATLASSIAN_DESCRIPTION_TEMPLATE: type: string ATLASSIAN_SUMMARY_TEMPLATE: type: string ATLASSIAN_AFFECTED_RESOURCE_FIELD: type: string ATLASSIAN_IMPACT_FIELD: type: string ATLASSIAN_ORGANISATION_FIELD: type: string ATLASSIAN_RESOLUTION_SLA_FIELD: type: string ATLASSIAN_PROJECT_FIELD: type: string ATLASSIAN_REPORTER_FIELD: type: string ATLASSIAN_CALLER_FIELD: type: string ATLASSIAN_SLA_FIELD: type: string ATLASSIAN_LINKED_ISSUE_TYPE: type: string ATLASSIAN_SATISFACTION_FIELD: type: string ATLASSIAN_REQUEST_FEEDBACK_FIELD: type: string ATLASSIAN_TEMPLATE_FIELD: type: string ATLASSIAN_WALDUR_BACKEND_ID_FIELD: type: string ZAMMAD_API_URL: type: string format: uri ZAMMAD_TOKEN: type: string ZAMMAD_GROUP: type: string ZAMMAD_ARTICLE_TYPE: $ref: '#/components/schemas/ZAMMADARTICLETYPEEnum' ZAMMAD_COMMENT_MARKER: type: string ZAMMAD_COMMENT_PREFIX: type: string ZAMMAD_COMMENT_COOLDOWN_DURATION: type: integer SMAX_API_URL: type: string format: uri SMAX_TENANT_ID: type: string SMAX_LOGIN: type: string SMAX_PASSWORD: type: string SMAX_ORGANISATION_FIELD: type: string SMAX_PROJECT_FIELD: type: string SMAX_AFFECTED_RESOURCE_FIELD: type: string SMAX_TIMES_TO_PULL: type: integer SMAX_SECONDS_TO_WAIT: type: integer SMAX_CREATION_SOURCE_NAME: type: string SMAX_REQUESTS_OFFERING: type: string SMAX_VERIFY_SSL: type: boolean ENABLE_MOCK_SERVICE_ACCOUNT_BACKEND: type: boolean ENABLE_MOCK_COURSE_ACCOUNT_BACKEND: type: boolean PROPOSAL_REVIEW_DURATION: type: integer ORCID_CLIENT_ID: type: string ORCID_CLIENT_SECRET: type: string ORCID_REDIRECT_URI: type: string format: uri ORCID_API_URL: type: string format: uri ORCID_AUTH_URL: type: string format: uri ORCID_SANDBOX_MODE: type: boolean SEMANTIC_SCHOLAR_API_KEY: type: string CROSSREF_MAILTO: type: string format: email minLength: 1 REVIEWER_PROFILES_ENABLED: type: boolean COI_DETECTION_ENABLED: type: boolean COI_DISCLOSURE_REQUIRED: type: boolean AUTOMATED_MATCHING_ENABLED: type: boolean COI_COAUTHORSHIP_LOOKBACK_YEARS: type: integer COI_COAUTHORSHIP_THRESHOLD_PAPERS: type: integer COI_INSTITUTIONAL_LOOKBACK_YEARS: type: integer USER_TABLE_COLUMNS: type: string AUTO_APPROVE_USER_TOS: type: boolean FREEIPA_ENABLED: type: boolean FREEIPA_HOSTNAME: type: string FREEIPA_USERNAME: type: string FREEIPA_PASSWORD: type: string FREEIPA_VERIFY_SSL: type: boolean FREEIPA_USERNAME_PREFIX: type: string FREEIPA_GROUPNAME_PREFIX: type: string FREEIPA_BLACKLISTED_USERNAMES: type: array items: type: string minLength: 1 FREEIPA_GROUP_SYNCHRONIZATION_ENABLED: type: boolean SCIM_MEMBERSHIP_SYNC_ENABLED: type: boolean SCIM_API_URL: type: string SCIM_API_KEY: type: string SCIM_URN_NAMESPACE: type: string KEYCLOAK_ICON: type: string format: binary nullable: true COUNTRIES: type: array items: type: string minLength: 1 OIDC_AUTH_URL: type: string OIDC_INTROSPECTION_URL: type: string OIDC_CLIENT_ID: type: string OIDC_CLIENT_SECRET: type: string OIDC_USER_FIELD: type: string OIDC_CACHE_TIMEOUT: type: integer OIDC_ACCESS_TOKEN_ENABLED: type: boolean OIDC_BLOCK_CREATION_OF_UNINVITED_USERS: type: boolean OIDC_MATCHMAKING_BY_EMAIL: type: boolean DEACTIVATE_USER_IF_NO_ROLES: type: boolean WALDUR_AUTH_SOCIAL_ROLE_CLAIM: type: string REMOTE_EDUTEAMS_REFRESH_TOKEN: type: string DEFAULT_OFFERING_USER_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' INVITATION_ALLOWED_FIELDS: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' ENABLED_USER_PROFILE_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' MANDATORY_USER_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' ENFORCE_MANDATORY_USER_ATTRIBUTES: type: boolean MAINTENANCE_ANNOUNCEMENT_NOTIFY_BEFORE_MINUTES: type: integer MAINTENANCE_ANNOUNCEMENT_NOTIFY_SYSTEM: type: array items: oneOf: - $ref: '#/components/schemas/NotifySystemEnum' - $ref: '#/components/schemas/BlankEnum' ENFORCE_USER_CONSENT_FOR_OFFERINGS: type: boolean ENFORCE_OFFERING_USER_PROFILE_COMPLETENESS: type: boolean DISABLED_OFFERING_TYPES: type: array items: oneOf: - $ref: '#/components/schemas/OfferingTypeEnum' - $ref: '#/components/schemas/BlankEnum' ONBOARDING_VALIDATION_METHODS: type: array items: oneOf: - $ref: '#/components/schemas/OnboardingValidationEnum' - $ref: '#/components/schemas/BlankEnum' ONBOARDING_VERIFICATION_EXPIRY_HOURS: type: integer ONBOARDING_ARIREGISTER_BASE_URL: type: string format: uri ONBOARDING_ARIREGISTER_USERNAME: type: string ONBOARDING_ARIREGISTER_PASSWORD: type: string ONBOARDING_ARIREGISTER_TIMEOUT: type: integer ONBOARDING_WICO_API_URL: type: string format: uri ONBOARDING_WICO_TOKEN: type: string ONBOARDING_BOLAGSVERKET_API_URL: type: string format: uri ONBOARDING_BOLAGSVERKET_TOKEN_API_URL: type: string format: uri ONBOARDING_BOLAGSVERKET_CLIENT_ID: type: string ONBOARDING_BOLAGSVERKET_CLIENT_SECRET: type: string ONBOARDING_BREG_API_URL: type: string format: uri LLM_CHAT_ENABLED: type: boolean LLM_INFERENCES_BACKEND_TYPE: type: string LLM_INFERENCES_API_URL: type: string format: uri LLM_INFERENCES_API_TOKEN: type: string LLM_INFERENCES_MODEL: type: string LLM_TOKEN_LIMIT_DAILY: type: integer LLM_TOKEN_LIMIT_WEEKLY: type: integer LLM_TOKEN_LIMIT_MONTHLY: type: integer LLM_CHAT_SESSION_RETENTION_DAYS: type: integer LLM_CHAT_HISTORY_LIMIT: type: integer LLM_INJECTION_ALLOWLIST: type: string SOFTWARE_CATALOG_EESSI_UPDATE_ENABLED: type: boolean SOFTWARE_CATALOG_EESSI_VERSION: type: string SOFTWARE_CATALOG_EESSI_API_URL: type: string SOFTWARE_CATALOG_EESSI_INCLUDE_EXTENSIONS: type: boolean SOFTWARE_CATALOG_SPACK_UPDATE_ENABLED: type: boolean SOFTWARE_CATALOG_SPACK_VERSION: type: string SOFTWARE_CATALOG_SPACK_DATA_URL: type: string SOFTWARE_CATALOG_UPDATE_EXISTING_PACKAGES: type: boolean SOFTWARE_CATALOG_CLEANUP_ENABLED: type: boolean SOFTWARE_CATALOG_RETENTION_DAYS: type: integer SYSTEM_LOG_ENABLED: type: boolean SYSTEM_LOG_MAX_ROWS_PER_SOURCE: type: integer TABLE_GROWTH_MONITORING_ENABLED: type: boolean TABLE_GROWTH_WEEKLY_THRESHOLD_PERCENT: type: integer TABLE_GROWTH_MONTHLY_THRESHOLD_PERCENT: type: integer TABLE_GROWTH_RETENTION_DAYS: type: integer TABLE_GROWTH_MIN_SIZE_BYTES: type: integer USER_ACTIONS_ENABLED: type: boolean USER_ACTIONS_PENDING_ORDER_HOURS: type: integer USER_ACTIONS_HIGH_URGENCY_NOTIFICATION: type: boolean USER_ACTIONS_NOTIFICATION_THRESHOLD: type: integer USER_ACTIONS_EXECUTION_RETENTION_DAYS: type: integer USER_ACTIONS_DEFAULT_EXPIRATION_REMINDERS: type: array items: type: string minLength: 1 USER_DATA_ACCESS_LOGGING_ENABLED: type: boolean USER_DATA_ACCESS_LOG_RETENTION_DAYS: type: integer USER_DATA_ACCESS_LOG_SELF_ACCESS: type: boolean ARROW_AUTO_RECONCILIATION: type: boolean ARROW_SYNC_INTERVAL_HOURS: type: integer ARROW_CONSUMPTION_SYNC_ENABLED: type: boolean ARROW_CONSUMPTION_SYNC_INTERVAL_HOURS: type: integer ARROW_BILLING_CHECK_INTERVAL_HOURS: type: integer SLURM_POLICY_EVALUATION_LOG_RETENTION_DAYS: type: integer FEDERATED_IDENTITY_SYNC_ENABLED: type: boolean FEDERATED_IDENTITY_SYNC_ALLOWED_ATTRIBUTES: type: array items: oneOf: - $ref: '#/components/schemas/UserAttributeEnum' - $ref: '#/components/schemas/BlankEnum' FEDERATED_IDENTITY_DEACTIVATION_POLICY: $ref: '#/components/schemas/FEDERATEDIDENTITYDEACTIVATIONPOLICYEnum' ENABLE_PROJECT_DIGEST: type: boolean description: '' PaymentRequestForm: type: object properties: profile: type: string format: uri date_of_payment: type: string format: date sum: type: string format: decimal pattern: ^-?\d{0,8}(?:\.\d{0,2})?$ proof: type: string format: binary nullable: true required: - date_of_payment - profile description: '' PaymentRequestMultipart: type: object properties: profile: type: string format: uri date_of_payment: type: string format: date sum: type: string format: decimal pattern: ^-?\d{0,8}(?:\.\d{0,2})?$ proof: type: string format: binary nullable: true required: - date_of_payment - profile description: '' PatchedPaymentRequestForm: type: object properties: profile: type: string format: uri date_of_payment: type: string format: date sum: type: string format: decimal pattern: ^-?\d{0,8}(?:\.\d{0,2})?$ proof: type: string format: binary nullable: true description: '' PatchedPaymentRequestMultipart: type: object properties: profile: type: string format: uri date_of_payment: type: string format: date sum: type: string format: decimal pattern: ^-?\d{0,8}(?:\.\d{0,2})?$ proof: type: string format: binary nullable: true description: '' ProposalDocumentationRequestForm: type: object properties: file: type: string format: binary nullable: true description: Upload supporting documentation in PDF format. description: '' ProposalDocumentationRequestMultipart: type: object properties: file: type: string format: binary nullable: true description: Upload supporting documentation in PDF format. description: '' FirecrestJobRequestForm: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri runtime_state: type: string maxLength: 100 file: type: string format: binary title: Batch script file required: - file - name - project - service_settings FirecrestJobRequestMultipart: type: object description: '' properties: name: type: string minLength: 1 maxLength: 150 description: type: string maxLength: 4096 service_settings: type: string format: uri project: type: string format: uri runtime_state: type: string maxLength: 100 file: type: string format: binary title: Batch script file required: - file - name - project - service_settings AttachmentRequestForm: type: object description: '' properties: issue: type: string format: uri file: type: string format: binary required: - file - issue AttachmentRequestMultipart: type: object description: '' properties: issue: type: string format: uri file: type: string format: binary required: - file - issue UserRequestForm: type: object description: '' properties: username: type: string minLength: 1 description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 100 job_title: type: string maxLength: 120 email: type: string format: email minLength: 1 phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 description: type: string maxLength: 4096 is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_support: type: boolean title: Support status description: Designates whether the user is a global support user. token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. agree_with_policy: type: boolean writeOnly: true description: User must agree with the policy to register. notifications_enabled: type: boolean description: Designates whether the user is allowed to receive email notifications. preferred_language: type: string maxLength: 10 first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 birth_date: type: string format: date nullable: true image: type: string format: binary nullable: true gender: nullable: true description: ISO 5218 gender code minimum: 0 maximum: 32767 oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) maxLength: 50 place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) maxLength: 2 nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) organization_country: type: string maxLength: 2 organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) maxLength: 255 organization_registry_code: type: string description: Company registration code of the user's organization, if known maxLength: 255 eduperson_assurance: description: REFEDS assurance profile URIs from identity provider is_identity_manager: type: boolean description: Designates whether the user is allowed to manage remote user identities. managed_isds: description: 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. required: - email - username UserRequestMultipart: type: object description: '' properties: username: type: string minLength: 1 description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 100 job_title: type: string maxLength: 120 email: type: string format: email minLength: 1 phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 description: type: string maxLength: 4096 is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_support: type: boolean title: Support status description: Designates whether the user is a global support user. token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. agree_with_policy: type: boolean writeOnly: true description: User must agree with the policy to register. notifications_enabled: type: boolean description: Designates whether the user is allowed to receive email notifications. preferred_language: type: string maxLength: 10 first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 birth_date: type: string format: date nullable: true image: type: string format: binary nullable: true gender: nullable: true description: ISO 5218 gender code minimum: 0 maximum: 32767 oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) maxLength: 50 place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) maxLength: 2 nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) organization_country: type: string maxLength: 2 organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) maxLength: 255 organization_registry_code: type: string description: Company registration code of the user's organization, if known maxLength: 255 eduperson_assurance: description: REFEDS assurance profile URIs from identity provider is_identity_manager: type: boolean description: Designates whether the user is allowed to manage remote user identities. managed_isds: description: 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. required: - email - username PatchedUserRequestForm: type: object description: '' properties: username: type: string minLength: 1 description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 100 job_title: type: string maxLength: 120 phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 description: type: string maxLength: 4096 is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_support: type: boolean title: Support status description: Designates whether the user is a global support user. token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. agree_with_policy: type: boolean writeOnly: true description: User must agree with the policy to register. notifications_enabled: type: boolean description: Designates whether the user is allowed to receive email notifications. preferred_language: type: string maxLength: 10 first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 birth_date: type: string format: date nullable: true image: type: string format: binary nullable: true gender: nullable: true description: ISO 5218 gender code minimum: 0 maximum: 32767 oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) maxLength: 50 place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) maxLength: 2 nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) organization_country: type: string maxLength: 2 organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) maxLength: 255 organization_registry_code: type: string description: Company registration code of the user's organization, if known maxLength: 255 eduperson_assurance: description: REFEDS assurance profile URIs from identity provider is_identity_manager: type: boolean description: Designates whether the user is allowed to manage remote user identities. managed_isds: description: 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. PatchedUserRequestMultipart: type: object description: '' properties: username: type: string minLength: 1 description: Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters pattern: ^[0-9a-z_.@+-]+$ maxLength: 128 slug: type: string description: URL-friendly identifier. Only editable by staff users. maxLength: 50 pattern: ^[-a-zA-Z0-9_]+$ native_name: type: string maxLength: 100 job_title: type: string maxLength: 120 phone_number: type: string maxLength: 255 organization: type: string maxLength: 255 description: type: string maxLength: 4096 is_staff: type: boolean title: Staff status description: Designates whether the user can log into this admin site. is_active: type: boolean title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. is_support: type: boolean title: Support status description: Designates whether the user is a global support user. token_lifetime: type: integer maximum: 2147483647 minimum: 60 nullable: true description: Token lifetime in seconds. agree_with_policy: type: boolean writeOnly: true description: User must agree with the policy to register. notifications_enabled: type: boolean description: Designates whether the user is allowed to receive email notifications. preferred_language: type: string maxLength: 10 first_name: type: string maxLength: 100 last_name: type: string maxLength: 100 birth_date: type: string format: date nullable: true image: type: string format: binary nullable: true gender: nullable: true description: ISO 5218 gender code minimum: 0 maximum: 32767 oneOf: - $ref: '#/components/schemas/GenderEnum' - $ref: '#/components/schemas/NullEnum' personal_title: type: string description: Honorific title (Mr, Ms, Dr, Prof, etc.) maxLength: 50 place_of_birth: type: string maxLength: 255 country_of_residence: type: string maxLength: 2 nationality: type: string description: Primary citizenship (ISO 3166-1 alpha-2 code) maxLength: 2 nationalities: description: List of all citizenships (ISO 3166-1 alpha-2 codes) organization_country: type: string maxLength: 2 organization_type: type: string description: SCHAC URN (e.g., urn:schac:homeOrganizationType:int:university) maxLength: 255 organization_registry_code: type: string description: Company registration code of the user's organization, if known maxLength: 255 eduperson_assurance: description: REFEDS assurance profile URIs from identity provider is_identity_manager: type: boolean description: Designates whether the user is allowed to manage remote user identities. managed_isds: description: 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. AdminAnnouncementFieldEnum: type: string enum: - active_from - active_to - created - description - is_active - maintenance_affected_offerings - maintenance_external_reference_url - maintenance_name - maintenance_scheduled_end - maintenance_scheduled_start - maintenance_service_provider - maintenance_state - maintenance_type - maintenance_uuid - type - uuid description: '' AdminAnnouncementOEnum: type: string enum: - -active_from - -active_to - -created - -name - -type - active_from - active_to - created - name - type description: '' AssignmentBatchListOEnum: type: string enum: - -created - -expires_at - -sent_at - -status - created - expires_at - sent_at - status description: '' AssignmentItemOEnum: type: string enum: - -affinity_score - -created - -responded_at - -status - affinity_score - created - responded_at - status description: '' AwsInstanceFieldEnum: type: string enum: - access_url - backend_id - cores - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - disk - error_message - error_traceback - external_ips - image - image_name - internal_ips - is_limit_based - is_usage_based - key_fingerprint - key_name - latitude - longitude - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - min_disk - min_ram - modified - name - project - project_name - project_uuid - ram - region - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - size - ssh_public_key - start_time - state - url - user_data - uuid description: '' AwsVolumeFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - device - error_message - error_traceback - instance - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - project - project_name - project_uuid - region - resource_type - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - size - state - url - uuid - volume_type description: '' AzurePublicIPFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - location - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - project - project_name - project_uuid - resource_group - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - uuid description: '' AzureResourceGroupFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - location - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - project - project_name - project_uuid - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - uuid description: '' AzureSqlDatabaseFieldEnum: type: string enum: - access_url - backend_id - charset - collation - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - location_name - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - project - project_name - project_uuid - resource_group_name - resource_type - server - server_marketplace_uuid - server_name - server_uuid - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - uuid description: '' AzureSqlServerFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - fqdn - is_limit_based - is_usage_based - location - location_name - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - password - project - project_name - project_uuid - resource_group - resource_group_name - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - storage_mb - url - username - uuid description: '' AzureVirtualMachineFieldEnum: type: string enum: - access_url - backend_id - cores - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - disk - error_message - error_traceback - external_ips - image - image_name - internal_ips - is_limit_based - is_usage_based - key_fingerprint - key_name - latitude - location - location_name - longitude - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - min_disk - min_ram - modified - name - password - project - project_name - project_uuid - ram - resource_group - resource_group_name - resource_type - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - size - size_name - ssh_public_key - start_time - state - url - user_data - username - uuid description: '' BackendResourceReqOEnum: type: string enum: - -created - created description: '' OfferingFieldEnum: type: string enum: - access_url - attributes - backend_id - backend_metadata - billable - billing_type_classification - category - category_title - category_uuid - citation_count - compliance_checklist - components - country - created - customer - customer_name - customer_uuid - datacite_doi - description - endpoints - files - full_description - getting_started - googlecalendar - has_compliance_requirements - image - integration_guide - is_accessible - latitude - longitude - name - options - order_count - organization_groups - parent_description - parent_name - parent_uuid - partitions - paused_reason - plans - plugin_options - privacy_policy_link - project - project_name - project_uuid - quotas - resource_options - roles - scope - scope_error_message - scope_name - scope_state - scope_uuid - screenshots - secret_options - service_attributes - shared - slug - software_catalogs - state - tags - thumbnail - total_cost - total_cost_estimated - total_customers - type - url - user_has_consent - uuid - vendor_details description: '' BookingResourceFieldEnum: type: string enum: - attributes - available_actions - backend_id - backend_metadata - can_terminate - category_icon - category_title - category_uuid - consumer_reviewed_by - consumer_reviewed_by_full_name - consumer_reviewed_by_username - created - created_by - created_by_full_name - created_by_username - creation_order - current_usages - customer_name - customer_slug - customer_uuid - description - downscaled - effective_id - end_date - end_date_requested_by - endpoints - error_message - error_traceback - is_limit_based - is_usage_based - last_sync - limit_usage - limits - modified - name - offering - offering_backend_id - offering_billable - offering_components - offering_description - offering_image - offering_name - offering_plugin_options - offering_shared - offering_slug - offering_state - offering_thumbnail - offering_type - offering_uuid - options - order_in_progress - parent_name - parent_offering_name - parent_offering_slug - parent_offering_uuid - parent_uuid - paused - plan - plan_description - plan_name - plan_unit - plan_uuid - project - project_description - project_end_date - project_end_date_requested_by - project_name - project_slug - project_uuid - provider_name - provider_slug - provider_uuid - renewal_date - report - resource_type - resource_uuid - restrict_member_access - scope - service_settings_uuid - slots - slug - state - url - user_requires_reconsent - username - uuid description: '' BookingResourceOEnum: type: string enum: - -created - -name - -schedules - -type - created - name - schedules - type description: '' BroadcastMessageFieldEnum: type: string enum: - author_full_name - body - created - emails - query - send_at - state - subject - uuid description: '' BroadcastMessageOEnum: type: string enum: - -author_full_name - -created - -subject - author_full_name - created - subject description: '' CallManagingOrganisationOEnum: type: string enum: - -customer_name - customer_name description: '' UserRoleDetailsFieldEnum: type: string enum: - created - created_by_full_name - created_by_uuid - expiration_time - role_name - role_uuid - user_email - user_full_name - user_image - user_username - user_uuid - uuid description: '' UserRoleDetailsOEnum: type: string enum: - created - email - expiration_time - full_name - native_name - role - username description: '' CallReviewerPoolOEnum: type: string enum: - -created - -current_assignments - -expertise_match_score - -invited_at - created - current_assignments - expertise_match_score - invited_at description: '' ChatSessionFieldEnum: type: string enum: - created - modified - user - user_full_name - user_username - uuid description: '' ThreadSessionFieldEnum: type: string enum: - chat_session - created - flags - is_archived - is_flagged - max_severity - message_count - modified - name - user_full_name - user_username - uuid description: '' ThreadSessionOEnum: type: string enum: - -created - -modified - created - modified description: '' COIDetectionJobOEnum: type: string enum: - -completed_at - -created - -started_at - -state - completed_at - created - started_at - state description: '' COIDisclosureFormOEnum: type: string enum: - -certification_date - -created - -valid_until - certification_date - created - valid_until description: '' ConflictOfInterestOEnum: type: string enum: - -created - -detected_at - -severity - -status - created - detected_at - severity - status description: '' CustomerCreditOEnum: type: string enum: - -customer_name - -end_date - -expected_consumption - -value - customer_name - end_date - expected_consumption - value description: '' CustomerPermissionReviewOEnum: type: string enum: - -closed - -created - closed - created description: '' CustomerFieldEnum: type: string enum: - abbreviation - access_subnets - accounting_start_date - address - agreement_number - archived - backend_id - bank_account - bank_name - billing_price_estimate - blocked - call_managing_organization_uuid - contact_details - country - country_name - created - customer_credit - customer_unallocated_credit - default_tax_percent - description - display_billing_info_in_projects - display_name - domain - email - grace_period_days - homepage - image - is_service_provider - latitude - longitude - max_service_accounts - name - native_name - notification_emails - organization_groups - payment_profiles - phone_number - postal - project_metadata_checklist - projects_count - registration_code - service_provider - service_provider_uuid - slug - sponsor_number - url - user_affiliations - user_email_patterns - user_identity_sources - users_count - uuid - vat_code description: '' CustomerUserFieldEnum: type: string enum: - email - expiration_time - full_name - image - projects - role_name - url - username - uuid description: '' CustomerUserOEnum: type: string enum: - concatenated_name - -concatenated_name description: '' GlobalUserDataAccessLogOEnum: type: string enum: - -accessor_type - -accessor_username - -timestamp - -user_username - accessor_type - accessor_username - timestamp - user_username description: '' DigitalOceanDropletFieldEnum: type: string enum: - access_url - backend_id - cores - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - disk - error_message - error_traceback - external_ips - image - image_name - internal_ips - is_limit_based - is_usage_based - key_fingerprint - key_name - latitude - longitude - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - min_disk - min_ram - modified - name - project - project_name - project_uuid - ram - region - region_name - resource_type - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - size - ssh_public_key - start_time - state - url - user_data - uuid description: '' DigitalOceanImageOEnum: type: string enum: - -distribution - -type - distribution - type description: '' EmailLogOEnum: type: string enum: - -sent_at - -subject - sent_at - subject description: '' EventFieldEnum: type: string enum: - context - created - event_type - message - uuid description: '' ExpertiseCategoryOEnum: type: string enum: - -code - -level - -name - code - level - name description: '' GoogleCredentialsFieldEnum: type: string enum: - calendar_refresh_token - calendar_token - created - customer - customer_abbreviation - customer_country - customer_image - customer_name - customer_native_name - customer_slug - customer_uuid - description - enable_notifications - google_auth_url - image - offering_count - organization_groups - url - uuid description: '' WebHookContentTypeEnum1: type: string enum: - 1 - 2 description: '' InvoiceFieldEnum: type: string enum: - backend_id - compensations - customer - customer_details - due_date - incurred_costs - invoice_date - issuer_details - items - month - number - payment_url - price - reference_number - state - tax - total - url - uuid - year description: '' InvoiceOEnum: type: string enum: - -created - -month - -year - created - month - year description: '' InvoiceItemOEnum: type: string enum: - project_name - -project_name - resource_name - -resource_name - provider_name - -provider_name - name - -name description: '' SshKeyFieldEnum: type: string enum: - fingerprint_md5 - fingerprint_sha256 - fingerprint_sha512 - is_shared - name - public_key - type - url - user_uuid - uuid description: '' SshKeyOEnum: type: string enum: - -name - name description: '' MaintenanceAnnouncementOEnum: type: string enum: - -created - -name - -scheduled_end - -scheduled_start - created - name - scheduled_end - scheduled_start description: '' MaintenanceAnnouncementTemplateOEnum: type: string enum: - -created - -name - created - name description: '' ResourceFieldEnum: type: string enum: - attributes - available_actions - backend_id - backend_metadata - can_terminate - category_icon - category_title - category_uuid - created - creation_order - current_usages - customer_name - customer_slug - customer_uuid - description - downscaled - effective_id - end_date - end_date_requested_by - endpoints - error_message - error_traceback - is_limit_based - is_usage_based - last_sync - limit_usage - limits - modified - name - offering - offering_backend_id - offering_billable - offering_components - offering_description - offering_image - offering_name - offering_plugin_options - offering_shared - offering_slug - offering_state - offering_thumbnail - offering_type - offering_uuid - options - order_in_progress - parent_name - parent_offering_name - parent_offering_slug - parent_offering_uuid - parent_uuid - paused - plan - plan_description - plan_name - plan_unit - plan_uuid - project - project_description - project_end_date - project_end_date_requested_by - project_name - project_slug - project_uuid - provider_name - provider_slug - provider_uuid - renewal_date - report - resource_type - resource_uuid - restrict_member_access - scope - service_settings_uuid - slug - state - url - user_requires_reconsent - username - uuid description: '' MarketplaceCategoryFieldEnum: type: string enum: - articles - available_offerings_count - columns - components - default_tenant_category - default_vm_category - default_volume_category - description - group - icon - offering_count - sections - title - url - uuid description: '' CategoryComponentUsageFieldEnum: type: string enum: - category_title - category_uuid - date - fixed_usage - measured_unit - name - reported_usage - scope - type description: '' CategoryGroupFieldEnum: type: string enum: - description - icon - title - url - uuid description: '' ComponentUsageFieldEnum: type: string enum: - billing_period - created - customer_name - customer_uuid - date - description - measured_unit - modified_by - name - offering_name - offering_uuid - project_name - project_uuid - recurring - resource_name - resource_uuid - type - usage - uuid description: '' ComponentUsageOEnum: type: string enum: - -billing_period - -usage - billing_period - usage description: '' ComponentUserUsageFieldEnum: type: string enum: - backend_id - billing_period - component_type - component_usage - created - customer_name - customer_uuid - date - description - measured_unit - modified - offering_name - offering_uuid - project_name - project_uuid - resource_name - resource_uuid - usage - user - username - uuid description: '' ComponentUserUsageOEnum: type: string enum: - -component_usage__billing_period - -usage - -username - component_usage__billing_period - usage - username description: '' CourseAccountOEnum: type: string enum: - -created - -email - -modified - -project_end_date - -project_name - -project_start_date - -state - -username - created - email - modified - project_end_date - project_name - project_start_date - state - username description: '' IntegrationStatusDetailsOEnum: type: string enum: - -last_request_timestamp - last_request_timestamp description: '' IntegrationStatusDetailsStatusEnum: type: string enum: - Active - Disconnected - Unknown description: '' OfferingFileFieldEnum: type: string enum: - created - file - name - offering - url - uuid description: '' OfferingPermissionOEnum: type: string enum: - -created - -email - -expiration_time - -full_name - -native_name - -role - -username - created - email - expiration_time - full_name - native_name - role - username description: '' OfferingReferralOEnum: type: string enum: - -published - -relation_type - -resource_type - published - relation_type - resource_type description: '' OfferingTermsOfServiceOEnum: type: string enum: - -created - -modified - -version - created - modified - version description: '' UserChecklistCompletionOEnum: type: string enum: - -is_completed - -modified - is_completed - modified description: '' OfferingUserFieldEnum: type: string enum: - consent_data - created - customer_name - customer_uuid - has_compliance_checklist - has_consent - is_profile_complete - is_restricted - missing_profile_attributes - modified - offering - offering_name - offering_uuid - requires_reconsent - service_provider_comment - service_provider_comment_url - state - url - user - user_active_isds - user_affiliations - user_birth_date - user_civil_number - user_country_of_residence - user_eduperson_assurance - user_email - user_first_name - user_full_name - user_gender - user_identity_source - user_job_title - user_last_name - user_nationalities - user_nationality - user_organization - user_organization_country - user_organization_registry_code - user_organization_type - user_personal_title - user_phone_number - user_place_of_birth - user_username - user_uuid - username - uuid description: '' OfferingUserOEnum: type: string enum: - -created - -modified - -username - created - modified - username description: '' OrderDetailsFieldEnum: type: string enum: - accepting_terms_of_service - activation_price - attachment - attributes - backend_id - callback_url - can_terminate - category_icon - category_title - category_uuid - completed_at - consumer_message - consumer_message_attachment - consumer_rejection_comment - consumer_reviewed_at - consumer_reviewed_by - consumer_reviewed_by_full_name - consumer_reviewed_by_username - cost - created - created_by_civil_number - created_by_email - created_by_full_name - created_by_organization - created_by_organization_registry_code - created_by_username - customer_name - customer_slug - customer_uuid - error_message - error_traceback - fixed_price - issue - limits - marketplace_resource_uuid - modified - new_cost_estimate - new_plan_name - new_plan_uuid - offering - offering_billable - offering_description - offering_image - offering_name - offering_plugin_options - offering_shared - offering_thumbnail - offering_type - offering_uuid - old_cost_estimate - old_plan_name - old_plan_uuid - order_subtype - output - plan - plan_description - plan_name - plan_unit - plan_uuid - project_description - project_name - project_slug - project_uuid - provider_message - provider_message_attachment - provider_message_url - provider_name - provider_rejection_comment - provider_reviewed_at - provider_reviewed_by - provider_reviewed_by_full_name - provider_reviewed_by_username - provider_slug - provider_uuid - request_comment - resource_name - resource_type - resource_uuid - slug - start_date - state - termination_comment - type - url - uuid description: '' OrderDetailsOEnum: type: string enum: - -consumer_reviewed_at - -cost - -created - -state - consumer_reviewed_at - cost - created - state description: '' RemoteProjectUpdateRequestStateEnum: type: string enum: - approved - canceled - draft - pending - rejected description: '' ProviderOfferingDetailsFieldEnum: type: string enum: - access_url - attributes - backend_id - backend_id_rules - backend_metadata - billable - billing_type_classification - category - category_title - category_uuid - citation_count - compliance_checklist - components - country - created - customer - customer_name - customer_uuid - datacite_doi - description - endpoints - files - full_description - getting_started - google_calendar_is_public - google_calendar_link - has_compliance_requirements - image - integration_guide - integration_status - latitude - longitude - name - options - order_count - organization_groups - parent_description - parent_name - parent_uuid - partitions - paused_reason - plans - plugin_options - privacy_policy_link - project - project_name - project_uuid - quotas - resource_options - roles - scope - scope_error_message - scope_name - scope_state - scope_uuid - screenshots - secret_options - service_attributes - shared - slug - software_catalogs - state - tags - thumbnail - total_cost - total_cost_estimated - total_customers - type - url - uuid - vendor_details description: '' ProviderOfferingDetailsOEnum: type: string enum: - -created - -name - -state - -total_cost - -total_cost_estimated - -total_customers - -type - created - name - state - total_cost - total_cost_estimated - total_customers - type description: '' ProviderOfferingCustomerFieldEnum: type: string enum: - abbreviation - email - name - phone_number - slug - uuid description: '' ProjectFieldEnum: type: string enum: - backend_id - billing_price_estimate - created - customer - customer_abbreviation - customer_display_billing_info_in_projects - customer_name - customer_native_name - customer_slug - customer_uuid - description - end_date - end_date_requested_by - grace_period_days - image - is_industry - is_removed - kind - marketplace_resource_count - max_service_accounts - name - oecd_fos_2007_code - oecd_fos_2007_label - project_credit - resources_count - slug - staff_notes - start_date - termination_metadata - type - type_name - type_uuid - url - user_affiliations - user_email_patterns - user_identity_sources - uuid description: '' UserFieldEnum: type: string enum: - active_isds - affiliations - agree_with_policy - agreement_date - attribute_sources - birth_date - civil_number - country_of_residence - date_joined - description - eduperson_assurance - email - first_name - full_name - gender - has_active_session - identity_provider_fields - identity_provider_label - identity_provider_management_url - identity_provider_name - identity_source - image - ip_address - is_active - is_identity_manager - is_staff - is_support - job_title - last_name - managed_isds - nationalities - nationality - native_name - notifications_enabled - organization - organization_country - organization_registry_code - organization_type - permissions - personal_title - phone_number - place_of_birth - preferred_language - registration_method - requested_email - slug - token - token_expires_at - token_lifetime - url - username - uuid description: '' ResourceOEnum: type: string enum: - -created - -end_date - -name - -project_name - -state - created - end_date - name - project_name - state description: '' PublicOfferingDetailsFieldEnum: type: string enum: - access_url - attributes - backend_id - backend_metadata - billable - billing_type_classification - category - category_title - category_uuid - citation_count - compliance_checklist - components - country - created - customer - customer_name - customer_uuid - datacite_doi - description - endpoints - files - full_description - getting_started - google_calendar_is_public - google_calendar_link - has_compliance_requirements - image - integration_guide - is_accessible - latitude - longitude - name - options - order_count - organization_groups - parent_description - parent_name - parent_uuid - partitions - paused_reason - plans - plugin_options - privacy_policy_link - project - project_name - project_uuid - promotion_campaigns - quotas - resource_options - roles - scope - scope_error_message - scope_name - scope_state - scope_uuid - screenshots - secret_options - service_attributes - shared - slug - software_catalogs - state - tags - thumbnail - total_cost - total_cost_estimated - total_customers - type - url - user_has_consent - uuid - vendor_details description: '' RobotAccountDetailsFieldEnum: type: string enum: - backend_id - created - customer_name - customer_uuid - description - error_message - error_traceback - fingerprints - keys - modified - offering_plugin_options - project_name - project_uuid - provider_name - provider_uuid - resource - resource_name - resource_uuid - responsible_user - state - type - url - user_keys - username - users - uuid description: '' ServiceProviderFieldEnum: type: string enum: - created - customer - customer_abbreviation - customer_country - customer_image - customer_name - customer_native_name - customer_slug - customer_uuid - description - enable_notifications - image - offering_count - organization_groups - url - uuid description: '' MarketplaceProviderCustomerProjectFieldEnum: type: string enum: - billing_price_estimate - description - end_date - name - resources_count - users_count - uuid description: '' MarketplaceProviderCustomerProjectOEnum: type: string enum: - -created - -customer_abbreviation - -customer_name - -customer_native_name - -end_date - -estimated_cost - -name - -start_date - created - customer_abbreviation - customer_name - customer_native_name - end_date - estimated_cost - name - start_date description: '' MarketplaceProviderCustomerFieldEnum: type: string enum: - abbreviation - billing_price_estimate - email - name - payment_profiles - phone_number - projects - projects_count - slug - users - users_count - uuid description: '' ProviderOfferingFieldEnum: type: string enum: - billing_price_estimate - category_title - components - customer_uuid - name - options - plans - resource_options - resources_count - secret_options - slug - state - thumbnail - type - uuid description: '' ProjectPermissionLogFieldEnum: type: string enum: - created - created_by - created_by_full_name - created_by_username - customer_name - customer_uuid - expiration_time - project - project_created - project_end_date - project_name - project_uuid - role - role_name - user - user_email - user_full_name - user_native_name - user_username - user_uuid description: '' MarketplaceServiceProviderUserFieldEnum: type: string enum: - active_isds - affiliations - birth_date - civil_number - country_of_residence - eduperson_assurance - email - first_name - full_name - gender - identity_source - is_active - job_title - last_name - nationalities - nationality - organization - organization_country - organization_registry_code - organization_type - personal_title - phone_number - place_of_birth - projects_count - registration_method - username - uuid description: '' MarketplaceServiceProviderUserOEnum: type: string enum: - -description - -email - -full_name - -is_active - -is_staff - -is_support - -job_title - -native_name - -organization - -phone_number - -registration_method - -username - description - email - full_name - is_active - is_staff - is_support - job_title - native_name - organization - phone_number - registration_method - username description: '' AgentServiceStateEnum: type: string enum: - 1 - 2 - 3 description: '' SoftwareCatalogOEnum: type: string enum: - -created - -modified - -name - -version - created - modified - name - version description: '' SoftwarePackageOEnum: type: string enum: - -catalog_name - -catalog_version - -created - -modified - -name - catalog_name - catalog_version - created - modified - name description: '' SoftwareTargetOEnum: type: string enum: - -cpu_family - -cpu_microarchitecture - -created - -package_name - cpu_family - cpu_microarchitecture - created - package_name description: '' SoftwareVersionOEnum: type: string enum: - -created - -package_name - -release_date - -version - created - package_name - release_date - version description: '' UserOfferingConsentOEnum: type: string enum: - -agreement_date - -created - -modified - -revocation_date - agreement_date - created - modified - revocation_date description: '' OnboardingJustificationOEnum: type: string enum: - -created - -modified - -validated_at - created - modified - validated_at description: '' OnboardingJustificationValidationDecisionEnum: type: string enum: - Approved - Pending Review - Rejected description: '' OnboardingVerificationOEnum: type: string enum: - -created - -expires_at - -modified - -validated_at - created - expires_at - modified - validated_at description: '' OnboardingVerificationStatusEnum1: type: string enum: - Escalated for manual validation - Expired - Failed - Pending - Verified description: '' OnboardingVerificationValidationMethodEnum: type: string enum: - Austrian Business Register (WirtschaftsCompass) - Estonian Business Register (ariregister) - Norwegian Business Register (Brreg) - Swedish Business Register (Bolagsverket) description: '' ChecklistResponseChecklistTypeEnum: type: string enum: - customer - intent description: '' AvailableChecklistsResponseChecklistTypeEnum: type: string enum: - customer - intent - all description: '' AllocationFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - groupname - is_active - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - node_limit - node_usage - project - project_name - project_uuid - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - uuid description: '' RemoteAllocationFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_active - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - node_limit - node_usage - project - project_name - project_uuid - remote_project_identifier - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - uuid description: '' OpenStackBackupFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - instance - instance_floating_ips - instance_marketplace_uuid - instance_name - instance_ports - instance_security_groups - is_limit_based - is_usage_based - kept_until - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - metadata - modified - name - project - project_name - project_uuid - resource_type - restorations - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - tenant_uuid - url - uuid description: '' ExternalNetworkFieldEnum: type: string enum: - backend_id - description - is_default - is_shared - name - settings - status - subnets - url - uuid description: '' OpenStackFlavorFieldEnum: type: string enum: - backend_id - cores - disk - display_name - name - ram - settings - url - uuid description: '' OpenStackFlavorOEnum: type: string enum: - -cores - -disk - -ram - cores - disk - ram description: '' OpenStackFloatingIPFieldEnum: type: string enum: - access_url - address - backend_id - backend_network_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - external_address - instance_name - instance_url - instance_uuid - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - port - port_fixed_ips - project - project_name - project_uuid - resource_type - router - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - tenant - tenant_name - tenant_uuid - url - uuid description: '' OpenStackInstanceFieldEnum: type: string enum: - access_url - action - action_details - availability_zone - availability_zone_name - backend_id - connect_directly_to_external_network - cores - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - disk - error_message - error_traceback - external_address - external_ips - flavor_disk - flavor_name - floating_ips - hypervisor_hostname - image_name - internal_ips - is_limit_based - is_usage_based - key_fingerprint - key_name - latitude - longitude - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - min_disk - min_ram - modified - name - ports - project - project_name - project_uuid - ram - rancher_cluster - resource_type - runtime_state - security_groups - server_group - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - ssh_public_key - start_time - state - tenant - tenant_uuid - url - user_data - uuid - volumes description: '' OpenStackInstanceOEnum: type: string enum: - start_time - -start_time description: '' OpenStackNetworkFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_external - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - mtu - name - project - project_name - project_uuid - rbac_policies - resource_type - segmentation_id - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - subnets - tenant - tenant_name - tenant_uuid - type - url - uuid description: '' OpenStackPortFieldEnum: type: string enum: - access_url - admin_state_up - allowed_address_pairs - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - device_id - device_owner - error_message - error_traceback - fixed_ips - floating_ips - is_limit_based - is_usage_based - mac_address - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - network - network_name - network_uuid - port_security_enabled - project - project_name - project_uuid - resource_type - security_groups - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - status - target_tenant - tenant - tenant_name - tenant_uuid - url - uuid description: '' OpenStackPortOEnum: type: string enum: - -admin_state_up - -created - -device_owner - -instance_name - -mac_address - -name - -network_name - -status - -subnet_name - admin_state_up - created - device_owner - instance_name - mac_address - name - network_name - status - subnet_name description: '' OpenStackRouterFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - fixed_ips - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - offering_external_ips - ports - project - project_name - project_uuid - resource_type - routes - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - tenant - tenant_name - tenant_uuid - url - uuid description: '' OpenStackSecurityGroupFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - project - project_name - project_uuid - resource_type - rules - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - tenant - tenant_name - tenant_uuid - url - uuid description: '' OpenStackServerGroupFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - display_name - error_message - error_traceback - instances - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - policy - project - project_name - project_uuid - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - tenant - tenant_name - tenant_uuid - url - uuid description: '' OpenStackSnapshotFieldEnum: type: string enum: - access_url - action - action_details - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - kept_until - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - metadata - modified - name - project - project_name - project_uuid - resource_type - restorations - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - size - source_volume - source_volume_marketplace_uuid - source_volume_name - state - url - uuid description: '' OpenStackSubNetFieldEnum: type: string enum: - access_url - allocation_pools - backend_id - cidr - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - disable_gateway - dns_nameservers - enable_dhcp - error_message - error_traceback - gateway_ip - host_routes - ip_version - is_connected - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - network - network_name - project - project_name - project_uuid - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - tenant - tenant_name - url - uuid description: '' OpenStackTenantFieldEnum: type: string enum: - availability_zone - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - default_volume_type_name - description - error_message - error_traceback - external_network_id - external_network_ref_name - external_network_ref_uuid - internal_network_id - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - project - project_name - project_uuid - quotas - resource_type - security_groups - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - skip_creation_of_default_router - skip_creation_of_default_subnet - state - subnet_cidr - url - uuid description: '' OpenStackVolumeFieldEnum: type: string enum: - access_url - action - action_details - availability_zone - availability_zone_name - backend_id - bootable - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - device - error_message - error_traceback - extend_enabled - image - image_metadata - image_name - instance - instance_marketplace_uuid - instance_name - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - metadata - modified - name - project - project_name - project_uuid - resource_type - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - size - source_snapshot - state - tenant - tenant_uuid - type - type_name - url - uuid description: '' PaymentProfileOEnum: type: string enum: - -is_active - -name - -payment_type - is_active - name - payment_type description: '' ProjectCreditOEnum: type: string enum: - -end_date - -expected_consumption - -project_name - -value - end_date - expected_consumption - project_name - value description: '' CampaignOEnum: type: string enum: - -end_date - -start_date - end_date - start_date description: '' CampaignStateEnum: type: string enum: - Active - Draft - Terminated description: '' ProposalOEnum: type: string enum: - -created - -round__call__name - -round__cutoff_time - -round__start_time - -slug - -state - created - round__call__name - round__cutoff_time - round__start_time - slug - state description: '' ProtectedCallFieldEnum: type: string enum: - backend_id - compliance_checklist - compliance_checklist_name - created - created_by - customer_name - customer_uuid - description - documents - end_date - external_url - fixed_duration_in_days - has_eligibility_restrictions - manager - manager_uuid - name - offerings - proposal_slug_template - reference_code - resource_templates - reviewer_identity_visible_to_submitters - reviews_visible_to_submitters - rounds - slug - start_date - state - url - user_affiliations - user_assurance_levels - user_email_patterns - user_identity_sources - user_nationalities - user_organization_types - uuid description: '' ProtectedCallOEnum: type: string enum: - -created - -manager__customer__name - -name - created - manager__customer__name - name description: '' AffinityMatrixResponseScopeEnum: type: string enum: - all - pool - suggestions description: '' PublicCallFieldEnum: type: string enum: - backend_id - created - customer_name - customer_uuid - description - documents - end_date - external_url - fixed_duration_in_days - has_eligibility_restrictions - manager - manager_uuid - name - offerings - resource_templates - reviewer_identity_visible_to_submitters - reviews_visible_to_submitters - rounds - slug - start_date - state - url - uuid description: '' ProviderRequestedOfferingOEnum: type: string enum: - -call__name - -created - -offering__name - -state - call__name - created - offering__name - state description: '' ProviderRequestedResourceOEnum: type: string enum: - -created - -offering__name - -proposal__name - -resource__name - created - offering__name - proposal__name - resource__name description: '' ProposalReviewOEnum: type: string enum: - -created - -state - created - state description: '' InvoiceItemOEnum1: type: string enum: - -invoice_customer_name - -project_name - -resource_offering_name - -unit_price - invoice_customer_name - project_name - resource_offering_name - unit_price description: '' RancherApplicationFieldEnum: type: string enum: - access_url - answers - backend_id - catalog_name - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - external_url - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - namespace - namespace_name - project - project_name - project_uuid - rancher_project - rancher_project_name - resource_type - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - template - template_name - url - uuid - version description: '' RancherClusterFieldEnum: type: string enum: - access_url - backend_id - capacity - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - install_longhorn - is_limit_based - is_usage_based - kubernetes_version - management_security_group - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - nodes - project - project_name - project_uuid - public_ips - requested - resource_type - router_ips - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - ssh_public_key - state - tenant - tenant_uuid - url - uuid - vm_project description: '' RancherIngressFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - namespace - namespace_name - project - project_name - project_uuid - rancher_project - rancher_project_name - resource_type - rules - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - uuid description: '' RancherNamespaceOEnum: type: string enum: - -cluster_name - -name - -project_name - cluster_name - name - project_name description: '' RoleTemplateOEnum: type: string enum: - -name - -scope_type - name - scope_type description: '' RancherServiceFieldEnum: type: string enum: - access_url - backend_id - cluster_ip - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - namespace - namespace_name - project - project_name - project_uuid - resource_type - runtime_state - selector - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - target_workloads - url - uuid description: '' RancherTemplateOEnum: type: string enum: - -catalog_name - -name - catalog_name - name description: '' RancherWorkloadOEnum: type: string enum: - -cluster_name - -name - -namespace_name - -project_name - cluster_name - name - namespace_name - project_name description: '' ReviewerBidOEnum: type: string enum: - -bid - -modified_at - -submitted_at - bid - modified_at - submitted_at description: '' ReviewerProfileOEnum: type: string enum: - -created - -user_email - -user_name - created - user_email - user_name description: '' ReviewerSuggestionOEnum: type: string enum: - -affinity_score - -created - -reviewed_at - -status - affinity_score - created - reviewed_at - status description: '' RoleDetailsFieldEnum: type: string enum: - content_type - description - description_ar - description_cs - description_da - description_de - description_en - description_es - description_et - description_fr - description_it - description_lt - description_lv - description_nb - description_ru - description_sv - is_active - is_system_role - name - permissions - users_count - uuid description: '' ServiceSettingsFieldEnum: type: string enum: - customer - customer_name - customer_native_name - error_message - name - options - scope - scope_uuid - shared - state - terms_of_services - type - url - uuid description: '' SlurmAllocationFieldEnum: type: string enum: - access_url - backend_id - cpu_limit - cpu_usage - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - gateway - gpu_limit - gpu_usage - is_active - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - project - project_name - project_uuid - ram_limit - ram_usage - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - username - uuid description: '' FirecrestJobFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - file - modified - name - project - project_name - project_uuid - report - resource_type - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - user - user_username - user_uuid - uuid description: '' AttachmentFieldEnum: type: string enum: - backend_id - created - destroy_is_available - file - file_name - file_size - issue - issue_key - mime_type - url - uuid description: '' IssueOEnum: type: string enum: - -assignee_name - -caller_first_name - -caller_last_name - -created - -customer_name - -key - -modified - -priority - -project_name - -remote_id - -reporter_name - -status - -summary - -type - assignee_name - caller_first_name - caller_last_name - created - customer_name - key - modified - priority - project_name - remote_id - reporter_name - status - summary - type description: '' SystemLogLevelEnum: type: string enum: - CRITICAL - ERROR - INFO - WARNING description: '' SystemLogOEnum: type: string enum: - -created - -instance - -level_number - created - instance - level_number description: '' InvitationOEnum: type: string enum: - -created - -created_by - -email - -state - created - created_by - email - state description: '' VmwareDiskFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - project - project_name - project_uuid - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - size - state - url - uuid - vm - vm_name - vm_uuid description: '' VmwarePortFieldEnum: type: string enum: - access_url - backend_id - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - description - error_message - error_traceback - is_limit_based - is_usage_based - mac_address - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - network - network_name - project - project_name - project_uuid - resource_type - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - url - uuid - vm - vm_name - vm_uuid description: '' VmwareVirtualMachineFieldEnum: type: string enum: - access_url - backend_id - cluster - cluster_name - cores - cores_per_socket - created - customer - customer_abbreviation - customer_name - customer_native_name - customer_uuid - datastore - datastore_name - description - disk - disks - error_message - error_traceback - folder - folder_name - guest_os - guest_os_name - guest_power_state - is_limit_based - is_usage_based - marketplace_category_name - marketplace_category_uuid - marketplace_offering_name - marketplace_offering_plugin_options - marketplace_offering_uuid - marketplace_plan_uuid - marketplace_resource_state - marketplace_resource_uuid - modified - name - networks - ports - project - project_name - project_uuid - ram - resource_type - runtime_state - service_name - service_settings - service_settings_error_message - service_settings_state - service_settings_uuid - state - template - template_name - tools_installed - tools_state - url - uuid description: '' securitySchemes: tokenAuth: type: apiKey in: header name: Authorization description: '' waldurCookieAuth: type: apiKey in: cookie name: sessionid description: '' waldurOIDCAuth: type: http scheme: bearer description: '' parameters: Page: name: page required: false in: query description: A page number within the paginated result set. schema: type: integer PageSize: name: page_size required: false in: query description: Number of results to return per page. schema: type: integer headers: XResultCount: description: Total number of results available schema: type: integer example: 42