> For the complete documentation index, see [llms.txt](https://docs.gradient.works/kb/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gradient.works/kb/automation-builder-kit-abk/actions/advanced/gwfxbuildrecordmapfromfieldaction.md).

# Build Record Map from Field

Takes a collection of records as `input` and the name of a field and builds a [RecordMap](/kb/automation-builder-kit-abk/models/recordmap.md) where the keys are the values of the specified `keyField`. You can then use [Get Record from Record Map](/kb/automation-builder-kit-abk/actions/advanced/gwfxrecordmapgetaction.md) to get a record based on a key.

To use the [RecordMap](/kb/automation-builder-kit-abk/models/recordmap.md) later in your Flow, make sure to select `Store Output Variables` and assign it to a variable resource with a data type of `Apex-Defined` and an apex class of `GradientWorks__RecordMap`. When creating the resource, **do not** check "Allow multiple values (collection)".

For example, if you specify `input` as a collection of Leads and `keyField` as `Id`, this will generate a [RecordMap](/kb/automation-builder-kit-abk/models/recordmap.md) you can use to look up a Lead based on its `Id`.

## Inputs

| Name     | Required | Type           | Description                                                                                                                                       |
| -------- | -------- | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| input    | Yes      | List\<SObject> | A collection of input records to use for creating a [RecordMap](/kb/automation-builder-kit-abk/models/recordmap.md)                               |
| keyField | Yes      | String         | The field on each record containing the value to use for that record's key in the [RecordMap](/kb/automation-builder-kit-abk/models/recordmap.md) |

## Outputs

| Name      | Type                                                            | Description                                                                                                              |
| --------- | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| recordMap | [RecordMap](/kb/automation-builder-kit-abk/models/recordmap.md) | Contains records from the `input` collection that can be looked up using key values obtained from each item's `keyField` |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.gradient.works/kb/automation-builder-kit-abk/actions/advanced/gwfxbuildrecordmapfromfieldaction.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
