Webhook Relay Inputs API
Inputs are your public endpoints. Each input serves as an inbox that you can supply to your webhooks producer (ie: Github, Docker, IFTTT)
Inputs are your public endpoints. Each input serves as an inbox that you can supply to your webhooks producer (ie: Github, Docker, IFTTT)
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/webhook-relay:webhook-relay-inputs-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a 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: 3.2.0
info:
version: '1.0'
title: Webhook Relay Inputs API
description: '# Introduction
Fast, secure tunnels to your internal networks.'
termsOfService: https://webhookrelay.com/tos/
contact:
email: support@webhookrelay.com
servers:
- url: https://my.webhookrelay.com/
tags:
- name: Inputs
description: 'Inputs are your public endpoints. Each input serves as an inbox that you can supply to your webhooks producer (ie: Github, Docker, IFTTT)'
paths:
/v1/buckets/{bucketID}/inputs:
x-summary: Manage bucket inputs
parameters:
- name: bucketID
in: path
description: ID of a bucket to create input in
required: true
schema:
type: string
post:
tags:
- Inputs
description: Create one or more inputs for the bucket to get unique public endpoints.
summary: Create a New Input
responses:
201:
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/Input'
400:
description: Invalid input request supplied
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Input'
required: true
operationId: postV1BucketsByBucketIDInputs
x-operation-id-source: derived
/v1/buckets/{bucketID}/inputs/{inputID}:
x-summary: Manage bucket inputs
parameters:
- name: bucketID
in: path
description: ID of a bucket to create input in
required: true
schema:
type: string
- name: inputID
in: path
description: ID of an input to delete
required: true
schema:
type: string
put:
tags:
- Inputs
description: Update input endpoint response code, body or headers.
summary: Update Input
responses:
200:
description: Input updated
content:
application/json:
schema:
$ref: '#/components/schemas/Input'
400:
description: Invalid input request supplied
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Input'
required: true
operationId: putV1BucketsByBucketIDInputsByInputID
x-operation-id-source: derived
delete:
tags:
- Inputs
description: Delete input. Once input is deleted, you will not be able to recreate a new input with the same ID.
summary: Delete Input
responses:
200:
description: ''
404:
description: Input or Bucket not found
operationId: deleteV1BucketsByBucketIDInputsByInputID
x-operation-id-source: derived
components:
schemas:
Headers:
title: Headers for request/response
type: object
additionalProperties:
$ref: '#/components/schemas/HeaderItem'
description: A hashmap of header keys and a list of values for each string, Go equivalent map[string][]string
example:
Content-Type:
- JSON
Foo:
- Bar
HeaderItem:
title: Header values
type: array
items:
type: string
Input:
title: Input
type: object
properties:
id:
type: string
readOnly: true
created_at:
type: integer
readOnly: true
updated_at:
type: integer
readOnly: true
name:
type: string
function_id:
type: string
description: ID of the function that will be executed for this input
headers:
type: object
$ref: '#/components/schemas/Headers'
status_code:
type: integer
description: Response status code to return when this input receives a webhook
body:
type: string
description: Response body to return when this input receives a webhook
response_from_output:
type: string
description: Output ID to specify a single output for response or set it to 'anyOutput' to return response from any output. Output should respond within 10 seconds
custom_domain:
type: string
description: Specify any custom domain from your Reserved Domains, such as example.hooks.webhookrelay.com or hooks.example.com (if used with your own top level domain name, create a CNAME pointing at hooks.webhookrelay.com)
path_prefix:
type: string
description: When used with custom domains, path_prefix can host multiple input endpoints on a single domain, such as hooks.example.com/github -> Jenkins CI, hooks.example.com/gitlab -> Spinnaker
description:
type: string
externalDocs:
description: Find out more in the official documentation.
url: https://webhookrelay.com/docs
x-tagGroups:
- name: Authentication
tags:
- Tokens
- name: Webhook Forwarding
tags:
- Buckets
- Outputs
- Inputs
- Logs
- Functions
- name: Tunneling
tags:
- Tunnels