Skip to content

Conversation

@SangeetaMishr
Copy link
Collaborator

@SangeetaMishr SangeetaMishr commented Jan 30, 2026

Updated the Gupshup File Manager Links documentation with new formatting and additional details regarding media access and contact onboarding requirements.

Summary by CodeRabbit

  • Documentation
    • Removed FAQ content regarding bulk contact upload processes and guidelines
    • Added new documentation on Gupshup File Manager Links, covering media URL expiration, access methods, storage locations, and GCS integration options

✏️ Tip: You can customize this high-level summary in your review settings.

Updated the Gupshup File Manager Links documentation with new formatting and additional details regarding media access and contact onboarding requirements.
@SangeetaMishr SangeetaMishr self-assigned this Jan 30, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 30, 2026

📝 Walkthrough

Walkthrough

A documentation file describing the bulk contact upload process is removed and replaced with a new documentation page explaining Gupshup File Manager Links, media URL expiration, and media storage details in Glific's BigQuery integration.

Changes

Cohort / File(s) Summary
Documentation Updates
docs/8. FAQ/16. Add bulk contacts to my Glific account.md, docs/8. FAQ/16. Gupshup File Manager Links.md
Removed bulk contact upload documentation; added new documentation for Gupshup File Manager Links covering media URL expiration, media ID access, and BigQuery storage details.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

  • Remove old pages #406: Related through removal of the bulk contact upload documentation page that both PRs address.

Suggested reviewers

  • Fawas003
  • tanuprasad530

Poem

📚✨ Old docs fade, new knowledge takes flight,
Gupshup Links illuminate media's might,
BigQuery secrets now revealed with care,
FAQ grows wiser, documentation fair! 🐰

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately reflects the main change: adding/revising Gupshup File Manager Links documentation. However, the changeset includes a significant secondary change—removing bulk contact documentation—which is not mentioned in the title.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch Gupshup-File-Manager-Links.md

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link

@github-actions github-actions bot temporarily deployed to pull request January 30, 2026 06:40 Inactive
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@docs/8`. FAQ/16. Gupshup File Manager Links.md:
- Around line 13-20: Update the FAQ text to precisely distinguish Meta's and
Gupshup's behaviors: state that Meta/WhatsApp Cloud API media URLs expire after
~5 minutes and that media IDs are retained per Meta's docs (cite "WhatsApp Cloud
API – Media" and include the publication date), then clarify Gupshup-specific
limits by citing Gupshup's Media Management guide and its urlExpiry field and
explicitly say whether the "7 days" refers to Gupshup's access policy or webhook
retry windows; add publication dates for both references and replace the blanket
"Media IDs received via webhook are only available for download for 7 days" with
a sentence that reflects the sourced distinction (Meta retention vs Gupshup
warning about media older than 7 days).
🧹 Nitpick comments (1)
docs/8. FAQ/16. Gupshup File Manager Links.md (1)

1-9: Use semantic markup instead of nesting a <table> inside <h3>.

This is invalid HTML and can hurt accessibility/MDX rendering. Consider a markdown table or wrap the table in a <div> and keep headings as plain text.

♻️ Possible rewrite
-<h3>
- <table>
-  <tr>
-    <td><b>5 minutes read</b></td>
-    <td style={{ paddingLeft: '40px' }}><b>Level: Beginner </b></td>
-    <td style={{ paddingLeft: '40px' }}><b>Last Updated: January 2026</b></td>
-  </tr>
-</table>
-</h3>
+<div>
+  <table>
+    <tr>
+      <td><b>5 minutes read</b></td>
+      <td style={{ paddingLeft: '40px' }}><b>Level: Beginner</b></td>
+      <td style={{ paddingLeft: '40px' }}><b>Last Updated: January 2026</b></td>
+    </tr>
+  </table>
+</div>

Comment on lines +13 to +20
Even if images were uploaded less than 30 days ago, Gupshup file links may not be accessible. This is due to a change by Meta:

- All media URLs now expire after 5 minutes.

- To access the media again, you need to retrieve the URL using the media ID.

- Media IDs received via webhook are only available for download for 7 days. Reference: [WhatsApp Cloud API – Media](https://developers.facebook.com/docs/whatsapp/cloud-api/reference/media/)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🌐 Web query:

WhatsApp Cloud API media URL expiry 5 minutes official documentation

💡 Result:

Yes—per Meta’s WhatsApp Cloud API docs, the media download URL you get from “Retrieve Media URL” is only valid for 5 minutes, and after that you must retrieve a fresh media URL again before downloading. [1], [2]

Where it’s documented (official Meta/WhatsApp Cloud API reference as published on Meta’s Postman workspace):

  • Media → Retrieve Media URL → Response: “The URL is only valid for 5 minutes.” [1]
  • (Commonly repeated in the same reference flow) Media URLs “expire after 5 minutes” and must be re-retrieved if expired. [2]

Sources:
[1] (postman.com)
[2] (postman.com)

Citations:


🌐 Web query:

WhatsApp Cloud API webhook media ID availability 7 days retention

💡 Result:

The “7 days” limit in WhatsApp Cloud API is about webhook re-delivery, not how long a media ID is valid.

  • Webhook delivery failure retries: Meta will retry delivering failed webhooks for up to 7 days (exponential backoff). [1] (This was reduced from 30 days per platform notes.) [3]
  • Media ID / media object retention: Media uploaded/handled by Cloud API is encrypted and persists for 30 days (unless deleted earlier). [2]
  • Media download URL expiry: The media URL you fetch via GET /{MEDIA_ID} is only valid for 5 minutes; after that you must retrieve a new URL (the media ID itself doesn’t change). [2]

Implication: If you receive a media ID in a webhook but don’t successfully process it immediately, you can still usually download the media later (within the media’s retention window), but you’ll need to generate a fresh download URL when you’re ready—and you only get webhook retries for up to 7 days. [1][2]

Sources: [1] Meta Docs (Cloud API Overview – webhooks retry up to 7 days) https://meta-preview.mintlify.io/docs/whatsapp/cloud-api/overview, [2] WhatsApp Cloud API reference excerpt (media persists 30 days; media URLs expire in 5 minutes) https://gist.github.com/dani139/16d4c4ea272af8fe75cd28b89ab77ddb, [3] Cloud API changelog/spec note (webhook retry policy reduced to 7 days) https://versori-site-development.webflow.io/open-api-spec-library/cloudapi


🌐 Web query:

Gupshup file manager media link expiration official documentation

💡 Result:

Gupshup’s official docs indicate that File Manager media download links are time-limited:

  • In inbound WhatsApp media webhook payloads, Gupshup provides a downloadable url plus a urlExpiry field described as “The timestamp for the expiry of the media download url.” You should download the media before this timestamp. [1]
  • Gupshup’s Media Management guide explicitly warns that the Gupshup File Manager service URL expires, and recommends storing the media in your own storage and also storing the media’s expiry timestamp to avoid invalid calls. It also advises avoiding “outdated media” (notably “media older than 7 days” for Cloud API and On-prem). [2]

Sources:
[1] Gupshup Docs — “Media” (inbound media payload includes urlExpiry)
[2] Gupshup Partner Docs — “Media Management” (File Manager URL expires; guidance incl. “older than 7 days”)


Clarify the 7-day window and cite Gupshup's documentation directly.

The 5-minute media URL expiry is confirmed per Meta's WhatsApp Cloud API docs. However, the 7-day claim needs precision: per Meta's docs, media IDs persist for 30 days, but webhook delivery retries are only attempted for 7 days. Gupshup's own documentation includes a urlExpiry field and warns against accessing "media older than 7 days"—cite Gupshup's Media Management guide directly and clarify whether the 7-day limit is Gupshup-specific or refers to the webhook retry window. Add publication dates to time-sensitive claims.

🤖 Prompt for AI Agents
In `@docs/8`. FAQ/16. Gupshup File Manager Links.md around lines 13 - 20, Update
the FAQ text to precisely distinguish Meta's and Gupshup's behaviors: state that
Meta/WhatsApp Cloud API media URLs expire after ~5 minutes and that media IDs
are retained per Meta's docs (cite "WhatsApp Cloud API – Media" and include the
publication date), then clarify Gupshup-specific limits by citing Gupshup's
Media Management guide and its urlExpiry field and explicitly say whether the "7
days" refers to Gupshup's access policy or webhook retry windows; add
publication dates for both references and replace the blanket "Media IDs
received via webhook are only available for download for 7 days" with a sentence
that reflects the sourced distinction (Meta retention vs Gupshup warning about
media older than 7 days).

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