# Flow definitions

The Flow definitions API lets you retrieve flow definitions (A/B/n tests and personalizations) for a specific page, configure their variants, and access detailed information about each variant.

 - [GET /api/v1/flows/by-page/{pageId}](https://api-docs.sitecore.com/sai/agent-api/flow-definitions/flows-list_flow_definitions_by_page.md): Retrieves all flow definitions (both A/B/n tests and personalizations) for a specific page, including the structure, variants, and configuration details.
 - [GET /api/v1/flows/{flowId}](https://api-docs.sitecore.com/sai/agent-api/flow-definitions/flows-get_flow_definition.md): Retrieves a specific flow definition (A/B/n test or personalization) on a page, including the structure, variants, and configuration details.
 - [POST /api/v1/flows/{flowId}/variants/reset](https://api-docs.sitecore.com/sai/agent-api/flow-definitions/flows-reset_component_variant.md): Removes any applied personalization or A/B/n test variant set up, such as copy, hide, or swap, from a component and restores it to its original state.
 - [POST /api/v1/flows/{flowId}/variants/{variantId}](https://api-docs.sitecore.com/sai/agent-api/flow-definitions/flows-setup_variant.md): Sets up a variant for a specific A/B/n test or personalization by copying, hiding, or swapping the original component.
 - [GET /api/v1/flows/{flowId}/variants/{variantId}](https://api-docs.sitecore.com/sai/agent-api/flow-definitions/flows-get_variant.md): Retrieves the details of a specific A/B/n test or personalization variant, including its datasource and components.
