mcpgate Webhooks API

The Webhooks API from mcpgate — 7 operation(s) for webhooks.

Operations 7

POST /webhooks/gitlab Gitlab Webhook #
POST /webhooks/deployment-success Deployment Success Webhook #
POST /webhooks/queue-self-healing-notification Queue Self Healing Notification Webhook #
POST /webhooks/notify-not-a-bug Notify Not A Bug Webhook #
POST /webhooks/notify-maintainer Notify Maintainer Webhook #
POST /webhooks/selfheal-quota Selfheal Quota Webhook #
POST /webhooks/selfheal-approval Selfheal Approval Webhook #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/mcpgate:mcpgate-webhooks-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

mcpgate-webhooks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AI Gateway MCP Server Webhooks API
  description: Universal MCP Gateway with OAuth integration - Modern Architecture
  version: 2.0.3290
tags:
- name: Webhooks
paths:
  /webhooks/gitlab:
    post:
      summary: Gitlab Webhook
      description: 'Handle GitLab webhooks for issue and MR events.


        Processes:

        - Issue opened (Bug/Feature created) → Notify maintainer

        - Issue closed → Notify reporter with closing comment

        - Merge Request opened (Renovate Bot on Mondays) → Notify admin


        Security:

        - Validates X-Gitlab-Token header

        - Non-blocking: Errors don''t affect GitLab operations


        Webhook Events:

        - object_kind: "issue" - object_attributes.action: "open", "close", "update"

        - object_kind: "merge_request" - object_attributes.action: "open", "merge", "close"'
      operationId: gitlab_webhook_webhooks_gitlab_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Webhooks
  /webhooks/deployment-success:
    post:
      summary: Deployment Success Webhook
      description: 'Handle deployment success webhooks from CI/CD pipeline.


        Called by GitLab CI after successful production deployment.

        Processes all pending issue-close notifications and sends them with

        deployment version information.


        Expected payload:

        {

        "version": "1.33.126",

        "environment": "prod",

        "secret": os.getenv("GITLAB_WEBHOOK_SECRET", "")

        }


        Security:

        - Validates secret token

        - Only processes on prod deployments'
      operationId: deployment_success_webhook_webhooks_deployment_success_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Webhooks
  /webhooks/queue-self-healing-notification:
    post:
      summary: Queue Self Healing Notification Webhook
      description: 'Queue a self-healing notification for processing after deployment.


        Called by self_healing_v2.py (CI pipeline) after generating an AI summary.

        The notification is stored in Redis and sent to subscribers when the

        deployment-success webhook fires.


        Expected payload:

        {

        "mr_iid": 58,

        "mr_url": "https://gitlab.example.com/...",

        "issue_iid": 442,

        "issue_title": "Fix #442: ...",

        "diff_summary": "AI-generated summary of what changed",

        "adapter": "codex",

        "model": "default"

        }'
      operationId: queue_self_healing_notification_webhook_webhooks_queue_self_healing_notification_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Webhooks
  /webhooks/notify-not-a-bug:
    post:
      summary: Notify Not A Bug Webhook
      description: 'Send a not-a-bug notification to the issue reporter via Slack DM.


        Called by self_healing_v2.py (CI pipeline) when triage closes an issue

        as not-a-bug. Sends a threaded DM so the reporter can reply to disagree.


        Expected payload:

        {

        "issue_iid": 515,

        "issue_title": "GPT halluziniert URLs",

        "issue_url": "https://gitlab.example.com/...",

        "reason": "Triage reason explanation"

        }'
      operationId: notify_not_a_bug_webhook_webhooks_notify_not_a_bug_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Webhooks
  /webhooks/notify-maintainer:
    post:
      summary: Notify Maintainer Webhook
      description: 'Send a self-heal escalation to the maintainer alone.


        Called by the self-heal core for an issue a reporter outside the project

        may follow: ``reason`` is model or code-host text, written for the

        maintainer. A separate path rather than a flag on /webhooks/notify-not-a-bug

        so the protection fails closed across versions: a gateway that predates it

        answers 404 and sends nothing, where a flag it does not know would be

        ignored and the reporter DM''d.


        Expected payload: ``{"issue_iid", "issue_title", "issue_url", "reason",

        "source"}``.'
      operationId: notify_maintainer_webhook_webhooks_notify_maintainer_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Webhooks
  /webhooks/selfheal-quota:
    post:
      summary: Selfheal Quota Webhook
      description: 'Daily budget for fix-agent runs on untrusted (user-submitted) reports.


        The self-heal worker consumes one run per call; the counters cap how much

        agent compute unvetted reports can burn — per intake instance and globally.

        Limits via SELFHEAL_UNTRUSTED_INSTANCE_DAILY (default 3) and

        SELFHEAL_UNTRUSTED_GLOBAL_DAILY (default 10). The worker fails closed on

        any non-200, so denials here park the issue for maintainer review.'
      operationId: selfheal_quota_webhook_webhooks_selfheal_quota_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Webhooks
  /webhooks/selfheal-approval:
    post:
      summary: Selfheal Approval Webhook
      description: 'Deliver the interactive approve/reject maintainer notification for a

        finished untrusted-report fix MR. The worker posts the verdict + signals;

        rendering and button policy live in src.notifications.selfheal_approval.'
      operationId: selfheal_approval_webhook_webhooks_selfheal_approval_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
      tags:
      - Webhooks