---
title: "Discover Form"
method: POST
path: "/v2/ap-portals/{portal_id}/discover-form"
tags: ["ap-portals"]
---

# Discover Form

`POST /v2/ap-portals/{portal_id}/discover-form`

## Request

- Base URL: `https://api.stuut.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.stuut.ai/v2/ap-portals/{portal_id}/discover-form`
- Auth: HTTP bearer

Discover invoice form

Inspect this buyer's form and propose configuration using a sample invoice.
Runs asynchronously without approving the profile or submitting the invoice.

## Path parameters

- `portal_id` string, required

## Request body

- DiscoverFormRequest
  - `invoice_id` string, required: Internal invoice ID used to inspect this buyer's form.
  - `create_review_task` boolean: Create a pre-submission review task after the validation dry run succeeds.

## Response `202`

Successful Response

- TriggerSubmitResponse: Acknowledges an enqueued dry-run submit; the work runs asynchronously.
  - `work_id` string, required
  - `status` 'pending' | 'running' | 'failed' | 'done', required: Status of a ap portal work queue entry
  - `purpose` 'invoice_submission' | 'form_profile_discovery', required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/stuut/apis/stuut-api.md) - [All operations](https://skmtc.dev/stuut/apis/stuut-api/llms.txt) - [OpenAPI document](https://skmtc.dev/stuut/apis/stuut-api/revisions/ff0ad16a55ff?raw)
