Skip to content

Notion Integration

Organize photo submissions in your Notion workspace.

Overview

Connect Visiono to Notion to automatically create database entries, update pages, and organize photo submissions alongside your other documentation.

Prerequisites

  • Visiono account with API access
  • Notion account with workspace
  • API Key from Visiono
  • Notion integration (internal or public)

Integration Methods

MethodBest For
ZapierQuick setup
MakeComplex workflows
Direct APICustom integration

Zapier Setup

1. Create Webhook

  1. Create new Zap in Zapier
  2. Trigger: Webhooks by Zapier → Catch Hook
  3. Copy the webhook URL

2. Configure Visiono

  1. Add webhook in Workspace Settings
  2. Select events to trigger
  3. Save configuration

3. Connect Notion

  1. Add Notion action
  2. Connect your Notion account
  3. Select database or page

4. Map Properties

Choose action and configure:

ActionUse Case
Create Database ItemNew entry per submission
Update Database ItemModify existing entry
Append Block to PageAdd to existing page

Database Structure

Create a Notion database with these properties:

PropertyTypeVisiono Field
NameTitlesmart_link.name
SubmittedDatesubmitted_at
SubmitterTextsubmitter_name
IdentifierTextunique_field
Photo CountNumberphotos_count
View LinkURLdashboard_url
StatusSelect(workflow stage)
TagsMulti-select(from photo tags)

Database Template

📸 Photo Submissions

| Name | Submitted | Submitter | Photos | Status | Link |
|------|-----------|-----------|--------|--------|------|

Property Mapping

Title Property

{{smart_link.name}} - {{submitter_name}}

Date Property

Use ISO format:

{{submitted_at}}

URL Property

Link to Visiono dashboard:

{{dashboard_url}}

Select Property

Map to submission status:

json
{
  "Status": {
    "select": {
      "name": "New"
    }
  }
}

Multi-Select

Map photo tags:

json
{
  "Tags": {
    "multi_select": [
      {"name": "damage"},
      {"name": "front-view"}
    ]
  }
}

Workflow Examples

Photo Log Database

Track all submissions:

Database Properties:

  • Name: Permanent Link + Submitter
  • Date: Submission timestamp
  • Photos: Number count
  • Status: New → Reviewed → Archived
  • Link: Visiono dashboard URL

Workflow:

  1. Submission arrives
  2. Create database entry
  3. Set status to "New"
  4. Add photo links to page body

Project-Based Organization

Link photos to projects:

Setup:

  1. Database with project relations
  2. Match by unique field
  3. Link submission to project
  4. Update project status

Relation:

Submissions → Projects (relation)

Review Workflow

Track review process:

Statuses:

  • Submitted
  • Under Review
  • Approved
  • Rejected
  • Archived

Automations:

  • New entry → Notify reviewer
  • Status change → Update timestamp

Page Content

Block Structure

Add content to page body:

## Submission Details

**Submitter:** {{submitter_name}}
**Date:** {{submitted_at}}
**Photos:** {{photos_count}}

## Photos

{{#each photos}}
- {{slot_name}}: [View]({{url}})
{{/each}}

---
[View in Visiono]({{dashboard_url}})

Embed Photos

Add photo embeds:

json
{
  "type": "image",
  "image": {
    "type": "external",
    "external": {
      "url": "{{photo_url}}"
    }
  }
}

Callout Blocks

Highlight important info:

json
{
  "type": "callout",
  "callout": {
    "icon": {"emoji": "📸"},
    "rich_text": [{
      "type": "text",
      "text": {"content": "{{photos_count}} photos submitted"}
    }]
  }
}

Advanced Workflows

Conditional Database Selection

Route to different databases:

IF smart_link.slug == "damage":
  → "Damage Reports" database
ELSE IF smart_link.slug == "inspection":
  → "Inspections" database
ELSE:
  → "General" database

Update Existing Pages

Find and update:

  1. Search by unique field
  2. If found → Update entry
  3. If not found → Create new

Linked Databases

Connect multiple databases:

Submissions → Customers (relation)
Submissions → Projects (relation)

Photo Organization

Most reliable method:

[Front View](https://...)
[Side View](https://...)

As Embeds

Display inline (may not work for all URLs):

json
{
  "type": "embed",
  "embed": {
    "url": "{{photo_url}}"
  }
}

Use database gallery layout:

  • Set cover to first photo URL
  • Enable card preview
  • Show key properties

Troubleshooting

Entry Not Created

  1. Verify database ID
  2. Check Notion integration permissions
  3. Ensure database is shared with integration
  4. Review required properties

Properties Not Updating

  1. Verify property types match
  2. Check property names (case-sensitive)
  3. Review select option names

Photos Not Displaying

  1. Check URL accessibility
  2. Try external URL format
  3. Use link blocks instead of embeds

Best Practices

Database Organization

  • Use views for different needs
  • Filter by status/date
  • Group by Permanent Link type
  • Archive completed entries

Property Types

  • Use Date for timestamps (not text)
  • Use URL for links
  • Use Number for counts
  • Use Select for fixed options

Page Templates

Create templates for consistency:

  • Standard page structure
  • Required properties
  • Placeholder content

Professional Photo Documentation Platform