# Get instant form (adsap_get_instant_form)

Reads one Meta Instant Form in full: its questions, intro, privacy policy, custom disclaimer, thank-you screen and tracking parameters, plus its status and lead count.

Canonical: https://adsap.ai/docs/tools/adsap_get_instant_form
Updated: 2026-09-19

**Platform:** Meta · **Read or write:** Read · **Plan:** All plans · **Consumes a task:** No · **Preview supported:** No

## What it does

Reads one Meta Instant Form in full: its questions, intro, privacy policy, custom disclaimer, thank-you screen and tracking parameters, plus its status and lead count. The form comes back in the same shape [`adsap_manage_instant_form`](/tools/adsap_manage_instant_form) takes, so it doubles as the starting point for a duplicate.

## When to use it

- Use it to check what a form asks before you put it in a lead ad.
- Use it before duplicating a form, to see which sections you want to change.
- It needs the form's `form_id`. To list a Page's forms, use [`adsap_list_meta_assets`](/tools/adsap_list_meta_assets) with `asset_type` `instant_forms`.
- It reads only. To create, duplicate or archive a form, use [`adsap_manage_instant_form`](/tools/adsap_manage_instant_form).

## Worked example

### You ask

"What does my Newsletter signup form ask for?"

### The assistant calls `adsap_get_instant_form`

```json
{
  "ad_account_id": "act_1234567890",
  "page_id": "100000000000001",
  "form_id": "200000000000001"
}
```

### Adsap returns

The field names are the ones Adsap returns. The values are examples.

```json
{
  "ok": true,
  "operation": "get",
  "form_id": "200000000000001",
  "page_id": "100000000000001",
  "status": "ACTIVE",
  "leads_count": 42,
  "created_time": "2026-09-19T12:00:28+0000",
  "form": {
    "name": "Newsletter signup",
    "form_type": "more_volume",
    "block_organic": false,
    "questions": [
      { "type": "FULL_NAME", "key": "full_name" },
      { "type": "EMAIL", "key": "email" },
      {
        "type": "CUSTOM",
        "label": "Which product are you interested in?",
        "key": "which_product_are_you_interested_in",
        "options": ["Signs", "Lamps"]
      }
    ],
    "privacy_policy": { "url": "https://example.com/privacy", "link_text": "" },
    "thank_you": { "title": "Thanks, you are on the list.", "button_type": "NONE" }
  },
  "warnings": []
}
```

### How to read it

`form` holds the content, `status` says whether the form can still be used in new ads (`ACTIVE`) or not (`ARCHIVED`), and `leads_count` is Meta's running total. A `CUSTOM` question with `options` is multiple choice; without them it is a short answer.

`warnings` names anything the form uses that Adsap cannot recreate, such as conditional logic built in Meta. The form still works in ads; a duplicate made through Adsap would not carry those parts over.

## Parameters

Descriptions are shortened from the tool schema. Your assistant sees the full text.

| Name | Type | Required | Description |
|---|---|---|---|
| `ad_account_id` | string | Yes | Meta ad account (act_...) the Page is connected to. |
| `page_id` | string | Yes | Numeric id of the Facebook Page that owns the form. |
| `form_id` | string | Yes | Numeric id of the form, from adsap_list_meta_assets (asset_type instant_forms). |

## Example prompts

- "Show me the questions on my Summer contest form."
- "Which of my forms on the brand Page has a custom disclaimer?"

## Notes

Reading a form uses no task. A form that does not belong to the `page_id` you passed comes back as `FORM_NOT_ON_PAGE`.

## Related tools

- [`adsap_manage_instant_form`](/tools/adsap_manage_instant_form): Create, duplicate, archive or reactivate a Meta Instant Form: the lead form people fill in without leaving Facebook or Instagram.

## Guide

Read [AI Copilot usage](/guides/ai-copilot/usage) for the workflow around this tool, and the [Tool reference](/tools) for every tool.
