Internal Tasks

Platio processes some tasks in the server in several cases. It sends email when a record is created or updated, for example, when you use Send Email field. It sends push notifications when a created or updated record matches conditions of alerts. These tasks are called internal tasks.

Fields using internal tasks

Field Type Run at Data Pocket Update the original record
Aggregation Aggregation Creating, updating, deleting a record, and delivering a MiniApp Target Data Pocket No
Text Aggregation Aggregation Creating, updating, deleting a record, and delivering a MiniApp Target Data Pocket No
Date & Time Aggregation Aggregation Creating, updating, deleting a record, and delivering a MiniApp Target Data Pocket No
Date Aggregation Aggregation Creating, updating, deleting a record, and delivering a MiniApp Target Data Pocket No
Duration Aggregation Aggregation Creating, updating, deleting a record, and delivering a MiniApp Target Data Pocket No
Location Aggregation Aggregation Creating, updating, deleting a record, and delivering a MiniApp Target Data Pocket No
Generate ID Automation Creating a record Data Pocket of the field Yes
Generate QR Code Automation Creating, updating a record Data Pocket of the field Yes
Send Email Automation Creating, updating a record Data Pocket of the field Yes (when Sent property is set)
Send Email (Users) Automation Creating, updating a record Data Pocket of the field Yes (when Sent property is set)
Push Notification Automation Creating, updating a record Data Pocket of the field No

Alert

Alert Type Run at Data Pocket Update the original record
Alert Automation Creating, updating a record Target Data Pocket No

Logs

You can see logs of internal tasks at Processing Logs page in Platio Studio. These logs are available for two weeks.

Internal tasks for record updates

An internal task that runs when a record is updated runs when a record is updated automatically as well as a user updated it on iOS/Android app or Data Viewer. For example, it runs when a record is updated with Platio API, and by other internal tasks.

Imagine you have a Generate ID field and Push Notification field. An internal task for the Push Notification will run and send a push notification when an internal task for the Generate ID field updates the record as well as a user creates and updates a record. You can set a proper Condition on the field to prevent it.

Limits

There is a limit on how many times internal tasks can run in a certain period. The current limitations are listed below, but they may change. These limitations are applied to each MiniApp, and it’ll be an error when you call internal tasks of the same type more times than the limit. Internal tasks that hit this limit won’t be retried automatically even after the current period.

Type Limit for Standard and Premium Plan Limit for Enterprise Plan
Automation 2,000 / hour 4,000 / hour
Aggregation 2,000 / hour 4,000 / hour

Note that it’ll increment the counter even when a task didn’t send email or push notification. Imagine you have an alert that sends email when a value for a specific field is greater than 10. Then, ten records has been created and two of them had a value greater than 10 for this field. In this case, it’s considered that the task ran 10 times instead of 2 times.

Also, some internal tasks update the record itself, which results in invoking another task. For example, Send Email task updates a value of a field specified by its Sent property. As a result, tasks run four times when a record is created if you have two Send Email fields A and B. A and B will run when a record is created. A updates the record, which invokes B. B updates the record which invokes A again. In these cases, it’s considered the task runs four times.

An internal task of Aggregation type will run when you deliver a MiniApp. This is to update aggregated result records when you add a new aggregation field or update an existing aggregation field. Note that up to 1,000 result records will be updated even though all records will be aggregated at this timing.