---
title: "Integrations - Showpad"
url: "https://docs.unified.to/integrations/showpad"
description: "Build Showpad integrations faster with our Unified API — File Storage data, OAuth2, real-time sync."
date: "2026-11-11T18:29:28.283Z"
updated: "2026-11-11T18:29:28.283Z"
---

# Showpad integration

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

## Overview

- **Type:** `showpad`
- **Categories:** [File Storage](https://docs.unified.to/storage/overview.md), [HR & Directory](https://docs.unified.to/hris/overview.md), [Passthrough](https://docs.unified.to/passthrough/overview.md)
- **Website:** https://www.showpad.com/
- **Vendor API docs:** https://developer.showpad.com/docs/apis/references
- **Launched:** 2026-11-11

## 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: `Showpad subdomain`, `API token`
    - Your Showpad subdomain (if you sign in at https://acme.showpad.biz, enter acme).
    - Create an API token in the Showpad Admin App under Settings → API Tokens ([docs](https://developer.showpad.com/docs/apis/concepts/authentication)). The token is shown only once.

## 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 |
| --- | --- |
| `hris_employee_read` | `read_user_management`, `refresh_token` |
| `hris_group_read` | `read_division_management`, `refresh_token` |
| `storage_file_read` | `read_contentprofile_management`, `refresh_token` |
| `storage_file_write` | `write_contentprofile_management`, `refresh_token` |

## Supported objects

| Object | Methods | Webhooks |
| --- | --- | --- |
| [hris_employee](#hris_employee) | list, get | none |
| [hris_group](#hris_group) | list, get | none |
| [passthrough](#passthrough) | none | none |
| [storage_file](#storage_file) | list, get, update, remove | 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`.

### hris_employee

- **Methods:** `list`, `get`
- **Webhooks:** none
- **List filters:** `list_limit`, `list_offset`, `list_query`
- **Readable fields:** `created_at`, `emails`, `first_name`, `id`, `last_name`, `name`, `updated_at`
- **Writable fields:** none
- **Vendor objects:** `user`
- **Model:** https://docs.unified.to/hris/employee/model.md

### hris_group

- **Methods:** `list`, `get`
- **Webhooks:** none
- **List filters:** `list_limit`, `list_offset`
- **Readable fields:** `created_at`, `id`, `name`, `type`, `updated_at`
- **Writable fields:** none
- **Vendor objects:** `division`
- **Model:** https://docs.unified.to/hris/group/model.md

### passthrough

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

### storage_file

- **Methods:** `list`, `get`, `update`, `remove`
- **Webhooks:** none
- **List filters:** `list_limit`, `list_offset`, `list_query`
- **Readable fields:** `created_at`, `description`, `hash`, `id`, `name`, `size`, `type`, `updated_at`, `version`
- **Writable fields:** `description`, `name`
- **Vendor objects:** `asset`
- **Model:** https://docs.unified.to/storage/file/model.md
