Actions Limitations
The following limitations exist when using Actions:
Actions
Each Action should not exceed 100 kB. The larger the size, the more latency is introduced, which may have an impact on the performance of your system. This size limit does not include any
npm
modules that may be referenced as part of anyrequire
statements.
Account Linking (setPrimaryUser)
primary_user_id
is limited to 128 characterssetPrimaryUser
can be called once per transactionAny userMetadata set in the same Action as
setPrimaryUser
is discarded and will be lost. Subsequent Actions within the same transaction will retain userMetadata on the new primary user.setPrimaryUser
can not be used in the same transaction where a Rule setscontext.primaryUser.
Cached data
Cached items persist for a maximum of 24 hours.
A maximum of 20 entries can be cached per Trigger.
Cache keys have a maximum size of 64 bytes and values have a maximum size of 4kB.
The cumulative size of cached keys and their values must not exceed 8kB.
The cache should be available for all Actions in the same trigger for a single execution reliably, however for subsequent executions (such as a different flow, another user login, or a user returning from a redirect action) it is not guaranteed.
Actions that perform an Execution that yields back (such as a redirect) may result in subsequent actions being scheduled on a separate instance with a different cache state. Cached data could be inconsistent from one Action to the next even if it is the same execution.
Dependencies
Each Action may have a maximum of 10
npm
modules.
Entity limits
Each tenant may have a maximum of 100 Actions (including both deployed and undeployed). When an Action is deleted, it no longer counts toward the limit.
Each Action may have a maximum of 50 associated versions (both draft and active). Once the limit is reached, every additional version that is added will result in the oldest version being deleted.
Each trigger may have a maximum of 20 active bound Actions.
Executions
Each execution of a trigger must complete in 20 seconds or less or the processing will end in an error. Limiting HTTP requests is the best way to keep within this time limit.
Each execution of a trigger must complete in 20 seconds or less or the processing will end in an error. Limiting long-running processes, like outbound HTTP requests without a timeout, is necessary to keep within this time limit. An Action that redirects users to an external page has a separate timeout before the redirect and after.
A new
event.request
object is issued anytime an Action trigger is suspended and then subsequently resumed (for example, due to a redirect or MFA challenge).
Logs
A maximum of 256 characters may be persistently stored for
console.log()
outputs for each Action.Execution logs are retained for 10 days.
Programming languages
We do not support Typescript in actions. Source files must be written in JavaScript before being deployed.
Secrets
Each Action may have a maximum of 30 secrets.
Each secret key may have a maximum length of 128 characters.
Each secret value may have a maximum length of 4096 characters.
SAML attributes
A maximum of 100 SAML attributes can be changed or added by Actions.
SAML attribute names have a maximum size of 1kB.
SAML values have a maximum size of 2kB.
The total SAML assertions have a maximum size of 10kB.
SAML configuration
audience
has a maximum size of 2kBrecipient
has a maximum size of 2kBdestination
has a maximum size of 2kBnameIdentifierFormat
has a maximum size of 0.5kBnameIdentifierProbes
has a maximum of 10 probes with a maximum size of 0.5kB eachauthnContextClassRef
has a maximum size of 0.5kBsigningCert
has a maximum size of 4kBencryptionCert
has a maximum size of 4kBencryptionPublicKey
has a maximum size of 4kBcert
has a maximum size of 4kBkey
has a maximum size of 4kB
Service requests
Calls made to the Auth0 Management API and User Metadata updates are rate limited.
HTTP calls to external services originate from these IP addresses.
Transaction metadata
Is available only on post-login Actions.
Is not persisted beyond the completion of an authentication trigger.
Cannot be accessed outside of the Actions within the same transaction. (*)
Keys are limited to 64 characters.
Values are limited to 8 KB.
Values only support
string
,number
, andboolean
types.Has a maximum total metadata size of 16 KB within the same transaction.
Will not accept numbers that fail a safety check as valid values. Unsafe integer values should be safely serialized by the Developer. To learn more, read about safe integers.
Upstream tokens from external IdPs
Retrieving External IdP tokens from the Identities array
User metadata and app metadata
Each session may have a maximum of 32kB each of user metadata persistence and 32kB of app metadata persistence.