---
sidebar:
  hidden: true
title: roboto.domain.actions.action_operations
---
## Module Contents

### CreateActionRequest

```python
class roboto.domain.actions.action_operations.CreateActionRequest(/, **data: Any)
```

`from roboto import CreateActionRequest`

[Source](https://github.com/roboto-ai/roboto-python-sdk/blob/main/src/roboto/domain/actions/action_operations.py#L28-L72)

Bases: `pydantic.BaseModel`

Request payload to create a new action.

Contains all the configuration needed to create a new action in the Roboto platform, including container settings, compute requirements, parameters, and metadata.

**Parameters**

- **data** (`Any`)

**Attributes**

- **CreateActionRequest.compute_requirements** (`roboto.domain.actions.action_record.ComputeRequirements | None`) = `None`: CPU, memory, and other compute specifications.
- **CreateActionRequest.container_parameters** (`roboto.domain.actions.action_record.ContainerParameters | None`) = `None`: Container image URI, entrypoint, and environment variables.
- **CreateActionRequest.description** (`str | None`) = `None`: Detailed description of what the action does.
- **CreateActionRequest.inherits** (`roboto.domain.actions.action_record.ActionReference | None`) = `None`: Reference to another action to inherit configuration from.
- **CreateActionRequest.metadata** (`dict[str, Any]`) = `None`: Custom key-value metadata to associate with the action.
- **CreateActionRequest.name** (`str`): Unique name for the action within the organization.
- **CreateActionRequest.parameters** (`list[roboto.domain.actions.action_record.ActionParameter]`) = `None`: List of parameters that can be provided at invocation time.
- **CreateActionRequest.requires_downloaded_inputs** (`bool | None`) = `None`: Whether input files should be downloaded before execution.
- **CreateActionRequest.short_description** (`str | None`) = `None`: Brief description (max 140 characters) for display purposes.
- **CreateActionRequest.tags** (`list[str]`) = `None`: List of tags for categorizing and searching actions.
- **CreateActionRequest.timeout** (`int | None`) = `None`: Maximum execution time in minutes before the action is terminated.
- **CreateActionRequest.uri** (`str | None`) = `None`: Container image URI if not inheriting from another action.

### SetActionAccessibilityRequest

```python
class roboto.domain.actions.action_operations.SetActionAccessibilityRequest(
    /,
    **data: Any,
)
```

`from roboto import SetActionAccessibilityRequest`

[Source](https://github.com/roboto-ai/roboto-python-sdk/blob/main/src/roboto/domain/actions/action_operations.py#L75-L87)

Bases: `pydantic.BaseModel`

Request payload to set action accessibility.

Used to change whether an action is private to the organization or published publicly in the Action Hub.

**Parameters**

- **data** (`Any`)

**Attributes**

- **SetActionAccessibilityRequest.accessibility** (`roboto.domain.actions.action_record.Accessibility`): The new accessibility level (Organization or ActionHub).
- **SetActionAccessibilityRequest.digest** (`str | None`) = `None`: Specific version of Action. If not specified, the latest version's accessibility will be updated.
- **SetActionAccessibilityRequest.model_config**: Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

### UpdateActionRequest

```python
class roboto.domain.actions.action_operations.UpdateActionRequest(/, **data: Any)
```

`from roboto import UpdateActionRequest`

[Source](https://github.com/roboto-ai/roboto-python-sdk/blob/main/src/roboto/domain/actions/action_operations.py#L90-L138)

Bases: `pydantic.BaseModel`

Request payload to update an action.

Contains the changes to apply to an existing action. Only specified fields will be updated; others remain unchanged. Uses NotSet sentinel values to distinguish between explicit None values and unspecified fields.

**Parameters**

- **data** (`Any`)

**Attributes**

- **UpdateActionRequest.compute_requirements** (`roboto.domain.actions.action_record.ComputeRequirements | roboto.sentinels.NotSetType | None`): New compute requirements (CPU, memory).
- **UpdateActionRequest.container_parameters** (`roboto.domain.actions.action_record.ContainerParameters | roboto.sentinels.NotSetType | None`): New container parameters (image, entrypoint, etc.).
- **UpdateActionRequest.description** (`str | roboto.sentinels.NotSetType | None`): New detailed description.
- **UpdateActionRequest.inherits** (`roboto.domain.actions.action_record.ActionReference | roboto.sentinels.NotSetType | None`): New action reference to inherit from.
- **UpdateActionRequest.metadata_changeset** (`roboto.updates.MetadataChangeset | roboto.sentinels.NotSetType`): Changes to apply to metadata (add, remove, update keys).
- **UpdateActionRequest.model_config**: Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- **UpdateActionRequest.parameter_changeset** (`roboto.domain.actions.action_record.ActionParameterChangeset | roboto.sentinels.NotSetType`): Changes to apply to parameters (add, remove, update).
- **UpdateActionRequest.requires_downloaded_inputs** (`bool | roboto.sentinels.NotSetType`): Whether to download input files before execution.
- **UpdateActionRequest.short_description** (`str | roboto.sentinels.NotSetType | None`): New brief description (max 140 characters).
- **UpdateActionRequest.timeout** (`int | roboto.sentinels.NotSetType | None`): New maximum execution time in minutes.
- **UpdateActionRequest.uri** (`str | roboto.sentinels.NotSetType | None`): New container image URI.

#### UpdateActionRequest.validate_uri()

```python
def validate_uri(v)
```

[Source](https://github.com/roboto-ai/roboto-python-sdk/blob/main/src/roboto/domain/actions/action_operations.py#L129-L136)
