Skip to content

instagram: add 1 doc-sourced sample (instagram/messages) - #81

Merged
garethx merged 1 commit into
mainfrom
feature/samples-instagram-messenger
Nov 5, 2026
Merged

garethx merged 1 commit into
mainfrom
feature/samples-instagram-messenger

Conversation

@garethx

@garethx garethx commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

Requested by Gareth · project thread

Before: hookdeck/webhook-registry#140 (merged) added the instagram and messenger rows for the two Meta source types in hookdeck/core#6195. This repo had no samples for either.

After: providers/instagram/ holds 1 doc-sourced sample, latest/instagram.messages.json. It is the "Admin text" messages notice from Meta's Instagram Messaging webhooks page: a messaging[] element with message.admin_text and handoff_reason: purchase_intent. Its IDs are Meta's own placeholders (IGID, IGSID), so it holds no PII and nothing was substituted. index.json has topic_identifier: null and provenance docs, like providers/facebook/.

This PR covers instagram only. The registry has no samples for messenger: samples-doc/providers/messenger/ doesn't exist at registry main @ ba2f81af, and the contents API returns 404 for it. #140 explains why. Every Messenger example is a messaging[] fragment or uses <PSID>-style placeholders. The group_feed example is wrapped in a top-level array.

How: I copied samples-doc/providers/instagram/ from a fresh clone of registry main @ ba2f81af as-is. diff -r against the source reports no differences.

Topic and file stem: the sample's topic is instagram/messages, which contains a slash. safeStem in topic.ts (used by requestReceiver.ts) gives instagram.messages. The registry's harvest_instagram.py gives the same stem (topic.replace("/", ".")), and so does its shared safe_stem rule. So the file name matches the receiver's stem and there is no mismatch.

With topic_identifier: null, a live capture would be saved as untitled-<md5>, the same as facebook today. A capture-ready identifier would need key-presence logic, which is out of scope for this PR.

Checks: yarn install --frozen-lockfile worked. yarn compile succeeded, and public/providers.json lists instagram latest as docs (sourced 2026-11-05). yarn test gave 26 passed, 0 failed.


Generated by Claude Code

Copied as-is from hookdeck/webhook-registry samples-doc/providers/instagram/
at main @ ba2f81af (#140). The sample is the admin-text messages notice from
the Instagram Messaging webhooks page. safeStem("instagram/messages") gives
instagram.messages, matching the registry's file stem. messenger has no
samples in the registry, so nothing is added for it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Mp6z12EgZRFuEhuPqFwxMT
@garethx garethx self-assigned this Nov 5, 2026
@vercel

vercel Bot commented Nov 5, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
webhook-samples Ready Ready Preview Nov 5, 2026 2:33pm UTC

Request Review

@garethx
garethx merged commit a59eb3e into main Nov 5, 2026
3 checks passed
@garethx
garethx deleted the feature/samples-instagram-messenger branch November 5, 2026 15:04

This branch was successfully deployed

1 active deployment
Preview — ec981e49 Deployed Nov 5, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants