Create a Lambda API
Use this API to create a Lambda.
Request#
OpenAPI Spec
OpenAPI Spec
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 since1.35.0, Removed in1.49.0
lambda.name String required The name of the lambda.
lambda.type String required The lambda type. The possible values are:
AppleReconcileAvailable since1.17.0ClientCredentialsJWTPopulateAvailable since1.28.0EpicGamesReconcileAvailable since1.28.0ExternalJWTReconcileAvailable since1.17.0FacebookReconcileAvailable since1.17.0GoogleReconcileAvailable since1.17.0HYPRReconcileAvailable since1.17.0JWTPopulateLDAPConnectorReconcileAvailable since1.18.0LinkedInReconcileAvailable since1.23.0LoginValidationAvailable since1.53.0MFARequirementAvailable since1.62.0NintendoReconcileAvailable since1.36.0OpenIDReconcileSAMLv2PopulateSAMLv2ReconcileSCIMGroupRequestConverterAvailable since1.36.0SCIMGroupResponseConverterAvailable since1.36.0SCIMUserRequestConverterAvailable since1.36.0SCIMUserResponseConverterAvailable since1.36.0SelfServiceRegistrationValidationAvailable since1.43.0SonyPSNReconcileAvailable since1.28.0SteamReconcileAvailable since1.28.0TwitchReconcileAvailable since1.28.0TwitterReconcileAvailable since1.17.0UserInfoPopulateAvailable since1.50.0XboxReconcileAvailable since1.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 since1.35.0, Removed in1.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"
}
}