This API enables forward webhook requests to github repository_dispatch event webhook.
API Endpoint: https://webhook.actionsflow.workers.dev/
https://webhook.actionsflow.workers.dev/<owner>/<repo>/<your-path>?__token=<your-github-personal-token>The default response of the webhook will use the github create-a-repository-dispatch-event API response. You can use search params __response_code, __response_content_type, __response_body to specify a custom response.
You can also use headers X-Github-Authorization instead of search params __token for more security.
The webhook also supports the cross-origin resource sharing request.
For example:
curl --request POST 'https://webhook.actionsflow.workers.dev/actionsflow/webhook2github/webhook/webhook?__token=<your-github-personal-token>' \
--header 'Content-Type: application/json' \
--data-raw '{ "key": "value"}'Specify response code example:
curl --request POST 'https://webhook.actionsflow.workers.dev/actionsflow/webhook2github/webhook/webhook?__token=<your-github-personal-token>&__response_code=200' \
--header 'Content-Type: application/json' \
--data-raw '{ "key": "value"}'An axios example:
varaxios=require('axios')vardata=JSON.stringify({key: 'value'})varconfig={method: 'post',url:
'https://webhook.actionsflow.workers.dev/actionsflow/webhook2github/webhook/webhook?__token=<your-github-personal-token>',data: data,}axios(config).then(function(response){console.log(JSON.stringify(response.data))}).catch(function(error){console.log(error)})This API will forward the following original webhook request:
https://webhook.actionsflow.workers.dev/<owner>/<repo>/<your-path>?__token=<your-github-personal-token>To https://api.github.com/repos/<owner>/<repo>/dispatches, with body:
{
"event_type": "webhook",
"client_payload": {
"path": "<your-path>",
"method": "<request.method>",
"headers": "<request.headers>",
"body": "<request body>"
}
}So Github actions will be triggered with repository_dispatch event.