feat(instagram-style): media comments + long-lived token refresh - #58
Merged
Conversation
GET /v21.0/{media_id}/comments — the Graph comment-reader surface:
authorizes via the access_token query param (how real SDK clients
call it) or bearer, synthesizes two deterministic per-media comments
(id/text/username/timestamp/like_count), honors the Graph since
filter, 404s unknown media.
GET /v21.0/refresh_access_token — long-lived token refresh
(grant_type=ig_refresh_token): validates the presented token, mints a
fresh 60-day token for the same user, old token stays valid until its
own expiry. Literal route precedes /v21.0/{container_id}.
Prepares the adapter for real client integrations whose comment-ingest
and token-refresh paths need somewhere faithful to run.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes the Graph-surface gaps a real client integration needs beyond publish/insights:
access_tokenquery param (how SDK clients actually call this endpoint family) or the bearer header; two deterministic per-media comments (id/text/username/timestamp/like_count), Graphsincefilter, 404 on unknown media, 401 code 190 on unknown tokens.grant_type=ig_refresh_tokenmints a fresh 60-day token for the same user; the old token keeps working until its own expiry (real semantics). Literal route ordered before/v21.0/{container_id}.Gates: full suite, adapter lint (94), gofmt, vet — green; instagram lifecycle test extended with comment determinism, since-filter, refresh flow + negatives.