> For the complete documentation index, see [llms.txt](https://docs.textlinksms.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.textlinksms.com/make.md).

# Make.com

Once you have signed in to [Make.com](https://make.com/), click the ![](/files/Gn9IusFP6vmgtmlhKGGE) button to get started working on your workflow. Note that you need to have a working TextLink account, and follw the [device setup tutorial](/setup.md) in order to be able to actually use TextLink.&#x20;

## Creating an SMS trigger

{% embed url="<https://youtu.be/4Oc6yjlg9V8?si=ZnVj_KblIyY0s6kj>" %}

In this tutorial, you will learn how to create a trigger for receiving SMS, but other triggers can be done identically. For list of other triggers, check the [Webhooks](/webhooks.md) page.

1. Select *Webhooks* as the  trigger for your workflow\
   ![](/files/1kajOo2TFYr36CCtR7rQ)
2. And then choose *Custom webhook*\
   &#x20;![](/files/5DlUPtk8SOGu9Ja3OPGT)&#x20;
3. Create a new webhook, give it a name (anything you want), and click *Save*.\
   ![](/files/A6lqplbd8aTsMPcGaL3X)
4. Click the *Copy address to clipboard* button:\
   ![](/files/aN5nt6p40CuN1uzZ01As)
5. Go to [TextLink API dashboard](https://textlinksms.com/dashboard/api) ("API & Hooks" page), and paste the copied URL into the input for the action that you would like to use to trigger your webhook (in our case Receive SMS action). Also if you have not set a webhook secret, click the *Generate* button next to the webhook secret. That secret is only known to you and our servers, and you can use it to authorize requests if needed. \
   ![](/files/3xiymf8hcjLAqfhPhtwj)
6. Click *Save* and then *Test webhooks*. If everything is working, you should get the following confirmation:\
   ![](/files/xbDLTqo0ldSjKUPvoWKR)
7. Go back to Make.com, and click the *Save* button (can also be called *Ok*). You should now see the test request. Click *Continue with selected record*\
   ![](/files/l8d7HUgQedKsxFwMUX0G)
8. Congratulations! You have completed the trigger setup. You can now easily use the Webhook data in next steps.&#x20;

### (Optional) Webhook authorization

As mentioned earlier, you can specify a secret in your Webhook configuration (step 4). Only you and our server knows that secret. You can confirm that the request is coming from our server by adding the *Router* component at the beginning of your workflow, as shown below.

1. Click + to add a new component to your workflow. Select a router\
   ![](/files/7D3acCY6olBGvX5KUY2f)
2. Now you can see that it created two branches. We are safe to ignore the request if the secret is invalid, so we can delete the second branch by right clicking on it:\
   ![](/files/qfa9sEJ75DLbiIgGZGJR)
3. Click the dots between the router element and the next element (1st) to set up your filter. Enter any label. For condition, configure it so it checks whether the secret field provided in the webhook is your webhook secret, pasted from the step 4 in webhook creation.<br>

   <figure><img src="/files/EDzG5yF6eKHFOGmA5vTJ" alt=""><figcaption></figcaption></figure>

## Using the API (Sending an SMS + More)

{% embed url="<https://www.youtube.com/watch?v=2OU3KNbn9PY>" %}

You can call any endpoint defined on the [API page](/api.md) from Make. This example shows how to create a send SMS action. To get started, click the + button to add an action after your webhook or your filter (as seen in previous step).&#x20;

1. Select the HTTP App\
   ![](/files/HeEUvbJOnHhTDxHwo0ms)<br>
2. Select *Make a request* action\
   ![](/files/wdRMer6ZibQtyswcXuls)
3. Fill out the URL, Method and Headers using the specification of the API call that you want to use (`send-sms` in our example). Make sure that the vaule of the Authorization header is `Bearer YOUR_API_KEY`, where you can find your API key in [TextLink API dashboard](https://textlinksms.com/dashboard/api). \
   ![](/files/85MXyyRapQAFQxDQhZ42)
4. For *Body type*, select `Raw`. For *Content type*, select `JSON (application/json)`. For request content, you need to use this base form (you need to specify other fields based on the API endpoint specification):&#x20;

   ```
   {"phone_number": "", "text": ""}
   ```

   And you can then reuse all the other fields in your workflow by clicking them in the pop-up menu to the right. You can see that we are sending "Hello there" to the phone number  from the trigger Webhook.&#x20;

   <figure><img src="/files/ASVLclqaE0cHh0XVmeCW" alt=""><figcaption></figcaption></figure>
5. That's it! You can trigger other API endpoints similar way.&#x20;
