Skip to content

User Actions

Operations Summary

Method Endpoint Description
Core CRUD
GET /api/user-actions/ List User Actions
GET /api/user-actions/{uuid}/ Retrieve
POST /api/user-actions/update_actions/ Trigger update of user actions
Other Actions
GET /api/user-actions/summary/ Get action summary counts
POST /api/user-actions/bulk_silence/ Bulk silence actions by filters
POST /api/user-actions/{uuid}/execute_action/ Execute a corrective action
POST /api/user-actions/{uuid}/silence/ Silence an action temporarily or permanently
POST /api/user-actions/{uuid}/unsilence/ Remove silence from an action

Core CRUD

List User Actions

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

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

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

try {
  const response = await userActionsList({
  auth: "Token YOUR_API_TOKEN"
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Description
action_type string
created_after string (date-time)
created_before string (date-time)
due_within_days number
include_silenced boolean
is_silenced boolean
o string Which field to use when ordering the results.
overdue boolean
page integer A page number within the paginated result set.
page_size integer Number of results to return per page.
urgency string Enum: high, low, medium

200 -

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

Field Type Description
uuid string (uuid)
action_type string Type of action, e.g. 'pending_order', 'expiring_resource'
title string
description string
urgency string
Enum: low, medium, high
due_date string (date-time)
is_silenced boolean
silenced_until string (date-time)
is_temporarily_silenced boolean
is_effectively_silenced boolean
created string (date-time)
modified string (date-time)
related_object_name string
related_object_type string
corrective_actions array of objects
corrective_actions.label string
corrective_actions.category string
Enum: view, approve, reject, extend, terminate, backup, migrate, contact, escalate, configure, repair, monitor
corrective_actions.severity string
Enum: safe, low, medium, high, critical
corrective_actions.method string
corrective_actions.api_endpoint boolean
corrective_actions.confirmation_required boolean
corrective_actions.permissions_required array of strings
corrective_actions.metadata object (free-form)
corrective_actions.route_name string
corrective_actions.route_params object (free-form)
days_until_due integer
route_name string UI-Router state name for navigation
route_params object (free-form)
project_name string
project_uuid string (uuid)
organization_name string
organization_uuid string (uuid)
offering_name string
offering_uuid string (uuid)
offering_type string
resource_name string
resource_uuid string (uuid)
order_type string

Retrieve

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

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

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

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

200 -

Field Type Description
uuid string (uuid)
action_type string Type of action, e.g. 'pending_order', 'expiring_resource'
title string
description string
urgency string
Enum: low, medium, high
due_date string (date-time)
is_silenced boolean
silenced_until string (date-time)
is_temporarily_silenced boolean
is_effectively_silenced boolean
created string (date-time)
modified string (date-time)
related_object_name string
related_object_type string
corrective_actions array of objects
corrective_actions.label string
corrective_actions.category string
Enum: view, approve, reject, extend, terminate, backup, migrate, contact, escalate, configure, repair, monitor
corrective_actions.severity string
Enum: safe, low, medium, high, critical
corrective_actions.method string
corrective_actions.api_endpoint boolean
corrective_actions.confirmation_required boolean
corrective_actions.permissions_required array of strings
corrective_actions.metadata object (free-form)
corrective_actions.route_name string
corrective_actions.route_params object (free-form)
days_until_due integer
route_name string UI-Router state name for navigation
route_params object (free-form)
project_name string
project_uuid string (uuid)
organization_name string
organization_uuid string (uuid)
offering_name string
offering_uuid string (uuid)
offering_type string
resource_name string
resource_uuid string (uuid)
order_type string

Trigger update of user actions

Trigger update of user actions

1
2
3
4
http \
  POST \
  https://api.example.com/api/user-actions/update_actions/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.update_actions_request import UpdateActionsRequest # (1)
from waldur_api_client.api.user_actions import user_actions_update_actions # (2)

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

body_data = UpdateActionsRequest()
response = user_actions_update_actions.sync(
    client=client,
    body=body_data
)

print(response)
  1. Model Source: UpdateActionsRequest
  2. API Source: user_actions_update_actions
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import { userActionsUpdateActions } from 'waldur-js-client';

try {
  const response = await userActionsUpdateActions({
  auth: "Token YOUR_API_TOKEN"
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Field Type Required Description
provider_action_type string Optional provider action type to update. If not provided, updates all providers.

202 -

Field Type
status string
message string
provider_action_type string

Other Actions

Get action summary counts

Get action summary counts

1
2
3
4
http \
  GET \
  https://api.example.com/api/user-actions/summary/ \
  Authorization:"Token YOUR_API_TOKEN"
1
2
3
4
5
6
7
8
9
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.user_actions import user_actions_summary_retrieve # (1)

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

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

try {
  const response = await userActionsSummaryRetrieve({
  auth: "Token YOUR_API_TOKEN"
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}

200 -

Field Type
total integer
by_urgency object (free-form)
by_type object (free-form)
overdue integer

Bulk silence actions by filters

Bulk silence actions by filters

1
2
3
4
http \
  POST \
  https://api.example.com/api/user-actions/bulk_silence/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.silence_action_request import SilenceActionRequest # (1)
from waldur_api_client.api.user_actions import user_actions_bulk_silence # (2)

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

body_data = SilenceActionRequest()
response = user_actions_bulk_silence.sync(
    client=client,
    body=body_data
)

print(response)
  1. Model Source: SilenceActionRequest
  2. API Source: user_actions_bulk_silence
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import { userActionsBulkSilence } from 'waldur-js-client';

try {
  const response = await userActionsBulkSilence({
  auth: "Token YOUR_API_TOKEN"
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Field Type Required Description
duration_days integer Duration in days to silence the action. If not provided, silences permanently.

200 -

Field Type
status string
count integer
duration_days integer

Execute a corrective action

Execute a corrective action

1
2
3
4
5
http \
  POST \
  https://api.example.com/api/user-actions/a1b2c3d4-e5f6-7890-abcd-ef1234567890/execute_action/ \
  Authorization:"Token YOUR_API_TOKEN" \
  action_label="string-value"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.execute_action_request import ExecuteActionRequest # (1)
from waldur_api_client.api.user_actions import user_actions_execute_action # (2)

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

body_data = ExecuteActionRequest(
    action_label="string-value"
)
response = user_actions_execute_action.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

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

try {
  const response = await userActionsExecuteAction({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "action_label": "string-value"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
action_label string Label of the corrective action to execute

200 -

Field Type
action string
message string
redirect_url string (uri)
metadata object (free-form)

404 -

Field Type
error string

500 -

Field Type
error string

Silence an action temporarily or permanently

Silence an action temporarily or permanently

1
2
3
4
http \
  POST \
  https://api.example.com/api/user-actions/a1b2c3d4-e5f6-7890-abcd-ef1234567890/silence/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.silence_action_request import SilenceActionRequest # (1)
from waldur_api_client.api.user_actions import user_actions_silence # (2)

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

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

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

try {
  const response = await userActionsSilence({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
duration_days integer Duration in days to silence the action. If not provided, silences permanently.

200 -

Field Type
status string
duration_days integer

Remove silence from an action

Remove silence from an action

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

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

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

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

200 -

Field Type
status string