Files

Replace the document behind a link (dynamic links)

Swap the document behind a live link. UUID, short id, slug, QR, settings and readership history survive; contentVersion increments and the old file is kept as a revision. Pro plan, owner only. Un-burns a view-limited link; 410 if expired. Multipart, same shape as the upload endpoint (PDF, or Word/PowerPoint converted server-side); ?clearAnchors=false keeps page-anchored hotspots and notes despite the page mismatch (default clears them).

Accepts the same manage-token bearer lane as the settings endpoint, but since manage tokens act at the free tier, content replacement always answers 403 to them - it remains effectively owner-only.

post/api/v1/files/{uuid}/content

Request

  • Base URL: https://everypage.co
  • URL: https://everypage.co/api/v1/files/{uuid}/content
  • Auth: one of:
    • HTTP bearer
    • OAuth 2 (authorization code, authorization URL https://everypage.co/oauth/authorize, token URL https://everypage.co/oauth/token, scopes: files:write)
    • HTTP bearer

Query parameters

clearAnchorsboolean

Send false (or 0) to keep page-anchored hotspots and notes despite the page mismatch. Anything else - including omitting it - clears them; document-level notes always survive.

Response

Content replaced

uuidstring uuid
contentVersioninteger

The new content version (increments on every in-place replacement).

originalNamestring

The stored display name - the uploaded filename, with a .pdf extension after an Office conversion.

sizeinteger

Bytes of the stored PDF.

anchorsClearedboolean

Whether page-anchored hotspots and notes were cleared (the clearAnchors decision).

clearedHotspotsinteger

Hotspots removed by the replacement.

clearedNotesinteger

Page-anchored notes removed by the replacement.

messagestring

Example response

{
  "message": "Content replaced"
}

Changes

No recorded changes to this operation across all 1 revision of this API.