# Autocomplete Offer Names
> Source: /api-reference/partner/fulfillments/autocomplete
> Typeahead suggestions for offer names
> Endpoint: GET /partner/fulfillments/autocomplete/offers

## Overview [#overview]

Returns offer name suggestions for a search prefix. Designed for typeahead inputs in fulfillment search UIs — call on each keystroke after the first character.

## Authentication [#authentication]

Requires a partner API key with the `partner:fulfillments:read` scope, sent as `X-API-Key`.

## Query Parameters [#query-parameters]

<ParamField query="q" type="string" required>
  Search prefix (minimum 1 character)
</ParamField>

<ParamField query="organizationId" type="string">
  External org ID for superadmin keys. Ignored for org-scoped keys.
</ParamField>

<ParamField query="limit" type="number" default="10">
  Max suggestions to return (1–20)
</ParamField>

## Response [#response]

<ResponseField name="suggestions" type="string[]" required>
  Array of matching offer name strings
</ResponseField>

<RequestExample>

```bash cURL
curl "https://api-prd.cf.journey.com/v1/partner/fulfillments/autocomplete/offers?q=spa&limit=5" \
  -H "X-API-Key: jny_xxxx"
```

```typescript TypeScript
const { suggestions } = await fetch(
  `https://api-prd.cf.journey.com/v1/partner/fulfillments/autocomplete/offers?q=${encodeURIComponent(query)}&limit=10`,
  { headers: { 'X-API-Key': apiKey } }
).then(r => r.json());
```

</RequestExample>

<ResponseExample>

```json 200 Response
{
  "suggestions": [
    "Spa Day Pass",
    "Spa Treatment (60 min)",
    "Spa & Pool Access"
  ]
}
```

</ResponseExample>
