share

The API

A handful of endpoints, no authentication, and one secret that is shown exactly once.

Base URL: https://share.simplicidade.org/api/v1. Everything answers JSON. There is a machine-readable description of all of it:

curl 'https://share.simplicidade.org/api?openapi=1' -o share-openapi.json

Or ask for it by content type — application/json, application/openapi+json or application/vnd.oai.openapi+json all return the document rather than this page:

curl -H 'accept: application/openapi+json' 'https://share.simplicidade.org/api'

Worth knowing, because it is easy to assume otherwise: the OpenAPI Specification says nothing about how a description document should be served, and no openapi media type is registered with IANA. The types above are a convention that tooling grew. ?openapi=1 is the unambiguous way to ask.

Endpoints

MethodPathWhat it does
GET /api/v1/files List the live files for a session
POST /api/v1/files Upload a file and get the URL to hand over
GET /api/v1/files/{id} Metadata for one file
DELETE /api/v1/files/{id} Delete a file early
GET /api/v1/files/{id}/content The bytes
GET /api/v1/health Liveness

Uploading

Three body shapes, in order of how pleasant they are to type:

curl --data-binary @report.md   'https://share.simplicidade.org/api/v1/files?filename=report.md&session_id=$SESSION'

curl -F [email protected] 'https://share.simplicidade.org/api/v1/files'

curl -H content-type:application/json 'https://share.simplicidade.org/api/v1/files'   -d '{"filename":"doc.pdf","content_base64":"'"$(base64 -w0 doc.pdf)"'"}'

The response is 201 with the file's metadata. Three fields matter: url is what you give a person, content_url is what a machine fetches, and delete_password is the only copy you will ever get of it.

Deleting

Reading and deleting are separate capabilities. The share URL grants reading; the delete password grants removal, and no other call will tell you it. Lose it and the file simply expires on its own in 15 days.

curl -X DELETE -H "x-delete-password: $PASSWORD"   'https://share.simplicidade.org/api/v1/files/<id>'

A wrong password and a file that never existed get the same answer, with the same status. That is deliberate: it means this endpoint cannot be used to find out which ids exist.

Limits

How to use it covers the MCP side.