Get a one-time upload URL
Returns a one-time URL to PUT a local file to. Send its id as image_upload_id, video_upload_id or audio_upload_id to POST /audit. Voice clips cannot be optimized.
POST
https://realpng.com/api/v1/uploadsX-API-Key<token>
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://realpng.com/api/v1/uploads" \ -H "X-API-Key: $REALPNG_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "size": 8804226, "content_type": "image/png" }'{ "id": "9b2e4c71-6d3a-4e8f-a1b5-3c7d0e9f2a48", "upload_url": "https://uploads.example/uploads/user_2pQx7Lk9cV3mT8rW1yZ4nB6hJ0d/9b2e4c71-6d3a-4e8f-a1b5-3c7d0e9f2a48?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIAU6GDYLPAHEXAMPLE%2F20260925%2Feu-north-1%2Fs3%2Faws4_request&X-Amz-Date=20260925T101500Z&X-Amz-Expires=600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCmV1LW5vcnRoLTEiRzBFAiEA3kQ9v2x7bJ1cW8nR4tY6uE0aZ5sD2fG3hK%2BmL7pQ%3D&X-Amz-Signature=3f1c9a2e7b4d8f6051c2a9e3d7b6f4a8c1e5d9b2f7a3c6e0d4b8a1f5c9e2d7b3&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost%3Bif-none-match&x-id=PutObject", "method": "PUT", "headers": { "Content-Type": "image/png", "If-None-Match": "*" }, "max_bytes": 26214400, "expires_at": "2026-09-25T10:25:00.000Z"}