Skip to main content
Portal API methods require the Portals add-on. Without it, each method returns 403 Forbidden. Contact support@conduit.ai to enable it.

Overview

A portal is the page that a guest opens before a stay. Its content comes from workspace configuration that you manage through API methods:

Verification rules

What has to be collected or signed before check-in. Deposits, agreements, arrival details, questions.

Offers

The things that can be bought or requested. Late checkout, mid-stay clean, airport pickup.

Templates

The page itself: branding, layout blocks, and which offers appear where.

Guides

Published guest information that can appear in matching portals.

Brand kit

Workspace branding defaults for future portal sessions.

Sessions

Guest progress, submitted check-in fields, orders, tickets, and stored assets.

Listing fields

Structured guest information with formatted text, images, and videos.

Uploads

Images and videos for listing fields, guides, and offers.

Settings

The default stay template, auto-provisioning, and which Stripe account each listing’s payments go to.

Custom domains

Guest portal links on your own hostname, with optional confirmation-code links.

Check-ins

Waive steps for a stay, hand them back, or clear finished answers.

Transactions

Orders and damage waiver payments guests made through portals.
These resources are independent. You can use verification rules without a template. An offer appears in a portal when the portal’s template layout references it, or when the update_portal MCP tool adds it to that portal.

Before you start

Listing field methods require Access Properties to read and Manage Properties to write. They replace one field per request and do not use a version lock. Upload methods require Manage Properties for the listing_field scope and Manage Portals for guide and offer. Check-in waivers and resets require Manage Submissions. Transaction lists require View Portal Transactions. Payment routing and an offer’s Stripe account require Manage Portal Payments.
Timestamps are epoch milliseconds, except in portal session responses, which use ISO 8601 strings. All money is whole cents (25000 is $250.00) paired with a lowercase currency code.

End to end

Build a portal with a deposit for long stays:
1

Create the offers

Use Create Portal Offer for each item. Keep each returned id.
2

Create the verification rules

Use Create Verification Rule for the deposit and arrival details. New rules are enabled and appended.
3

Fix the order

Use Reorder Verification Rules. Put specific rules above general rules.
4

Build the template

Use Create Portal Template. Reference the offer IDs from step 1 in layout.
5

Activate

Connect Stripe first: a template can’t be activated while a priced rule is enabled and Stripe isn’t ready. Use Update Portal Template with status: "active" and the current expected_version.
6

Make it the default

Use Update portal settings with default_stay_template_id. Set auto_provision_stay_portals: true to create a stay portal for every booked reservation. See Portal defaults.

API methods

Errors

Read the current value before you retry a 409 response. A retry with the same lock value fails again.