---
title: "RPC"
description: "This page lists the Python SDK names for RPCs."
canonical_url: "https://docs.superdurable.io/reference/python/rpc/"
source: "docs/reference/python/rpc.mdx"
locale: "en"
---

# RPC

This page lists the Python SDK names for [RPCs](https://docs.superdurable.io/concepts/primitives/rpc.md).
The doc comment of each API gives its parameters, defaults, and errors. Read
them in the [Python SDK API reference](https://docs.superdurable.io/reference/python.md#api-reference).

<a id="api-names"></a>

## API names

| Task                                                 | Python API                                                                                                                                          | Dex behavior                                                                                                                   |
| ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| Define an RPC handler                                | **@rpc** on a Flow method                                                                                                                           | [Flow definition](https://docs.superdurable.io/reference/python/flow.md#flow-definition)                                       |
| Set the durable RPC name                             | **name** of **@rpc**. It defaults to the method name.                                                                                               | [Flow definition](https://docs.superdurable.io/reference/python/flow.md#flow-definition)                                       |
| Set the RPC timeout                                  | **timeout** of **@rpc**                                                                                                                             | [RPC timeout](https://docs.superdurable.io/reference/server/runtime-data.md#rpc-timeout)                                       |
| Lock Attributes for the whole call                   | **lock_attributes** of **@rpc**                                                                                                                     | [Locks](https://docs.superdurable.io/reference/server/runtime-data.md#attribute-locks)                                         |
| Request transactional reads and writes without locks | **is_transactional** of **@rpc**                                                                                                                    | [Transactional RPCs](https://docs.superdurable.io/reference/server/runtime-data.md#transactional-reads-and-writes)             |
| Load AttributeMap values and Channel messages        | **load_attribute_maps**, **load_attribute_map_instances**, **load_channels**, **load_channel_maps**, and **load_channel_map_instances** of **@rpc** | [Selective state loading](https://docs.superdurable.io/reference/server/runtime-data.md#load-collection-state)                 |
| Return the output and start next Steps               | **RPCResult**                                                                                                                                       | [RPCs](https://docs.superdurable.io/reference/server/runtime-data.md#rpcs)                                                     |
| Cancel running Steps                                 | **RPCResult.with_canceling_steps**                                                                                                                  | [Cancel running Steps](https://docs.superdurable.io/reference/server/runtime-data.md#cancel-running-steps)                     |
| Let a person invoke the RPC from Dex Web             | **action** of **@rpc**, with **Action**                                                                                                             | [Actions](https://docs.superdurable.io/reference/web/dex-web.md#actions)                                                       |
| Invoke the RPC from a Client                         | **Client.invoke_rpc**                                                                                                                               | [Invoke an RPC](https://docs.superdurable.io/reference/server/runtime-client.md#invoke-an-rpc)                                 |
| Lock or load map instances chosen at call time       | **RPCInvokeOptions**                                                                                                                                | [Runtime-selected map instances](https://docs.superdurable.io/reference/server/runtime-data.md#runtime-selected-map-instances) |

<a id="example"></a>

## Example

Example: [examples/python/dex_examples/primitives/rpc/rpc_flow.py](https://github.com/superdurable/dex/tree/main/examples/python/dex_examples/primitives/rpc/rpc_flow.py)
