# Sonilo v1.1 Text to Music > Sonilo v1.1 text-to-music via Fal.AI. Generates up to 3 distinct music tracks (up to 600 seconds each) from a text description of the desired sound. - **Provider**: fal - **Model ID**: sonilo/v1.1/text-to-music - **Category**: music_generation - **Credits**: 520 per request - **Pricing Type**: formula ## API Endpoint Base URL: https://api.core.today/v1 ### Create Prediction POST /predictions ### Get Status GET /predictions/{job_id} ### Cancel DELETE /predictions/{job_id} ## Authentication Header: `X-API-Key: YOUR_API_KEY` ## Input Parameters - `duration` (integer, optional): Requested output duration in seconds (max 600). Also used for billing (one billable unit per second per sample, rounded up). (Default: `90`; Range: min: 1, max: 600) - `prompt` (string, **required**): Text prompt describing the music to generate. - `num_samples` (integer, optional): How many distinct music tracks to generate. (Default: `1`; Range: min: 1, max: 3) ## Example Request ```json { "model": "sonilo/v1.1/text-to-music", "input": { "duration": 90, "prompt": "A blend of R&B warmth, soul depth, neo-soul texture, gospel spirit, pop clarity, and jazz sophistication.", "num_samples": 1 } } ``` ## Response Format ```json { "job_id": "abc123", "status": "pending", "provider": "replicate", "model": "black-forest-labs/flux-schnell", "created_at": "2026-01-01T00:00:00Z", "result": null, "error": null } ``` Status values: `pending`, `processing`, `completed`, `failed`, `cancelled` ## Usage Flow 1. POST /predictions with model and input → receive job_id 2. Poll GET /predictions/{job_id} until status is `completed` or `failed` 3. Result contains output URL(s) or data ## Output Type json ## Tags music-generation, text-to-music, sonilo ## Documentation https://fal.ai/models/sonilo/v1.1/text-to-music