Scenarios allow you to create and run automation tasks. A scenario consists of a series of modules that indicate how data should be transferred and transformed between apps or services. The following endpoints allow you to create, manage and execute scenarios and also inspect and manage scenario inputs.
Retrieves all available properties of a scenario with a given ID. The returned details do not include a scenario blueprint. If you want to get a scenario blueprint, refer to the Get scenario blueprint endpoint.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
Successful response
Deletes a scenario with a given ID and returns the ID in the response.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
Scenario deleted successfully
Retrieves properties of a trigger included in a scenario with a given ID. A trigger is a module that is able to return bundles that were newly added or updated (depending on the settings) since the last run of the scenario. An example of a trigger is a hook.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
Successful response
Verifies whether the module data is set or not. This endpoint doesn't retrieve the module data.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
The unique ID of the scenario module. It is available in the scenario blueprint that can be retrieved from the Get scenario blueprint endpoint.
1
Successful response
Deactivates and stops the specified scenario if the scenario is running. The API call response contains the scenario ID and the scenario isActive
property set to false
.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
Successful response
Retrieves buildtime variables of a scenario with the given ID. Buildtime variables could be team or user defined, team defined ones are prefixed with a TAC_
and user defined variables are prefixed with a PAC_
. TAC_
s can be used within the scenario as per its input spec by the entire team, whereas PAC_
s can only be used within the scenario by the user who added them.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
Successful response
Deletes a buildtime variable with a given value for a scenario with a given ID and returns OK
in the response.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
The value of the buildtime variable
PAC_123455551
Buildtime variable deleted successfully
Retrieves a collection of all scenarios for a team or an organization with a given ID. Returned scenarios are sorted by proprietary setting in descending order.
The unique ID of the team whose scenarios will be retrieved. If this parameter is set, the organizationId
parameter must be skipped. For each request either teamId
or organizationId
must be defined.
1
The unique ID of the organization whose scenarios will be retrieved. If this parameter is set, the teamId
parameter must be skipped. For each request either teamId
or organizationId
must be defined.
11
The array of IDs of scenarios to retrieve.
[1,2,3]
The unique ID of the folder containing scenarios you want to retrieve.
1
Set this parameter to true
to get only active scenarios in the response.
true
This parameter is deprecated. Use the isActive
parameter to filter for active scenarios instead.
true
If set to true
, the response contains only scenario concepts.
true
The number of entities you want to skip before getting entities you want.
The maximum number of entities you want to get in the response.
The value that will be used to sort returned entities by.
The sorting order. It accepts the ascending and descending direction specifiers.
Retrieved scenarios
Creates a new scenario with data passed in the request body. In the response, it returns all details of the created scenario including its blueprint.
If set to true
this parameter confirms the scenario creation when the scenario contains the app that is used in the organization for the first time and needs installation. If the parameter is missing or it is set to false
an error code is returned and the scenario is not created.
true
The scenario blueprint. To save resources, the blueprint is sent as a string, not as an object.
The unique ID of the team in which the scenario will be created.
The scenario scheduling details. To save resources, the scheduling details are sent as a string, not as an object.
The unique ID of the folder in which you want to store created scenario.
Defines if the scenario is created based on a template. The value is the template ID.
Scenario created successfully
Updates a scenario with a given ID by passing new values in the request body. Any property that is not provided will be left unchanged. In the response, it returns all details of the updated scenario including properties that were not changed.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
If set to true
this parameter confirms the scenario update when the scenario contains the app that is used in the organization for the first time and needs installation. If the parameter is missing or it is set to false
an error code is returned and the scenario is not updated.
true
The scenario blueprint. To save resources, the blueprint is sent as a string, not as an object.
The scenario scheduling details. To save resources, the scheduling details are sent as a string, not as an object.
The unique ID of the folder in which you want to store created scenario.
A new name of the scenario. The name does not need to be unique.
Scenario was updated successfully
Clones the specified scenario. The response contains all information about the scenario clone.
You have to know which app integrations the scenario contains. You can get a list of apps used in the scenario with the API call GET /scenarios/{scenarioId}
in the usedPackages
array.
If you are cloning the scenario to a different team and the scenario contains an app module, webhook or data store, you have to either:
map the entity ID to a different entity with the correct properties. For example, you can map an app module connection to a different connection of the same app with the same scopes, or
use the notAnalyze
query parameter to turn off the scenario clone blueprint analysis.
When you turn off the scenario blueprint analysis you can map the entity ID to the null
value, which omits the entity settings.
The scenario blueprint analysis makes sure that the scenario clone will work without further changes. If you turn off the scenario blueprint analysis, check the configuration of all entities in the scenario clone.
If you are cloning the scenario to a different team and the scenario contains a custom app or a custom function, which is not available for the users in the team, use the confirmed
query parameter to confirm cloning of the scenario. Otherwise, you get an error listing the custom function that you have to create in the team.
Refer to the request body parameters description and examples for more information.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
The ID of the organization.
11
If the scenario contains a custom app or a custom function, that is not available in the team, you have to set the confirmed
parameter to true
to clone the scenario. Otherwise you get an error and the scenario is not cloned.
{"value":true}
If you are cloning a scenario to a different team, you have to map the scenario entities (connections, data stores, webhooks, ...) from the original to the clone. If you cannot map all of the scenario entities, set the notAnalyze
parameter to true
to suppress the scenario blueprint analysis.
{"value":true}
The name for the scenario clone. The maximum length of the name is 120 characters.
The ID of the team to which you want to clone the scenario.
Set to true
to clone also states of the scenario modules, for example last scenario trigger execution. Setting to false
resets the state information of the scenario modules in the scenario clone.
Successful response
Runs the specified scenario. The scenario has to be active. If your scenario has required scenario inputs you have to provide the scenario inputs in the request body.
The ID of the scenario. Get the ID of the scenario with the API call GET /scenarios
.
111
If your scenario has inputs specify the input parameters and values in the data
object.
If set to true
the Make API waits until the scenario finishes. The response contains the scenario status
and executionId
. If the scenario execution takes longer than 40 seconds, the API call returns the time out error, but the scenario is still executed.
If set to false
the API call returns immediately without waiting. The response contains only the executionId
.
false
Successful response
Adds new buildtime team or user defined variable/s. Buildtime variables should be prefixed either with a TAC_
(for team defined variables) or with a PAC_
(for personal user defined variables), followed by the connection value. If a variable already exists, an error will be thrown. If a variable's name is not within scenario input specification, an error will be thrown. If the adding of new variables was successful the reponse would be OK
.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
Buildtime variables added successfully
Updates team or user defined buildtime variable/s. The endpoint updates and overwrites exsiting records with the newly provided values, meaning any existing buildtime variable which is not provided through the payload will be overwritten. Buildtime variables should be prefixed either with a TAC_
(for team defined variables) or with a PAC_
(for personal user defined variables), followed by the connection value. If a variable doesn't exist, it will be added provided that its name is within the scenario input specification. If the updating of variables was successful the reponse would be OK
.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
Buildtime variables updated successfully
Activates the specified scenario. Also runs the scenario if the scenario is scheduled to run at regular intervals. Read more about .
The API call response contains the scenario ID and the scenario isActive
property set to true
.
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
Successful response
Retrieves scenario inputs specification of the specified scenario. Check out the in the Make help center.
The scenario inputs feature requires your account to have the pricing plan Pro or higher.
The ID of the scenario. Get the list of scenarios with the API call GET /scenarios
.
111
Successful response
Retrieves a list of daily operations and data transfer usage for a specified scenario over the past 30 days.
By default, the endpoint uses the timezone of the user making the API call to define the start and end of each day in the 30-day timeframe.
To use the organization's timezone instead, set the organizationTimezone
parameter to true
. This ensures that the daily aggregates align with the organization's operational hours. This is especially useful for scenarios where aggregated data needs to align with the organization's operational hours.
For instance, a remote data analyst in India working for a Czech company can set organizationTimezone=true
to ensure the usage data reflects the company's timezone, providing more relevant and accurate insights for organizational reporting and analysis.
For more information on timezones in Make, please refer to our .
The ID of the scenario. You can get the scenarioId
with the List scenarios API call.
112
When set to true
, the endpoint will calculate and return usage data based on the organization's timezone instead of the user's local timezone.
true
Successfully retrieved usage data
Updates specification of the scenario inputs. Check out the in the Make help center.
If you want to enable the scenario inputs you have to set the scenario scheduling to "On demand" first, otherwise you get error 422 (IM016). You can use the API call:
PATCH /scenarios/{scenarioId}?confirmed=true
with the request body:
{"scheduling": "{\"type\":\"on-demand\"}"}
You can disable inputs for the specified scenario by sending a payload with an empty input
array.
The response contains the updated scenario inputs specification.
The scenario inputs feature requires your account to have the pricing plan Pro or higher.
The ID of the scenario. Get the list of scenarios with the API call GET /scenarios
.
111
Successful response