# Whisul Doc ## Docs - [POST /generate](https://docs.whisul.com/api-reference/compose.md): POST /generate accepts a text prompt and queues a music generation job. Returns a job_id and poll_url so you can track and retrieve the result. - [GET /jobs/{job_id}](https://docs.whisul.com/api-reference/get-job.md): GET /jobs/{job_id} returns the current status of a generation job. When completed, the response includes song URL, cover art, BPM, duration, and tags. - [Status Lifecycle](https://docs.whisul.com/api-reference/job-status.md): Reference for all Whisul job status values (running, completed, failed), when each occurs, and every field available in the completed result object. - [Authentication](https://docs.whisul.com/authentication.md): Get your Whisul API key, pass it in the Authorization: Bearer header on every request, and follow best practices to keep it secure. - [Status & Error Codes](https://docs.whisul.com/guides/error-handling.md): Understand every HTTP status code the Whisul API returns, handle errors programmatically, and apply best practices for rate limiting and retries. - [Make Music Like a Sandwich](https://docs.whisul.com/guides/generate-music.md): Learn how to write effective prompts and call POST /generate to submit a Whisul music generation job and receive a job ID for polling. - [Poll Job Status](https://docs.whisul.com/guides/polling-jobs.md): Learn how to check the status of a Whisul generation job, handle all three job states, and retrieve your finished song and cover art. - [Overview](https://docs.whisul.com/introduction.md): Whisul is streamlining the music experience lifecycle. Learn what the API returns and how the endpoints workflow works. - [Generate Music](https://docs.whisul.com/quickstart.md): Submit your first music generation request and retrieve a playable audio URL from the Whisul API by following this four-step guide. ## OpenAPI Specs - [openapi](https://docs.whisul.com/api-reference/openapi.json)