---
title: "Integrations - Visier"
url: "https://docs.unified.to/integrations/visier"
description: "Build Visier integrations faster with our Unified API — Analytics data, OAuth2, real-time sync."
date: "2026-10-01T23:34:56.864Z"
updated: "2026-11-09T09:58:50.194Z"
---

# Visier integration

> What this integration supports through the Unified.to API, by object. Live data: `GET https://api.unified.to/unified/integration?type=visier` with your workspace API key (or Core MCP `list_unified_integrations` with `type: "visier"`). All integrations: https://docs.unified.to/integrations.md

## Overview

- **Type:** `visier`
- **Categories:** [Analytics](https://docs.unified.to/analytics/overview.md), [Authentication](https://docs.unified.to/auth/overview.md), [Passthrough](https://docs.unified.to/passthrough/overview.md)
- **Website:** https://www.visier.com
- **Vendor API docs:** https://docs.visier.com/developer/apis/references/api-reference.htm
- **Launched:** 2026-06-26

## How end users connect

- **OAuth2** authorization flow. Register your own OAuth2 app with the vendor and add its credentials to the integration.
- **API key** entered by the end user: `Vanity Subdomain`, `API Key`, `Username`, `Password`
    - Your Visier vanity subdomain. If you access Visier at https://mycompany.api.visier.io, the subdomain is "mycompany".
    - The API key that authorizes access through the Visier API gateway. Provided to you by Visier in Admin > API Keys.
    - The username of a Visier user with API access (used for basic authentication).
    - The password that corresponds to the username (used for basic authentication).

## OAuth2 scopes

Pass Unified scopes in `scopes=` on the authorization URL; each one requests these vendor scopes. Request only what you need.

| Unified scope | Vendor scopes |
| --- | --- |
| `analytics_property_read` | `read` |
| `analytics_report_read` | `read` |

## Supported objects

| Object | Methods | Webhooks |
| --- | --- | --- |
| [analytics_property](#analytics_property) | list, get | none |
| [analytics_report](#analytics_report) | list | none |
| [passthrough](#passthrough) | none | none |

Values below come from the integration's support data. "Required list filters" must be sent on list calls; "Required on create" fields must be sent when creating. Webhook events are `native` (pushed by the vendor) or `virtual` (polled by Unified.to). Anything not listed is not supported; an unsupported method returns `501`.

### analytics_property

- **Methods:** `list`, `get`
- **Webhooks:** none
- **List filters:** none
- **Readable fields:** `created_at`, `id`, `name`
- **Writable fields:** none
- **Vendor objects:** `analyticObject`
- **Model:** https://docs.unified.to/analytics/property/model.md

### analytics_report

- **Methods:** `list`
- **Webhooks:** none
- **List filters:** `list_end_lt`, `list_start_gte`
- **Required list filters:** `list_property_id`
- **Readable fields:** `end_at`, `id`, `metrics`, `property_id`, `start_at`
- **Writable fields:** none
- **Vendor objects:** `cellSet`
- **Model:** https://docs.unified.to/analytics/report/model.md

### passthrough

- **Methods:** none
- **Webhooks:** none
- **Readable fields:** none
- **Writable fields:** none
