Drupal is a registered trademark of Dries Buytaert
drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! bootstrap 8.x-3.40 Minor update available for theme bootstrap (8.x-3.40). menu_link_attributes 8.x-1.7 Minor update available for module menu_link_attributes (8.x-1.7). eca 3.1.1 Minor update available for module eca (3.1.1). layout_paragraphs 2.1.3 Minor update available for module layout_paragraphs (2.1.3). ai 1.3.3 Minor update available for module ai (1.3.3). ai 1.2.14 Minor update available for module ai (1.2.14). node_revision_delete 2.0.3 Minor update available for module node_revision_delete (2.0.3). moderated_content_bulk_publish 2.0.52 Minor update available for module moderated_content_bulk_publish (2.0.52). klaro 3.0.10 Minor update available for module klaro (3.0.10). klaro 3.0.9 Minor update available for module klaro (3.0.9). layout_paragraphs 2.1.2 Minor update available for module layout_paragraphs (2.1.2). geofield_map 11.1.8 Minor update available for module geofield_map (11.1.8).
Built by a human using an AI assistant: 🤖 ➕ 🧠

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
  
  1. Go to Configuration → Web Services → API Normalization
  2. Click Import OpenAPI Schema
  3. Enter an API documentation URL or upload a file
  4. Select which endpoints to import
  5. Done—you now have Drupal admin pages for that API

Requirements

Note: This module is currently in alpha. The API and entity structure
may change between releases.

Activity

Total releases
4
First release
Jan 2026
Latest release
3 weeks ago
Release cadence
20 days
Stability
0% stable

Release Timeline

Releases

Version Type Release date
1.0.0-alpha4 Pre-release Mar 26, 2026
1.0.0-alpha3 Pre-release Feb 17, 2026
1.0.0-alpha2 Pre-release Jan 30, 2026
1.0.0-alpha1 Pre-release Jan 25, 2026