{"service":"fal","action":"upload","description":"Stage a media file on the fal CDN before a fal generation. Returns { upload_url, file_url }: PUT the raw file bytes to upload_url (with the matching Content-Type header), then pass file_url as the image_url/video_url/audio_url param of the generation. Upload originals UNCOMPRESSED — never downscale or re-encode; high-res inputs cost nothing extra and compression degrades outputs.","price_cents":1,"price_dynamic":false,"method":"POST","auth":"Bearer (OAuth) — vaaya:pay scope required","response_shape":"{ ok, data, charged_cents, balance_remaining_cents, transaction_id }"}