post
/webhooks/{webhook_id}/{token}/githubExecute GitHub webhook
Receives and processes GitHub webhook events, formatting them as messages in the configured channel. Reads event type from X-GitHub-Event header and delivery ID from X-GitHub-Delivery header.
execute_github_webhook
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| webhook_id* | path | SnowflakeType | The ID of the webhook |
| token* | path | string | The token |
Request body
application/json
json
{
"type": "object",
"properties": {
"action": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"answer": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int64Type"
},
"html_url": {
"type": "string"
},
"user": {
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"login": {
"type": "string"
},
"html_url": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
},
"required": [
"id",
"login",
"html_url",
"avatar_url"
]
},
"commit_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"body": {
"type": "string"
}
},
"required": [
"id",
"html_url",
"user",
"body"
]
},
{
"type": "null"
}
]
},
"check_run": {
"anyOf": [
{
"type": "object",
"properties": {
"conclusion": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
},
"html_url": {
"type": "string"
},
"check_suite": {
"type": "object",
"properties": {
"conclusion": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"head_branch": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"head_sha": {
"type": "string"
},
"pull_requests": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"number": {
"$ref": "#/components/schemas/Int32Type"
}
},
"required": [
"number"
]
}
},
{
"type": "null"
}
]
},
"app": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
]
}
},
"required": [
"head_sha",
"app"
]
},
"details_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"output": {
"anyOf": [
{
"type": "object",
"properties": {
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"summary": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
}
},
{
"type": "null"
}
]
},
"pull_requests": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"number": {
"$ref": "#/components/schemas/Int32Type"
}
},
"required": [
"number"
]
}
},
{
"type": "null"
}
]
}
},
"required": [
"name",
"html_url",
"check_suite"
]
},
{
"type": "null"
}
]
},
"check_suite": {
"anyOf": [
{
"type": "object",
"properties": {
"conclusion": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"head_branch": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"head_sha": {
"type": "string"
},
"pull_requests": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"number": {
"$ref": "#/components/schemas/Int32Type"
}
},
"required": [
"number"
]
}
},
{
"type": "null"
}
]
},
"app": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
]
}
},
"required": [
"head_sha",
"app"
]
},
{
"type": "null"
}
]
},
"comment": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int64Type"
},
"html_url": {
"type": "string"
},
"user": {
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"login": {
"type": "string"
},
"html_url": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
},
"required": [
"id",
"login",
"html_url",
"avatar_url"
]
},
"commit_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"body": {
"type": "string"
}
},
"required": [
"id",
"html_url",
"user",
"body"
]
},
{
"type": "null"
}
]
},
"commits": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"url": {
"type": "string"
},
"message": {
"type": "string"
},
"author": {
"type": "object",
"properties": {
"username": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
}
},
"required": [
"name"
]
}
},
"required": [
"id",
"url",
"message",
"author"
]
}
},
{
"type": "null"
}
]
},
"compare": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"discussion": {
"anyOf": [
{
"type": "object",
"properties": {
"title": {
"type": "string"
},
"number": {
"$ref": "#/components/schemas/Int32Type"
},
"html_url": {
"type": "string"
},
"answer_html_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"body": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"user": {
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"login": {
"type": "string"
},
"html_url": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
},
"required": [
"id",
"login",
"html_url",
"avatar_url"
]
}
},
"required": [
"title",
"number",
"html_url",
"user"
]
},
{
"type": "null"
}
]
},
"forced": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"forkee": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"html_url": {
"type": "string"
},
"name": {
"type": "string"
},
"full_name": {
"type": "string"
}
},
"required": [
"id",
"html_url",
"name",
"full_name"
]
},
{
"type": "null"
}
]
},
"head_commit": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"url": {
"type": "string"
},
"message": {
"type": "string"
},
"author": {
"type": "object",
"properties": {
"username": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"name": {
"type": "string"
}
},
"required": [
"name"
]
}
},
"required": [
"id",
"url",
"message",
"author"
]
},
{
"type": "null"
}
]
},
"issue": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int64Type"
},
"number": {
"$ref": "#/components/schemas/Int32Type"
},
"html_url": {
"type": "string"
},
"user": {
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"login": {
"type": "string"
},
"html_url": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
},
"required": [
"id",
"login",
"html_url",
"avatar_url"
]
},
"title": {
"type": "string"
},
"body": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"number",
"html_url",
"user",
"title"
]
},
{
"type": "null"
}
]
},
"member": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"login": {
"type": "string"
},
"html_url": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
},
"required": [
"id",
"login",
"html_url",
"avatar_url"
]
},
{
"type": "null"
}
]
},
"pull_request": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int64Type"
},
"number": {
"$ref": "#/components/schemas/Int32Type"
},
"html_url": {
"type": "string"
},
"user": {
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"login": {
"type": "string"
},
"html_url": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
},
"required": [
"id",
"login",
"html_url",
"avatar_url"
]
},
"title": {
"type": "string"
},
"body": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"number",
"html_url",
"user",
"title"
]
},
{
"type": "null"
}
]
},
"ref_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"ref": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"release": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"tag_name": {
"type": "string"
},
"html_url": {
"type": "string"
},
"body": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"tag_name",
"html_url"
]
},
{
"type": "null"
}
]
},
"repository": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"html_url": {
"type": "string"
},
"name": {
"type": "string"
},
"full_name": {
"type": "string"
}
},
"required": [
"id",
"html_url",
"name",
"full_name"
]
},
{
"type": "null"
}
]
},
"review": {
"anyOf": [
{
"type": "object",
"properties": {
"user": {
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"login": {
"type": "string"
},
"html_url": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
},
"required": [
"id",
"login",
"html_url",
"avatar_url"
]
},
"body": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"html_url": {
"type": "string"
},
"state": {
"type": "string"
}
},
"required": [
"user",
"html_url",
"state"
]
},
{
"type": "null"
}
]
},
"sender": {
"type": "object",
"properties": {
"id": {
"$ref": "#/components/schemas/Int32Type"
},
"login": {
"type": "string"
},
"html_url": {
"type": "string"
},
"avatar_url": {
"type": "string"
}
},
"required": [
"id",
"login",
"html_url",
"avatar_url"
]
}
},
"required": [
"sender"
]
}Responses
204
No Content
400
Bad Request - The request was malformed or contained invalid data
json
{
"type": "object",
"properties": {
"code": {
"$ref": "#/components/schemas/APIErrorCode"
},
"message": {
"type": "string",
"description": "Human-readable error message"
},
"errors": {
"type": "array",
"description": "Field-specific validation errors",
"items": {
"$ref": "#/components/schemas/ValidationErrorItem"
}
}
},
"required": [
"code",
"message"
]
}429
Too Many Requests - You are being rate limited
json
{
"type": "object",
"properties": {
"code": {
"type": "string",
"enum": [
"RATE_LIMITED"
]
},
"message": {
"type": "string"
},
"retry_after": {
"type": "number",
"description": "Seconds to wait before retrying"
},
"global": {
"type": "boolean",
"description": "Whether this is a global rate limit"
}
},
"required": [
"code",
"message",
"retry_after"
]
}500
Internal Server Error - An unexpected error occurred
json
{
"type": "object",
"properties": {
"code": {
"$ref": "#/components/schemas/APIErrorCode"
},
"message": {
"type": "string",
"description": "Human-readable error message"
},
"errors": {
"type": "array",
"description": "Field-specific validation errors",
"items": {
"$ref": "#/components/schemas/ValidationErrorItem"
}
}
},
"required": [
"code",
"message"
]
}