Skip to content

webhook server responds "forbidden" but posts to the channel anyway #23

@qrkourier

Description

@qrkourier

This GH Action sometimes gets a FORBIDDEN (403) response code from Mattermost. Still, the notification is posted in the correct channel, and the GH Actions step succeeds.

Example response from Mattermost in the GH Actions run log:

Posting webhook to *** with headers {'Content-Type': 'application/json'} and data {"username": "webforeman", "icon_url": "https://avatars.githubusercontent.com/u/59738659?v=4", "channel": "github-sig-core", "props": {"card": "```json\n{\n  \"action\": \"started\",\n  \"organization\": {\n    \"avatar_url\": \"https://avatars.githubusercontent.com/u/65675559?v=4\",\n    \"description\": \"OpenZiti is a programmable network overlay and associated edge components for application-embedded, zero-trust networking\",\n    \"events_url\": \"https://api.github.com/orgs/openziti/events\",\n    \"hooks_url\": \"https://api.github.com/orgs/openziti/hooks\",\n    \"id\": 65675559,\n    \"issues_url\": \"https://api.github.com/orgs/openziti/issues\",\n    \"login\": \"openziti\",\n    \"members_url\": \"https://api.github.com/orgs/openziti/members{/member}\",\n    \"node_id\": \"MDEyOk9yZ2FuaXphdGlvbjY1Njc1NTU5\",\n    \"public_members_url\": \"https://api.github.com/orgs/openziti/public_members{/member}\",\n    \"repos_ur
Response Status: 403
{'Date': 'Fri, 22 Aug 2025 15:55:13 GMT', 'Content-Type': 'application/json', 'Content-Length': '248', 'Connection': 'keep-alive', 'Permissions-Policy': '', 'Referrer-Policy': 'no-referrer', 'Vary': 'Origin, Accept-Encoding', 'X-Content-Type-Options': 'nosniff', 'X-Request-Id': 'ipgotnzw4pgcumftmbbs8uem9a', 'X-Version-Id': '10.10.1.16150363294.7fe8b6f06932c8f66c6456104a6c3975.true'}
b'{"id":"web.incoming_webhook.general.app_error","message":"Failed to handle the payload of media type application/json for incoming webhook tfdgpq4mebdf3bjm8fpifdf83y.","detailed_error":"","request_id":"ipgotnzw4pgcumftmbbs8uem9a","status_code":403}'

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions