Brochure Slides

Generate property marketing brochure slides as Polotno-compatible JSON. Create cover pages, feature highlights, galleries, location maps, agent profiles, and custom content slides.

Overview

The brochure slides endpoint generates a single slide of a specified type using property data, images, and optional agent/agency branding. The output is a Polotno JSON object that can be rendered in your application using the Polotno SDK.

Available slide types:

TypeDescription
coverHero image with address, price, and key features
featuresProperty features and specifications
galleryMulti-image photo gallery layout
locationLocation and neighborhood information
agentAgent profile with contact details
contentCustom content with description text

Quick Example

Generate a cover slide for a property listing:

curl -X POST \
  -H "X-API-Key: dome_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "property": {
      "address": "42 Harbour Road, Sydney NSW 2000",
      "property_type": "House",
      "price_display": "$2,500,000",
      "description": "Stunning harbourside residence with panoramic views",
      "features": [
        { "key": "Bedrooms", "value": "4" },
        { "key": "Bathrooms", "value": "3" },
        { "key": "Parking", "value": "2" }
      ],
      "images": [
        "https://example.com/front.jpg",
        "https://example.com/kitchen.jpg"
      ]
    },
    "slide": {
      "type": "cover",
      "title": "42 Harbour Road",
      "selected_images": ["https://example.com/front.jpg"]
    },
    "branding": {
      "agent_name": "Jane Smith",
      "agency_name": "Harbour Realty",
      "primary_color": "#1a365d"
    }
  }' \
  https://api.dometech.com.au/v1/brochure-slides/generate

Response (202):

{
  "data":  {
    "job_id":  "550e8400-e29b-41d4-a716-446655440000",
    "status":  "queued"
  },
  "meta":  {
    "request_id":  "req_abc123",
    "timestamp":  "2026-02-09T10:00:00.000Z",
    "mode":  "live"
  }
}

Step-by-Step

1. Prepare Property Data

Gather the property information you want to include on the slide. At minimum, you need the property address and a slide type. For the best results, include as much property data as possible: images, features, price, description, and agent branding.

The request body is organized into three sections:

  • property — Address, type, price, description, features, and images
  • slide — Slide type, optional custom title/description, and selected images for this specific slide
  • branding — Agent name, phone, email, headshot, agency name, logo, and brand colors

2. Submit the Generation Request

Send a POST request to /v1/brochure-slides/generate with your property data, slide configuration, and branding. Here is a minimal example with only required fields:

curl -X POST \
  -H "X-API-Key: dome_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "property": {
      "address": "42 Harbour Road, Sydney NSW 2000"
    },
    "slide": {
      "type": "features"
    }
  }' \
  https://api.dometech.com.au/v1/brochure-slides/generate

The API returns a 202 Accepted response with a job_id. The slide is generated asynchronously.

3. Poll for Completion

Poll the job status endpoint until the status changes to completed.

curl -H "X-API-Key: dome_live_your_key_here" \
  https://api.dometech.com.au/v1/jobs/550e8400-e29b-41d4-a716-446655440000

4. Retrieve the Polotno JSON

When the job completes, the output field contains the Polotno-compatible JSON that describes the slide layout. You can render this in your application using the Polotno SDK.

{
  "data":  {
    "id":  "550e8400-e29b-41d4-a716-446655440000",
    "job_type":  "brochure_slide",
    "status":  "completed",
    "mode":  "live",
    "input":  {
      "property":  { "address":  "42 Harbour Road, Sydney NSW 2000" },
      "slide":  { "type":  "cover" }
    },
    "output":  {
      "polotno_json":  {
        "width":  1080,
        "height":  1080,
        "pages":  [{ "children":  [] }]
      }
    },
    "created_at":  "2026-02-09T10:00:00.000Z",
    "updated_at":  "2026-02-09T10:00:45.000Z",
    "completed_at":  "2026-02-09T10:00:45.000Z"
  },
  "meta":  {
    "request_id":  "req_abc123",
    "timestamp":  "2026-02-09T10:00:45.000Z",
    "mode":  "live"
  }
}

Tip: Generate multiple slide types (cover, features, gallery, agent) and combine them into a complete brochure document in your application.

Options

The brochure slides endpoint accepts a rich set of parameters organized into three groups. Below are the key parameters — see the API Reference for the complete list.

Property

ParameterTypeRequiredDescription
property.addressstringYesFull property address
property.property_typestringNoProperty type (e.g. "House", "Apartment")
property.price_displaystringNoPrice display text (e.g. "$1,200,000", "Auction")
property.descriptionstringNoProperty description text
property.featuresarrayNoKey-value features, e.g. [{ "key": "Bedrooms", "value": "4" }]
property.imagesstring[] (URIs)NoProperty image URLs

Slide

ParameterTypeRequiredDescription
slide.typestringYesSlide type: "cover", "features", "gallery", "location", "agent", "content"
slide.titlestringNoCustom slide title
slide.descriptionstringNoCustom slide description text
slide.selected_imagesstring[] (URIs)NoSpecific images to use on this slide

Branding

ParameterTypeDescription
branding.agent_namestringAgent display name
branding.agent_phonestringAgent phone number
branding.agent_emailstringAgent email address
branding.agent_headshot_urlstring (URI)Agent headshot image URL
branding.agency_namestringAgency name
branding.agency_logo_urlstring (URI)Agency logo image URL
branding.primary_colorstringPrimary brand color (hex or CSS color)
branding.secondary_colorstringSecondary brand color (hex or CSS color)

All branding parameters are optional. You can also include webhook_url and callback_metadata at the top level. See the API Reference for the complete parameter list.

Output

When the job completes, the output object contains:

FieldTypeDescription
polotno_jsonobjectPolotno-compatible JSON describing the slide layout. Render using the Polotno SDK.

Next Steps