Skip to content

overlane webhook create

Create an outbound webhook; the signing secret is shown once

Updated View as MarkdownOpen in ChatGPTOpen in Claude

Registers an https endpoint (a public DNS name, no credentials in the URL) to receive events. Events are signed with an Overlane-Signature header (a timestamp t and v1, the HMAC-SHA256 of the timestamp, a dot and the body), carry an event ID (your idempotency key) and a sequence, and are retried with exponential backoff for up to 8 attempts. Events: task.created, task.updated, approval.requested, approval.answered, review.started, release.published, connector.connected, connector.revoked, webhook.test. Creating a webhook is in the bots autonomy class.

Usage

overlane webhook create [--service URL] [--team TENANT_ID] --url URL [--event TYPE...] [--dry-run]

Flags

Flag Type Required Default Description
--service string no The service address (default: OVERLANE_SERVICE_URL, then the project’s binding, then the hosted service)
--team string no The team (tenant) to act on (default: the one your token belongs to)
--url string yes The https endpoint that receives events
--event string (repeatable) no An event type to send; repeat for more (default: task.updated)
--dry-run boolean no Print the requests and file changes this command would make, then stop. Needs no credentials.

Examples

overlane webhook create --url https://hooks.example.com/overlane --event approval.requested --event task.updated
overlane webhook create --url https://hooks.example.com/overlane --dry-run

Behavior

  • Effect: write (changes local or hosted state).
  • Needs credentials: yes. Uses the network: yes.
  • Supports --dry-run: yes. Accepts --force: no.
  • Machine-readable description: overlane schema webhook create.

Result

With --json (the default when stdout is not a terminal) the command prints this JSON Schema’s shape on stdout.

{
  "anyOf": [
    {
      "type": "object",
      "properties": {
        "tenantId": {
          "type": "string"
        },
        "webhook": {
          "type": "object",
          "properties": {
            "webhookId": {
              "type": "string"
            },
            "url": {
              "type": "string"
            },
            "events": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "status": {
              "type": "string"
            },
            "keyVersion": {
              "type": "number"
            },
            "createdAt": {
              "type": "string"
            }
          },
          "required": [
            "webhookId",
            "url",
            "events",
            "status",
            "keyVersion",
            "createdAt"
          ],
          "additionalProperties": false
        },
        "signingSecret": {
          "type": "string"
        },
        "next": {
          "type": "string"
        }
      },
      "required": [
        "tenantId",
        "webhook",
        "signingSecret",
        "next"
      ],
      "additionalProperties": false
    },
    {
      "type": "object",
      "properties": {
        "dryRun": {
          "type": "boolean",
          "const": true
        },
        "service": {
          "type": "string"
        },
        "requests": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "method": {
                "type": "string"
              },
              "path": {
                "type": "string"
              },
              "body": {},
              "note": {
                "type": "string"
              }
            },
            "required": [
              "method",
              "path"
            ],
            "additionalProperties": false
          }
        },
        "commands": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "writes": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "path": {
                "type": "string"
              },
              "action": {
                "type": "string",
                "enum": [
                  "write",
                  "append",
                  "delete"
                ]
              },
              "description": {
                "type": "string"
              }
            },
            "required": [
              "path",
              "action",
              "description"
            ],
            "additionalProperties": false
          }
        },
        "notes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "dryRun",
        "requests",
        "commands",
        "writes",
        "notes"
      ],
      "additionalProperties": false
    }
  ]
}

See exit codes for the status the process returns.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close

Overlane Agent

Ask about the docs. Answers are quoted from the pages, with links. This panel cannot change anything.

    Questions are answered in your browser from the docs index. Nothing you type here is stored or sent anywhere.