# IFRAME Embed Events (/docs/learn/whats-new/iframe-embed-events)


**2026-10-28** | Embeds

If you show Verdocs in an [IFRAME embed](/docs/guides/tutorials/iframe-embeds), your page can now follow along with what happens inside it. Each embed posts a small message to its parent window as things happen, such as a signer agreeing to the disclosures, submitting, or declining, so you can close a dialog or move your user to the next step without polling the API.

```js
window.addEventListener('message', (e) => {
  if (e.origin !== 'https://app.verdocs.com' || e.data?.source !== 'verdocs') {
    return;
  }

  if (e.data.embed === 'sign' && e.data.event === 'submitted') {
    // e.data.envelope_id and e.data.role_name identify who finished
  }
});
```

Every embed reports events for its own work: Sign reports `loaded`, `agreed`, `later`, `printed`, `submitted`, and `declined`, Build and Send report `sent` with the new envelope's id, Auth reports `authenticated`, and all of them report `error` when a request fails. Messages include ids and event names only, so use the ids with the API or [webhooks](/docs/reference/Rest-API/webhooks) when you need more detail.

Embeds also post a `resize` message with the height their content needs, so you can size the IFRAME to fit instead of picking a fixed height and scrolling inside it.

The full list of events and the fields each one includes is in the [Events section](/docs/guides/tutorials/iframe-embeds#events) of the IFRAME embeds guide.

## Send embed fix [#send-embed-fix]

The Send embed at `/embeds/send/TEMPLATE_ID` now shows the send form. It previously showed the template preview, the same as `/embeds/preview/TEMPLATE_ID`.
