Reddit App API
EN

Reddit App API · 08 / 08

Save a reference without promising it will always be there

Plan an app-owned reading list with minimal saved references, clear dates and deliberate refreshes. Keep local removal separate from archive deletion or account actions.

Decide what Save means in your app

In this proposed hiking app, Save means keeping a selected historical reference on the current device for later reading. It is a feature for your application to implement, not an archive endpoint. The Reddit App API does not supply bookmarks, cross-device synchronization or a saved-list account. Explain that distinction before the walker relies on the list while travelling.

When a hiker saves a discussion for later, the app should store a minimal source reference rather than duplicating the entire post body. Where available, retain the record identifier, a validated source link and enough source context to recognize the selection. If you also retain a short user-selected excerpt, make that choice explicit and consider the content and third-party rights involved.

Keep three dates from becoming one

The app must distinguish between the record’s original creation time and the time the user saved it. It may also record when it fetched the selected material. A label such as Saved on this device describes an app action; it does not mean the discussion was written, checked or refreshed on that date. Leave an unavailable original date unknown.

Do not treat a saved title or excerpt as proof that the current source still says the same thing. Preserve the selection’s context without adding invented details. A comment saved from a partial result remains a reference to that record, not a complete thread or a guarantee that all surrounding replies will be available later.

Separate local opening from a new lookup

A local list can show the metadata or excerpt it already holds without calling the service again. Make a fresh lookup a deliberate action rather than silently refreshing every item whenever the list opens. Each successful retrieval costs one credit, and an explicit /v1/item?id=RECORD_ID lookup is a request too. The archive key still stays on your backend.

An item lookup can return a successful empty data array when no record is returned; do not assume the service uses 404 or 410 for a missing saved record. That empty success is charged. A failed request or lost response also does not prove that the item has been deleted. Use different labels for unavailable in this lookup, request failed and not checked again.

Offer local controls that match the promise

Provide a clear Remove from this device action for the proposed list. It should remove the locally stored reference and associated excerpt according to your app’s design. It does not delete a Reddit post, remove an archive record, close the service account or change its payment records. Do not present a local control as a wider deletion request.

If you choose a storage limit or expiry rule, explain and test that app rule rather than inventing a service retention deadline. Give readers a chance to understand what will be discarded. Device cleanup, browser storage restrictions or clearing app data can also remove local material. Avoid promising permanent access simply because an item was saved.

Make offline expectations small and explicit

A reference-only list may need a connection to open its source. A retained excerpt may be readable locally if your application implements and preserves it, but that does not make a whole discussion or map available offline. Show which content is actually stored before the walker leaves connectivity. This guide does not claim that such an offline feature has been built or tested.

Keep this app storage separate from the service website’s account session and latest-invoice reference. The widget can store an invoice id and user id per host; that mechanism is not a reading list and must never be repurposed to store the API key. Any backup, export or cross-device sync would be an additional feature for you to design and disclose. Return to /en/#field-notes for record mapping and request budgeting.