Skip to main content

Embeddable views

What this page is — tokens that let a partner's website frame one Papers view — generate a document, check its status, review it, or sign it — without an Orbit account.

What it is for — so an NDA request on your own site, a reseller's quote form or a counterparty's review can happen where that person already is, and land in your normal lifecycle.

The problem it solves — people who start a document request on another website are sent elsewhere to finish it, and many do not.

Route: /org/settings?tab=papers → Embeddable views · Permission: the organisation Papers settings permission.


1. What it is​

A token unlocks exactly one view on named partner origins:

ViewThe partner canExtra credential needed
Generate documentPick one of your active types, fill its fields, submit a draft—
Check statusLook up a submission by reference and email—
Review & respondRead, comment, suggest redlines, return or acceptThe counterparty's emailed portal link
SignComplete the signing ceremonyThe signer's emailed signing link

Why review and sign need a second credential. The embed token sits in the partner page's HTML, so everyone visiting that page holds it. It identifies a site, never a person — so it can say "this site may frame our views", never "the bearer may read this contract". The personal link is passed alongside:

<iframe src="https://api.example-orbit.com/embed/papers/review?token=EMBED_TOKEN&portal=PORTAL_TOKEN"
style="width:100%;min-height:720px;border:0;" title="Review document"></iframe>

2. Why you would use it​

  • Requests arrive on your terms, from their site. A partner's quote form creates a real draft in your lifecycle.
  • No licences for outsiders. Partners and counterparties need no Orbit login.
  • Leaks are containable. One view per token, named origins, expiry, submission caps, instant revoke.
  • Every request is auditable. History shows what each token did and where each request came from.

3. Step by step​

  1. Embed token → choose the View.
  2. Name it after the partner and page.
  3. List Partner origins.
  4. Optionally a Maximum submissions and an expiry.
  5. Pick Scope — organisation-level types only, or a project.
  6. Copy the snippet — the token is shown once.
  7. Test in the Embed Sandbox (API Lab), then hand the snippet over.


4. Field reference​

FieldRulesRefusal
ViewOne of the fourview must be one of: generate, status, review, sign
NameThe only way to recognise the token later—
Partner originsRequired. partner.example means https://partner.example; *.partner.example allows every subdomain; a root domain does not cover its subdomainsframe_ancestors is required — the partner origins allowed to embed this view · frame_ancestors entries must be an origin or host…
Maximum submissionsBlank = unlimited; only document creation counts; reaching it marks the token exhausted—
Expires inUp to 180 daysexpires_days must be at most 180
ScopeOrganisation types only, or a project's types plus organisation types — documents are created in that project—

What partners may see when something is wrong

MessageMeans
invalid or expired embed tokenExpired or unknown
this embed token has been revokedRevoked
this token does not grant the requested viewWrong view
this origin is not on the token's frame-ancestors allowlistThe framing site is not listed
this embed link only works inside an allowed partner site…Opened directly, not framed

Two levels of enforcement​

LevelHowWhen
Browser-enforced (preferred)A per-token frame-ancestors policy: unlisted sites cannot frame the view at allFRONTEND_DIST_PATH is set on the API host
API-enforcedThe page loads anywhere, but every data call from an unlisted site is refusedOtherwise

When a partner submits​

StepResult
1A draft is created in your lifecycle, authored as the token's creator
2The token's owner gets an in-app alert and the Papers - Embedded Form Submission email
3The partner gets the Papers - Embedded Form Receipt email, with a reference for the status view
4The request is recorded in the token's History, with its origin

A blank email field still creates the document, but sends no receipt and allows no status lookup.


5. Worked example​

A reseller, Fabrikam, wants to collect quotation requests under its own brand.

SettingValue
ViewGenerate document
NameFabrikam — quote page
Partner originshttps://quotes.fabrikam.example
Maximum submissions200
Expires in90 days
ScopeReseller Quotes project

They test in the Embed Sandbox, adding the sandbox origin temporarily, then mint the real token. Fabrikam pastes the snippet. Over a month, History shows 61 documents created, and 4 refusals from https://www.fabrikam.example — the marketing site, not the quote subdomain, because a root domain does not cover subdomains. It was a staging copy; the lead leaves it refused.

When Fabrikam's contract ends, the lead revokes the token. The page stops working at once.


6. The admin contract​

Must be trueWhereWhat breaks without it
FRONTEND_DIST_PATH set on the API hostOperationsOnly API-level enforcement; direct framing is not blocked
API_PUBLIC_URL setOperationsSnippets point at the wrong host
The embed email templates are installedCommunication ChannelsNo alert or receipt emails
Active, published types exist in scopeType DesignerThe generate view offers nothing
Tokens are reviewed and revokedThis screenStale partner access persists until expiry

7. Downstream​

When…Then
A partner submitsA draft appears in the scope's project
The cap is reachedThe token shows exhausted; status checks still work
You revokeEvery page using it stops at once

8. Don't confuse this with…​

Shared linksShare one sealed PDF with a person
Counterparty portalThe same review experience on Orbit's own domain
Intake formsYour own marketing forms, not a partner's site

9. Troubleshooting​

SymptomCause
The frame is blank on the partner siteThe origin is not listed, or www versus a subdomain mismatch
Works in the sandbox, not on the partner siteThe partner's exact origin is missing
expires_days must be at most 180Tokens last at most 180 days
Submissions stoppedThe token is exhausted or expired
No receipt emailThe partner left email blank, or the template is not installed
The token value is lostIt is never shown again — mint a new one and revoke the old