> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usefini.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Test attribute

> Run the whole attribute with sample inputs.

Runs the full Data Step chain for one attribute against sample inputs and returns the resolved outputs. This mirrors the dashboard Run button.

## Headers

<ParamField header="Authorization" type="string" required>
  Bearer token containing your Fini workspace API key. Format: `Bearer fini_...` The key needs `write` scope.
</ParamField>

<ParamField header="Content-Type" type="string" required>
  `application/json`
</ParamField>

## Path parameters

<ParamField path="id" type="string" required>
  Attribute ID to run.
</ParamField>

## Body parameters

<ParamField body="inputParams" type="object">
  Optional sample inputs, keyed by input field name. These stand in for the runtime values the attribute would resolve at the start of a conversation.
</ParamField>

## Response

Returns an [`Action / Attribute test-run result`](/en/api-reference/actions-and-attributes#action-or-attribute-test-run-result) with per-step results and the final `extractedData`. For attributes, `attributeLlmPolicy` maps each output field to its `sendToLlm` (Visible to AI) flag.

## Errors

<AccordionGroup>
  <Accordion title="401 Unauthorized" icon="lock">
    The API key is missing, malformed, revoked, or invalid.
  </Accordion>

  <Accordion title="403 Forbidden" icon="shield-halved">
    The API key does not include the `write` scope required for this route.
  </Accordion>

  <Accordion title="404 Not Found" icon="ghost">
    No attribute with that ID exists in your workspace.
  </Accordion>
</AccordionGroup>
