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

# Scheduled Notifications

You can send scheduled or delayed notifications to your users.

## Before You Start:

{% hint style="info" %}
Adastacks does not store your Adalo information. Your Adalo app ID, collection ID, and API key are erased upon the completion of each request.
{% endhint %}

{% hint style="info" %}
Your app **must** be published to the app stores in order for this stack to function. PWA's and web applications built in Adalo do not support native mobile push notifications.
{% endhint %}

## Video Tutorial

Updated video tutorial is coming soon!

## Walkthrough

**1.** Login to [Adastacks.com](https://adastacks.com) and navigate to your dashboard. (we'll need this for your API Key in a minute).

**2.** Open a new tab in your browser and open up your Adalo app in the Adalo editor

**3.** Once open, place a test button on a screen of your choosing

**4.** Under the "Click Actions" for the button, select **Custom Action**

**5.** Give your action a name, such as "Create Scheduled Notification"

**6.** Select the **Create** option from the dropdown below the Title field, then click **Next**

**7.** Copy the following URL and paste it into the Base URL field of the Custom Action

```markup
https://adastacks.app.n8n.cloud/webhook/notify?app_id=APPID&adalo_key=ADALOKEY&to_email=TOUSEREMAIL&title=TITLE&body=BODY&scheduled_datetime=DATETIME
```

**8.** Set the "Method" dropdown to **POST**

**9.** Add a query parameter called **Content-Type** with the value **application/json**

![](https://2830261229-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRcI-XJRZMjllYclp86%2F-MaZ6u50LlxKDWWKs2tn%2F-MaZ7zEwCloG89ck9zcf%2FScreen%20Shot%202021-05-25%20at%2011.27.55%20AM.png?alt=media\&token=ad43a771-35b0-49ac-a67a-4415b903bb16)

**10.** Add another query parameter called **api\_key** with your Adastacks API Key as the value

![](https://2830261229-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRcI-XJRZMjllYclp86%2F-MaZuy7JHG6ypQOLS2hK%2F-MaZwnVzXtyllh_lmNuA%2FScreen%20Shot%202021-05-25%20at%203.12.57%20PM.png?alt=media\&token=7d759e4e-f4a8-4b1c-bafc-aae383a47a0a)

**11.** Add **Inputs** to hold your data for the new Custom Action (*You can name these whatever you like, but below are some suggestions*)

| Suggested Input Name   | Input Type | Suggested Input Value                                                                                                                                 |
| ---------------------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
|                        |            |                                                                                                                                                       |
| **Adalo App ID**       | Text       | *For testing, you can make this anything you like*                                                                                                    |
| **Adalo API Key**      | Text       | *For testing, you can make this anything you like*                                                                                                    |
| **To User Email**      | Text       | *For testing, you can make this anything you like*                                                                                                    |
| **Notification Title** | Text       | *For testing, you can make this whatever you like*                                                                                                    |
| **Notification Body**  | Text       | *For testing, you can make this whatever you like*                                                                                                    |
| **Scheduled Datetime** | Text       | <p><strong>2022-12-19T23:24:30Z</strong> </p><p><em>Note that the date formatting when sending in the custom action should be No Formatting.</em></p> |

**12.** Replace the **capitalized text** in the URL with the **Inputs** you just made using the **Magic Text** button in the top right of the URL field.

![](https://2830261229-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MRcI-XJRZMjllYclp86%2Fuploads%2FDm4Ata8xUTJ6XMcIjKdH%2FScreen%20Shot%202021-10-10%20at%2011.41.46%20PM.png?alt=media\&token=d3a05730-c59e-4e76-b28b-55c740ada9a7)

**13.** Run the test request. (See the success screenshot below)

{% hint style="info" %}
Even test actions that fail return a "Test Successful" message so be sure to click **Show Full Response** to ensure the action succeeded. This is by design so that you can still save the action and return to continue setting it up later if you wish.
{% endhint %}

![](https://2830261229-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRcI-XJRZMjllYclp86%2F-MUP2QBNxesdVDbgE2k5%2F-MUP2sFEgMiG5gFlDGuP%2FScheduled%20Notifications%20Success%20Message.png?alt=media\&token=45541b02-6c0b-41da-8167-cde1eba6730e)

**14.** Save the Custom Action and add it where you need it throughout your app. See below for an example custom action setup:

![](https://2830261229-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MRcI-XJRZMjllYclp86%2Fuploads%2FpqpXs1Il8Cf9Sr38GIMw%2FScreen%20Shot%202021-10-10%20at%2011.45.50%20PM.png?alt=media\&token=e015d846-c827-4ffe-9123-0e11a8ff1d27)

**15**.  IMPORTANT! Don't forget to format the scheduled date to No Formatting by clicking the pencil icon. If you fail to do this, the notifications will not be sent.

![](https://2830261229-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MRcI-XJRZMjllYclp86%2Fuploads%2FkA3dLfykTTKOZnRqyKLs%2FScreen%20Shot%202021-10-10%20at%2011.46.09%20PM.png?alt=media\&token=d3961571-9838-451e-80fe-7e5deb614733)
