---
title: "Integrations - Drupal"
url: "https://docs.unified.to/integrations/drupal"
description: "Build Drupal integrations faster with our Unified API — Knowledge Management data, API key, real-time sync."
date: "2026-11-15T02:57:26.964Z"
updated: "2026-11-15T02:57:26.964Z"
---

# Drupal integration

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

## Overview

- **Type:** `drupal`
- **Categories:** [Knowledge Management](https://docs.unified.to/kms/overview.md), [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.drupal.org
- **Vendor API docs:** https://www.drupal.org/docs/core-modules-and-themes/core-modules/jsonapi-module
- **Launched:** 2026-11-13

## How end users connect

- **API key** entered by the end user: `Username`, `Password`, `Drupal site domain`
    - The username of a Drupal account that may view (and, for writes, create / edit / delete) the content you want to sync. On the site, enable the core "JSON:API" and "HTTP Basic Authentication" modules (Extend).
    - The password of that Drupal account.
    - The host of your Drupal site, e.g. www.example.com (no https:// and no path). To create, update or delete content, also select "Accept all JSON:API create, read, update, and delete operations" at /admin/config/services/jsonapi.

## Supported objects

| Object | Methods | Webhooks |
| --- | --- | --- |
| [hris_employee](#hris_employee) | list, get | created, updated |
| [kms_page](#kms_page) | list, get, create, update, remove | created, updated |
| [kms_space](#kms_space) | list, get | none |
| [passthrough](#passthrough) | none | none |
| [storage_file](#storage_file) | list, get | created, updated |

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:** `created` (virtual), `updated` (virtual)
- **Virtual webhook filters:** `virtual_webhook_limit`, `virtual_webhook_updated_gte`
- **List filters:** `list_limit`, `list_offset`, `list_query`, `list_updated_gte`
- **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

### kms_page

- **Methods:** `list`, `get`, `create`, `update`, `remove`
- **Webhooks:** `created` (virtual), `updated` (virtual)
- **Virtual webhook filters:** `virtual_webhook_limit`, `virtual_webhook_space_id`, `virtual_webhook_updated_gte`, `virtual_webhook_user_id`
- **List filters:** `list_limit`, `list_offset`, `list_query`, `list_updated_gte`, `list_user_id`
- **Required list filters:** `list_space_id`
- **Readable fields:** `created_at`, `download_url`, `id`, `is_active`, `space_id`, `title`, `type`, `updated_at`, `user_id`
- **Writable fields:** `is_active`
- **Required on create:** `space_id`, `title`
- **Vendor objects:** `node`
- **Model:** https://docs.unified.to/kms/page/model.md

### kms_space

- **Methods:** `list`, `get`
- **Webhooks:** none
- **List filters:** `list_limit`, `list_offset`
- **Readable fields:** `description`, `id`, `is_active`, `name`
- **Writable fields:** none
- **Vendor objects:** `node_type--node_type`
- **Model:** https://docs.unified.to/kms/space/model.md

### passthrough

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

### storage_file

- **Methods:** `list`, `get`
- **Webhooks:** `created` (virtual), `updated` (virtual)
- **Virtual webhook filters:** `virtual_webhook_limit`, `virtual_webhook_updated_gte`
- **List filters:** `list_limit`, `list_offset`, `list_query`, `list_updated_gte`
- **Readable fields:** `created_at`, `download_url`, `id`, `mime_type`, `name`, `size`, `type`, `updated_at`, `user_id`
- **Writable fields:** none
- **Vendor objects:** `file`
- **Model:** https://docs.unified.to/storage/file/model.md
