# perform (/docs/api/actions/functions/perform)



```ts
function perform(request, options?): Promise<ActionResponse>;
```

Sends the request once. No retries, no timeout of its own: both belong to the caller.

## Parameters [#parameters]

| Parameter | Type                                                            |
| --------- | --------------------------------------------------------------- |
| `request` | [`ActionRequest`](/docs/api/actions/interfaces/ActionRequest)   |
| `options` | [`PerformOptions`](/docs/api/actions/interfaces/PerformOptions) |

## Returns [#returns]

`Promise`\<[`ActionResponse`](/docs/api/actions/interfaces/ActionResponse)>
