> For the complete documentation index, see [llms.txt](https://fusionauth.io/docs/llms.txt)

# Search for Lambdas

API documentation for the FusionAuth Search for Lambdas API.

# Search for Lambdas

version

This API has been available since 1.45.0

This API is used to search for Lambdas and may be called using the `GET` or `POST` HTTP methods. Examples of each are provided below. The `POST` method is provided to allow for a richer request object without worrying about exceeding the maximum length of a URL. Calling this API with either the `GET` or `POST` HTTP method will provide the same search results given the same query parameters.

## Request

[!Global API Key Authentication](https://fusionauth.io/docs/apis/authentication.md#global-api-key-authentication)

Search for Lambdas

GET/api/lambda/search?body={body}&name={name}&type={type}

### Request Parameters

`body`Stringoptional

The case-insensitive string to search for in the Lambda function body. This can contain wildcards using the asterisk character (`*`). If no wildcards are present, the search criteria will be interpreted as `*value*`.

`name`Stringoptional

The case-insensitive string to search for in the Lambda name. This can contain wildcards using the asterisk character (`*`). If no wildcards are present, the search criteria will be interpreted as `*value*`.

`numberOfResults`IntegeroptionalDefaults to 25

The number of results to return from the search.

`orderBy`StringoptionalDefaults to name ASC

The database field to order the search results as well as an order direction.

The possible values are:

*   `id` - the unique Id of the Lambda
*   `insertInstant` - the [instant](https://fusionauth.io/docs/reference/data-types.md#instants) when the Lambda was created
*   `name` - the Lambda name
*   `engineType` - the JavaScript execution engine for the Lambda
    *   `GraalJS`
    *   `Nashorn` Deprecated since 1.35.0, Removed in 1.49.0

The order direction is optional. Possible values of the order direction are `ASC` or `DESC`. If omitted, the default sort order is `ASC`.

For example, to order the results by the insert instant in a descending order, use `insertInstant DESC`.

`startRow`IntegeroptionalDefaults to 0

The offset into the total results. In order to paginate the results, increment this value by the **numberOfResults** for subsequent requests.

For example, if the total search results are greater than the page size designated by **numberOfResults**, set this value to `25` to retrieve results `26-50`, assuming the default page size.

`type`String

The lambda type. The possible values are:

*   `AppleReconcile`Available since 1.17.0
*   `ClientCredentialsJWTPopulate`Available since 1.28.0
*   `EpicGamesReconcile`Available since 1.28.0
*   `ExternalJWTReconcile`Available since 1.17.0
*   `FacebookReconcile`Available since 1.17.0
*   `GoogleReconcile`Available since 1.17.0
*   `HYPRReconcile`Available since 1.17.0
*   `JWTPopulate`
*   `LDAPConnectorReconcile`Available since 1.18.0
*   `LinkedInReconcile`Available since 1.23.0
*   `LoginValidation`Available since 1.53.0
*   `MFARequirement`Available since 1.62.0
*   `NintendoReconcile`Available since 1.36.0
*   `OpenIDReconcile`
*   `SAMLv2Populate`
*   `SAMLv2Reconcile`
*   `SCIMGroupRequestConverter`Available since 1.36.0
*   `SCIMGroupResponseConverter`Available since 1.36.0
*   `SCIMUserRequestConverter`Available since 1.36.0
*   `SCIMUserResponseConverter`Available since 1.36.0
*   `SelfServiceRegistrationValidation`Available since 1.43.0
*   `SonyPSNReconcile`Available since 1.28.0
*   `SteamReconcile`Available since 1.28.0
*   `TwitchReconcile`Available since 1.28.0
*   `TwitterReconcile`Available since 1.17.0
*   `UserInfoPopulate`Available since 1.50.0
*   `XboxReconcile`Available since 1.28.0

[!Global API Key Authentication](https://fusionauth.io/docs/apis/authentication.md#global-api-key-authentication)

Search for Lambdas

POST/api/lambda/search

OpenAPI Spec

When calling the API using a `POST` request you will send the search criteria in a JSON request body.

### Request Body

`search.body`Stringoptional

The case-insensitive string to search for in the Lambda function body. This can contain wildcards using the asterisk character (`*`). If no wildcards are present, the search criteria will be interpreted as `*value*`.

`search.name`Stringoptional

The case-insensitive string to search for in the Lambda name. This can contain wildcards using the asterisk character (`*`). If no wildcards are present, the search criteria will be interpreted as `*value*`.

`search.numberOfResults`IntegeroptionalDefaults to 25

The number of results to return from the search.

`search.orderBy`StringoptionalDefaults to name ASC

The database field to order the search results as well as an order direction.

The possible values are:

*   `id` - the unique Id of the Lambda
*   `insertInstant` - the [instant](https://fusionauth.io/docs/reference/data-types.md#instants) when the Lambda was created
*   `name` - the Lambda name
*   `engineType` - the JavaScript execution engine for the Lambda
    *   `GraalJS`
    *   `Nashorn` Deprecated since 1.35.0, Removed in 1.49.0

The order direction is optional. Possible values of the order direction are `ASC` or `DESC`. If omitted, the default sort order is `ASC`.

For example, to order the results by the insert instant in a descending order, use `insertInstant DESC`.

`search.startRow`IntegeroptionalDefaults to 0

The offset into the total results. In order to paginate the results, increment this value by the **numberOfResults** for subsequent requests.

For example, if the total search results are greater than the page size designated by **numberOfResults**, set this value to `25` to retrieve results `26-50`, assuming the default page size.

`search.type`String

The lambda type. The possible values are:

*   `AppleReconcile`Available since 1.17.0
*   `ClientCredentialsJWTPopulate`Available since 1.28.0
*   `EpicGamesReconcile`Available since 1.28.0
*   `ExternalJWTReconcile`Available since 1.17.0
*   `FacebookReconcile`Available since 1.17.0
*   `GoogleReconcile`Available since 1.17.0
*   `HYPRReconcile`Available since 1.17.0
*   `JWTPopulate`
*   `LDAPConnectorReconcile`Available since 1.18.0
*   `LinkedInReconcile`Available since 1.23.0
*   `LoginValidation`Available since 1.53.0
*   `MFARequirement`Available since 1.62.0
*   `NintendoReconcile`Available since 1.36.0
*   `OpenIDReconcile`
*   `SAMLv2Populate`
*   `SAMLv2Reconcile`
*   `SCIMGroupRequestConverter`Available since 1.36.0
*   `SCIMGroupResponseConverter`Available since 1.36.0
*   `SCIMUserRequestConverter`Available since 1.36.0
*   `SCIMUserResponseConverter`Available since 1.36.0
*   `SelfServiceRegistrationValidation`Available since 1.43.0
*   `SonyPSNReconcile`Available since 1.28.0
*   `SteamReconcile`Available since 1.28.0
*   `TwitchReconcile`Available since 1.28.0
*   `TwitterReconcile`Available since 1.17.0
*   `UserInfoPopulate`Available since 1.50.0
*   `XboxReconcile`Available since 1.28.0

*Example JSON Request*

```json
{
  "search": {
    "name": "SAML",
    "body": "roles",
    "type": "SAMLv2Reconcile",
    "numberOfResults": 25,
    "orderBy": "insertInstant",
    "startRow": 0
  }
}
```

## Response

The response for this API contains the Lambdas matching the search criteria in paginated format.

*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](https://fusionauth.io/docs/apis/errors.md) 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](https://fusionauth.io/docs/apis/authentication.md). |
| 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

`lambdas`Array

The list of Lambda objects.

`lambdas[x].body`String

The lambda function body, a JavaScript function.

`lambdas[x].debug`Boolean

Whether or not debug event logging is enabled for this Lambda.

`lambdas[x].enabled`BooleanDEPRECATED

This value is not used, and may be removed in a future version.

`lambdas[x].engineType`String

The JavaScript execution engine for the lambda. The possible values are:

*   `GraalJS`
*   `Nashorn` Deprecated since 1.35.0, Removed in 1.49.0

`lambdas[x].id`UUID

The Id of the Lambda.

`lambdas[x].insertInstant`Long

The [instant](https://fusionauth.io/docs/reference/data-types.md#instants) that the lambda created.

`lambdas[x].lastUpdateInstant`Long

The [instant](https://fusionauth.io/docs/reference/data-types.md#instants) that the lambda was last updated.

`lambdas[x].name`String

The name of the lambda.

`lambdas[x].type`String

The lambda type. The possible values are:

*   `AppleReconcile`
*   `ClientCredentialsJWTPopulate`
*   `EpicGamesReconcile`
*   `ExternalJWTReconcile`
*   `FacebookReconcile`
*   `GoogleReconcile`
*   `HYPRReconcile`
*   `JWTPopulate`
*   `LDAPConnectorReconcile`
*   `LinkedInReconcile`
*   `LoginValidation`
*   `MFARequirement`
*   `NintendoReconcile`
*   `OpenIDReconcile`
*   `SAMLv2Populate`
*   `SAMLv2Reconcile`
*   `SCIMGroupRequestConverter`
*   `SCIMGroupResponseConverter`
*   `SCIMUserRequestConverter`
*   `SCIMUserResponseConverter`
*   `SelfServiceRegistrationValidation`
*   `SonyPSNReconcile`
*   `SteamReconcile`
*   `TwitchReconcile`
*   `TwitterReconcile`
*   `UserInfoPopulate`
*   `XboxReconcile`

`total`Integer

The total number of Lambdas matching the search criteria. Use this value along with the **numberOfResults** and **startRow** in the Search request to perform pagination.

*Example Response JSON for Lambda Search*

```json
{
  "lambdas": [
    {
      "id": "7e66bac3-fa41-47fb-b8fd-12b35b5e1807",
      "body": "function reconcile(user, registration, samlResponse) { registration.roles = samlResponse.assertion.attributes['roles'] || [];}",
      "name": "SAML Reconcile",
      "debug": false,
      "enabled": true,
      "engineType": "GraalJS",
      "insertInstant": 1572469040579,
      "lastUpdateInstant": 1595361143101,
      "type": "SAMLv2Reconcile"
    }
  ],
  "total": 1
}
```