> ## 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.
# List intent rules
> List Intent Rules by version status.
Returns intent rules in the workspace as summary objects.
## Headers
<ParamField header="Authorization" type="string" required>
Bearer token containing your Fini workspace API key. Format: `Bearer fini_...` The key needs `read` scope.
</ParamField>
## Query parameters
<ParamField query="versionStatus" type="string">
Version state to return: `DRAFT`, `PUBLISHED`, or `ARCHIVED`. Defaults to `PUBLISHED`.
</ParamField>
<ParamField query="includeVersions" type="boolean">
Set to `true` to include `botIds`, current-published metadata, latest-draft metadata, `draftCount`, and `lastPublishedAt`. Defaults to `false`.
</ParamField>
## Response
Returns an array of Intent Rule summary objects without `flowConfig`.
<RequestExample>
~~~bash cURL theme={null}
curl --request GET \
--url 'https://api-prod.usefini.com/v2/hc-rules/public?versionStatus=PUBLISHED&includeVersions=true' \
--header 'Authorization: Bearer fini_your_api_key'
~~~
~~~javascript Node.js theme={null}
const response = await fetch('https://api-prod.usefini.com/v2/hc-rules/public?versionStatus=PUBLISHED&includeVersions=true', {
method: 'GET',
headers: {
Authorization: 'Bearer fini_your_api_key'
}
});
const data = await response.json();
~~~
~~~python Python theme={null}
import requests
response = requests.get(
"https://api-prod.usefini.com/v2/hc-rules/public?versionStatus=PUBLISHED&includeVersions=true",
headers={"Authorization": "Bearer fini_your_api_key"},
)
data = response.json()
~~~
</RequestExample>
<ResponseExample>
~~~json 200 OK theme={null}
[
{
"id": "b8b8d87b-2f0c-47f6-8a8a-546da73e0820",
"name": "Refund escalation",
"description": "Route refund requests to the right workflow.",
"status": "PUBLISHED",
"source": null,
"triggerType": null,
"botIds": [
"2a1cf0f0-f35d-46ad-8e61-a15c86b2b312"
],
"flowConfig": {
"type": "reply",
"message": "Escalate refund requests with order context."
},
"version": 3,
"versionId": "v3",
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
]
~~~
</ResponseExample>
### Fields added by `includeVersions=true`
<ResponseField name="currentPublishedVersion" type="RuleVersion | null">
The active published version, or `null` when the rule has not been published. The version summary omits `flowConfig`.
</ResponseField>
<ResponseField name="latestDraftVersion" type="RuleVersion | null">
The most recent draft version, or `null` when the rule has no draft. The version summary omits `flowConfig`.
</ResponseField>
<ResponseField name="draftCount" type="number">
Number of draft revisions represented by the latest draft relative to the current published version.
</ResponseField>
<ResponseField name="lastPublishedAt" type="string | null">
ISO 8601 publication timestamp for the current published version. If its publication timestamp is unavailable, the API uses that version's last-update timestamp. Returns `null` when the rule has not been published.
</ResponseField>
<Note>
With `includeVersions=false`, intent-rule summaries omit `botIds`. Use `includeVersions=true` for a lifecycle overview, or [Get intent rule](/en/api-reference/get-intent-rule) for the full tree.
</Note>
## Errors
<AccordionGroup>
<Accordion title="400 Bad Request" icon="circle-exclamation">
A query parameter is malformed or uses an unsupported enum value.
</Accordion>
<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 `read` scope required for this route.
</Accordion>
<Accordion title="500 Internal Server Error" icon="triangle-exclamation">
Fini failed while loading intent rules.
</Accordion>
</AccordionGroup>
## Related topics
- [List intent-rule versions](/en/api-reference/list-rule-versions.md)
- [API overview](/en/api-reference/overview.md)
- [Intent Rules](/en/automations/rulebook.md)
This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.
Intent Rules

