POST /webhooks/{id}/{token}/{provider}

Receives webhooks from various providers (Doppler, etc.) and transforms them into formatted Discord embeds before forwarding to your Discord channel.

Similar to skyhookapi.com - acts as a webhook transformation proxy.

Supported Providers:

  • doppler - Doppler config change webhooks (docs)

Usage:

  1. Get your Discord webhook URL: https://discord.com/api/webhooks/ID/TOKEN
  2. Configure your provider to send webhooks to: https://api.4mina.app/webhooks/ID/TOKEN/provider.
  • You can simply paste your Discord webhook URL into the transformer UI at (webhooks) to get the correct URL.

Example:

Doppler webhook URL: https://api.4mina.app/webhooks/1234567890/abcdef.../doppler

Path parameters

  • id string Required

    Discord webhook ID

  • token string Required

    Discord webhook token

  • provider string Required

    Webhook provider name.

    If you need more providers:

    • Contact support to request new integrations.

    Value is doppler.

application/json

Body Required

Provider-specific webhook payload (JSON)

object object

Payload varies by provider

Responses

  • 200 application/json

    Webhook received and processed

    Hide response attributes Show response attributes object
    • success boolean
    • message string
  • 400 application/json

    Bad request - missing or invalid parameters

    Hide response attributes Show response attributes object
    • success boolean
    • error object
      Hide error attributes Show error attributes object
      • message string
      • code string
    • meta object
      Hide meta attribute Show meta attribute object
      • generatedAt string(date-time)
  • 401 application/json

    Unauthorized - invalid or missing API key

    Hide response attributes Show response attributes object
    • success boolean
    • error object
      Hide error attributes Show error attributes object
      • message string
      • code string
    • meta object
      Hide meta attribute Show meta attribute object
      • generatedAt string(date-time)
POST /webhooks/{id}/{token}/{provider}
curl \
 --request POST 'https://api.4mina.app/webhooks/1438255873965673627/YgshdkHJbsndKdkfHqDtFl4dqUv_dVtuXcHLT_Oez0WqBQnjPYzPvZ5lUXLLCzcEY/doppler' \
 --header "Content-Type: application/json" \
 --data '{"diff":{"added":["NEW_SECRET_KEY"],"removed":["OLD_API_KEY"],"updated":["DATABASE_URL"]},"config":{"name":"production","environment":"prd"},"project":{"id":"proj_abc123","name":"my-project"}}'
Request example
{
  "diff": {
    "added": [
      "NEW_SECRET_KEY"
    ],
    "removed": [
      "OLD_API_KEY"
    ],
    "updated": [
      "DATABASE_URL"
    ]
  },
  "config": {
    "name": "production",
    "environment": "prd"
  },
  "project": {
    "id": "proj_abc123",
    "name": "my-project"
  }
}
Response examples (200)
{
  "success": true,
  "message": "Webhook forwarded to Discord successfully."
}
Response examples (400)
{
  "success": false,
  "error": {
    "message": "string",
    "code": "string"
  },
  "meta": {
    "generatedAt": "2025-05-04T09:42:00Z"
  }
}
Response examples (401)
{
  "success": false,
  "error": {
    "message": "string",
    "code": "string"
  },
  "meta": {
    "generatedAt": "2025-05-04T09:42:00Z"
  }
}