This project is not covered by Drupal’s security advisory policy.
Note that extensive parts of this module was generating via AI coding agents under human supervision.
What It Does
Turn Drupal into a management dashboard for external APIs—without writing code.
Import any API's OpenAPI/Swagger schema, and this module automatically creates fieldable Drupal entities for each endpoint, admin forms to manage API data, ECA-driven workflows on API events, and automatic provider failover.
Example: Import the GitLab API, and you get Drupal admin pages to create issues, manage repositories, and trigger automated workflows—no custom code required.
Who It's For
- Site builders who want to connect external services without custom code
- Agencies managing multiple client APIs from one Drupal dashboard
- DevOps teams needing API failover, monitoring, and request transformation
- AI/ML users running multiple AI providers with automatic fallback via the
AI module
Architecture
Built on proven Drupal contrib—no reinventing the wheel:
- ECK — 7 fieldable entity types:
api_endpoint,api_key,openapi_schema,
import_draft,gateway_route,tenant,
api_normalization_rule - AI module — Tool plugin integration
for schema import, gateway routing, and response processing - ECA — Event-driven workflows on
API events - Feeds — Data import/export
workflows with Tamper transforms - Key — Secure API key storage
- HTTP Client Manager
— HTTP service definitions via YAML - OpenAPI — Schema validation via
league/openapi-psr7-validator
Features
OpenAPI Import
- Import OpenAPI 3.0/3.1 schemas by URL, file upload, or paste
- Generates Drupal entities from API endpoints via ECK
- Schema validation with
league/openapi-psr7-validator - Import drafts allow staged review before entity creation
Multi-Provider AI Services
Works with any provider supported by the
AI module—OpenAI, Anthropic, Ollama, HuggingFace, and others. One interface, multiple providers, automatic failover.
Deep Drupal Integration
- JSON:API and REST endpoints for all imported API entities
- Views integration for API data
- ECA workflow triggers on API events
- Token support for templates
- Advanced Queue for background API processing
Submodules
- api_normalization_gateway — API gateway for request transformation
and routing - api_normalization_tamper — Transform AI provider responses to
OpenAI-compatible format via Tamper plugins - api_normalization_flowdrop — Visual workflow nodes for schema.org
mapping, entity classification, and OpenAPI spec generation via
FlowDrop - api_normalization_orchestration — Exposes capabilities to external
automation platforms (N8N, Zapier) via the Orchestration module - api_normalization_audit — Audit logging, metrics collection, and
performance monitoring - api_normalization_modeler — Visual API routing flow design via the
Modeler API
Quick Start
composer require 'drupal/api_normalization:^1.0@alpha' drush en api_normalization drush cr
- Go to Configuration → Web Services → API Normalization
- Click Import OpenAPI Schema
- Enter an API documentation URL or upload a file
- Select which endpoints to import
- Done—you now have Drupal admin pages for that API
Requirements
- Drupal 10.3, 11, or 12
- PHP 8.3+
- Installed automatically via Composer:
AI,
ECA,
ECK,
Key,
HTTP Client Manager,
Feeds,
OpenAPI,
Tamper,
Advanced Queue,
Project Browser,
Tool
Note: This module is currently in alpha. The API and entity structure
may change between releases.
Project information
- Project categories: Automation, Decoupled, Integrations
- Ecosystem: OpenAPI, REST API Query API, REST API, GraphQL Compose, Token
- Created by flux423 on , updated
This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.
Releases
Adds the api_normalization_modeler submodule for visual workflow editing via the Modeler API, integrates drupal/openapi, drupal/feeds, and drupal/project_browser as core dependencies, and exposes performance metrics as an AI Tool.


