Create a Lambda
This API is used to create a Lambda.
OpenAPI Spec
OpenAPI Spec
Request#
Request Parameters#
lambdaId UUID optional Defaults to secure random UUID Immutable The Id to use for the new Lambda. If not specified a secure random UUID will be generated.
Request Body#
lambda.body String required The lambda function body, a JavaScript function.
lambda.debug Boolean optional Defaults to false Whether or not debug event logging is enabled for this Lambda.
lambda.enabled Boolean optional Defaults to true DEPRECATED This value is not used, and may be removed in a future version.
lambda.engineType String required Defaults to GraalJS Available since 1.35.0The JavaScript execution engine for the lambda. The possible values are:
GraalJSNashornDeprecated since 1.35.0, Removed in 1.49.0
lambda.name String required The name of the lambda.
lambda.type String required The lambda type. The possible values are:
AppleReconcileAvailable since 1.17.0ClientCredentialsJWTPopulateAvailable since 1.28.0EpicGamesReconcileAvailable since 1.28.0ExternalJWTReconcileAvailable since 1.17.0FacebookReconcileAvailable since 1.17.0GoogleReconcileAvailable since 1.17.0HYPRReconcileAvailable since 1.17.0JWTPopulateLDAPConnectorReconcileAvailable since 1.18.0LinkedInReconcileAvailable since 1.23.0LoginValidationAvailable since 1.53.0MFARequirementAvailable since 1.62.0NintendoReconcileAvailable since 1.36.0OpenIDReconcileSAMLv2PopulateSAMLv2ReconcileSCIMGroupRequestConverterAvailable since 1.36.0SCIMGroupResponseConverterAvailable since 1.36.0SCIMUserRequestConverterAvailable since 1.36.0SCIMUserResponseConverterAvailable since 1.36.0SelfServiceRegistrationValidationAvailable since 1.43.0SonyPSNReconcileAvailable since 1.28.0SteamReconcileAvailable since 1.28.0TwitchReconcileAvailable since 1.28.0TwitterReconcileAvailable since 1.17.0UserInfoPopulateAvailable since 1.50.0XboxReconcileAvailable since 1.28.0
Example Request JSON
{
"lambda": {
"body": "function reconcile(user, registration, samlResponse) { registration.roles = samlResponse.assertion.attributes['roles'] || [];}",
"debug": false,
"engineType": "GraalJS",
"name": "Name",
"type": "SAMLv2Reconcile"
}
}
Response#
The response for this API contains the Lambda that was created.
Response Codes| Code | Description |
|---|---|
| 200 | The request was successful. The response will contain a JSON body. |
| 400 | The request was invalid and/or malformed. The response will contain an Errors JSON Object with the specific errors. This status will also be returned if a paid FusionAuth license is required and is not present. |
| 401 | You did not supply a valid Authorization header. The header was omitted or your API key was not valid. The response will be empty. See Authentication. |
| 500 | There was an internal error. A stack trace is provided and logged in the FusionAuth log files. The response will be empty. |
Response Body#
lambda.body String The lambda function body, a JavaScript function.
lambda.debug Boolean Whether or not debug event logging is enabled for this Lambda.
lambda.enabled Boolean DEPRECATED This value is not used, and may be removed in a future version.
lambda.engineType String The JavaScript execution engine for the lambda. The possible values are:
GraalJSNashornDeprecated since 1.35.0, Removed in 1.49.0
lambda.id UUID The Id of the Lambda.
lambda.insertInstant Long The instant that the lambda created.
lambda.lastUpdateInstant Long The instant that the lambda was last updated.
lambda.name String The name of the lambda.
lambda.type String The lambda type. The possible values are:
AppleReconcileClientCredentialsJWTPopulateEpicGamesReconcileExternalJWTReconcileFacebookReconcileGoogleReconcileHYPRReconcileJWTPopulateLDAPConnectorReconcileLinkedInReconcileLoginValidationMFARequirementNintendoReconcileOpenIDReconcileSAMLv2PopulateSAMLv2ReconcileSCIMGroupRequestConverterSCIMGroupResponseConverterSCIMUserRequestConverterSCIMUserResponseConverterSelfServiceRegistrationValidationSonyPSNReconcileSteamReconcileTwitchReconcileTwitterReconcileUserInfoPopulateXboxReconcile
Example Response JSON
{
"lambda": {
"id": "7e66bac3-fa41-47fb-b8fd-12b35b5e1807",
"body": "function reconcile(user, registration, samlResponse) { registration.roles = samlResponse.assertion.attributes['roles'] || [];}",
"name": "Name",
"debug": false,
"enabled": true,
"engineType": "GraalJS",
"insertInstant": 1572469040579,
"lastUpdateInstant": 1595361143101,
"type": "SAMLv2Reconcile"
}
}