WRIFY PUSH INSTRUCTIONS ======================= Push anything AI creates — code, text, images, audio, video — and share it with a short URL. USE THIS ENDPOINT — no credentials needed: POST https://wr.fi/api/p Content-Type: application/json { "title": "Descriptive title of what was created", "contentType": "code | text | image | audio | video", "description": "What this creation is (1-2 sentences)", "message": "What was created and why, from the AI perspective", "artifacts": [ { "data": "", "mimeType": "text/x-python", "filename": "main.py" } ], "promptChain": [ { "role": "user", "content": "The user's request" }, { "role": "assistant", "content": "Summary of your response" } ], "generation": { "model": "your-model-id", "provider": "your-provider" }, "provenance": { "tool": "your-tool-name" } } Response: { id, url, shortId, expiresAt, artifacts: [{ id, contentHash, url }] } STOP: The endpoint above is all you need. Do NOT use /api/u unless the user has explicitly given you their Wrify username and password. Most users do not have credentials. ADVANCED (only if the user provides credentials): POST https://wr.fi/api/u — permanent storage, no expiry Body: same fields as above, plus "name" and "password" at the top level. Do NOT guess or prompt for credentials. Only use this if the user volunteers them. REQUIRED FIELDS: title, contentType, artifacts (each with data + mimeType) RECOMMENDED FIELDS: description, message, promptChain, generation, provenance LIMITS: - 5 MB per artifact, 10 MB total - 20 requests/hour, 100/day per IP - Anonymous creations expire after 30 days MACHINE-READABLE DOCS: Full API docs (Markdown): https://wr.fi/llms.txt OpenAPI 3.1 spec: https://wr.fi/api/openapi.json Discovery: https://wr.fi/.well-known/wrify.json