> ## Documentation Index
> Fetch the complete documentation index at: https://nango-tiktok-accounts-update.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Perform Actions

> Simplify complex workflows by performing one-off synchronous actions.

## When should you use *actions*?

*Actions* are designed to streamline one-off synchronous workflows that interact with external APIs. Here's what you can achieve with them:

* **Push Updates to External APIs**: Modify a CRM contact field, update a ticket status, and more.
* **Initiate External Events**: Send notifications via email or Slack, and trigger other tasks.
* **Fetch Data in Real-Time**: Instantly retrieve a list of users or other dynamic data.

Moreover, *actions* incorporate the robust features of the [Proxy](/guides/proxy), allowing you to maintain complex logic within Nango scripts instead of your main codebase. By employing *actions*, you're equipped with:

* Efficient API requests and data transformation.
* Unified schemas across various external APIs.
* Smart rate-limit handling and automatic retries.
* Built-in pagination logic.
* Comprehensive logging and monitoring capabilities.

# Step 0: API authorization

Start by ensuring the external API you intend to work with is authorized. If not, refer to the [Authorize APIs guide](/guides/oauth) for guidance.

# Step 1: Enable a pre-built *action*

Go to the [Syncs & Actions tab](https://app.nango.dev/syncs).

Toggle on `Actions` and click the `Add New` button.

<Frame>
  <img src="https://mintlify.s3-us-west-1.amazonaws.com/nango-tiktok-accounts-update/images/quickstart/add-new-action.png" />
</Frame>

From the `Provider` dropdown, select the desired API. Choose your desired action using the `Template` dropdown. Click `Add Action` at the page's bottom.

Congratulations! You're now set to trigger this action from your backend.

# Step 2: Trigger an action

*Actions* are designed to run in real-time and are activated either through the [backend SDK](/sdks) or the [REST API](/api-reference):

<Tabs>
  <Tab title="cURL">
    ```bash
    curl --request POST \
      --url https://api.nango.dev/action/trigger \
      --header 'Authorization: Bearer <PROJECT-SECRET-KEY>' \
      --header 'Connection-Id: <CONNECTION-ID>' \
      --header 'Provider-Config-Key: <INTEGRATION-ID>' \
      --data '{ "action_name": "<ACTION-NAME>", "input": <JSON-INPUT> }'
    ```
  </Tab>

  <Tab title="Node SDK">
    ```ts
    import { Nango }  from '@nangohq/node';

    const nango = new Nango({ secretKey: '<PROJECT-SECRET-KEY>' });

    const result = await nango.triggerAction('<INTEGRATION-ID>', '<CONNECTION-ID>', '<ACTION-NAME>', jsonInput);
    ```
  </Tab>
</Tabs>

## Next Steps

Dive deeper with the [Customize Syncs & Actions guide](/guides/custom).

## Questions, problems, feedback?

We're here to help! Please reach out on the [Slack community](https://nango.dev/slack), we are very active there.
