GoodMemGoodMem
ReferenceAPIREST APIMemories

Download memory content

GET /v1/memories/{id}/content: Returns the original binary payload for a memory.

GET
/v1/memories/{id}/content

Returns the original binary payload for a memory. The response uses the memory's stored content type when available. Returns 404 when the memory does not have inline content; clients can check originalContentRef from the metadata endpoint to locate external content. Requires READ_MEMORY on the requested memory; authority may be granted through DIRECT_MEMBERS_OF its containing space. Supports one byte Range (206); invalid or unsatisfiable ranges return 416. For safe resume, send the original strong ETag in If-Match; a mismatch returns 412. HEAD returns headers without reading source bytes. Full text-like responses may use streaming gzip, which omits Content-Length. Range responses use identity encoding. A failure after delivery starts terminates the transfer.

Authorization

ApiKeyAuth
headerx-api-key<token>

Path Parameters

id*string

The UUID of the memory to download

Header Parameters

Range?string

Single byte range, for example bytes=1048576- or bytes=-1024

Accept-Encoding?string

Use identity for resumable byte ranges; gzip is available for full text-like responses

If-Match?string

Saved strong ETag, including quotes. A mismatch returns 412 before any source bytes are sent

GoodMem-Timeout-Ms?integer

Optional waiting budget in milliseconds, measured from REST servlet ingress and shared across all internal gRPC calls. Supply one decimal integer from 1 to 86400000. Omission adds no deadline. Existing shorter deadlines still apply. Expiry returns HTTP 504 before streaming starts; after streaming starts, no successful completion event is sent. Use SSE or opt into GoodMem-Stream-Terminal for an explicit terminal outcome. Retrieval work is cooperatively cancelled. An accepted mutation may still commit after timeout or disconnect; a failed response does not imply rollback.

Formatint64
Range1 <= value <= 86400000

Response Body

Memory content streamed successfully

response?fileapplication/octet-stream
Formatbinary
Example Request
curl -X GET 'https://your-goodmem-server.example.com/v1/memories/550e8400-e29b-41d4-a716-446655440000/content' \  -H 'GoodMem-Timeout-Ms: 30000'
Example Response
"string"