---
title: "Refresh attachment URLs"
method: POST
path: "/attachments/refresh-urls"
tags: ["Messages"]
---

# Refresh attachment URLs

`POST /attachments/refresh-urls`

Reissues the expiring signature on attachment URLs. Returns one entry per requested URL, in the order they were requested, each pairing the URL exactly as it was sent with a freshly signed copy. A URL that is not an attachment URL of this instance is returned unchanged. No membership or existence check is performed.

## Request body

- RefreshAttachmentUrlsRequest
  - `attachment_urls` string[], required — Attachment URLs to refresh (1-50 entries, each at most 2048 characters)

## Response `200`

Success

- RefreshAttachmentUrlsResponse
  - `refreshed_urls` RefreshedAttachmentUrl[], required — One entry per requested URL, in the order they were requested
    - `original` string, required — The requested URL, echoed back unchanged
    - `refreshed` string, required — The same URL carrying a fresh signature, or the original when it is not an attachment URL of ours

## Other responses

- `400` — Bad Request - The request was malformed or contained invalid data
- `401` — Unauthorized - Authentication is required or the token is invalid
- `403` — Forbidden - You do not have permission to perform this action
- `429` — Too Many Requests - You are being rate limited
- `500` — Internal Server Error - An unexpected error occurred

## Changes

> 18 revisions in range; 1 not diffed.

- **2026-09-19** `a54a86d62719` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/fluxer/apis/fluxer-api/changes/attachments/refresh-urls/post.md)

---

[API](https://skmtc.dev/fluxer/apis/fluxer-api.md) · [All operations](https://skmtc.dev/fluxer/apis/fluxer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/fluxer/apis/fluxer-api/revisions/1ae25d65c617?raw)
