## Create a Task

This example removes the guitar from a track. The `residual: true` flag returns everything except the guitar — your ready-to-use backing track:

### Code Examples

#### Python

```python
import requests

API_KEY = "your_api_key"
HEADERS = {"Content-Type": "application/json", "x-api-key": API_KEY}

response = requests.post(
    "https://api.audioshake.ai/tasks",
    headers=HEADERS,
    json={
        "assetId": "your_asset_id",
        "targets": [\
            {"model": "guitar", "formats": ["wav"], "residual": True}\
        ]
    }
)

task_id = response.json()["id"]
print(f"Task created: {task_id}")
```

#### JavaScript

```javascript
const API_KEY = "your_api_key";
const headers = { "Content-Type": "application/json", "x-api-key": API_KEY };

const createRes = await fetch("https://api.audioshake.ai/tasks", {
  method: "POST",
  headers,
  body: JSON.stringify({
    assetId: "your_asset_id",
    targets: [\
      { model: "guitar", formats: ["wav"], residual: true }\
    ]
  })
});

const { id: taskId } = await createRes.json();
console.log(`Task created: ${taskId}`);
```

#### cURL

```bash
curl -X POST "https://api.audioshake.ai/tasks" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $AUDIOSHAKE_API_KEY" \
  -d '{
    "assetId": "your_asset_id",
    "targets": [\
      { "model": "guitar", "formats": ["wav"], "residual": true }\
    ]
  }'
```

Check Task status to monitor progress and download results, or use webhooks to be notified when each target completes. With `residual: true`, you get two outputs — the isolated instrument and the residual (everything else). Use the residual as the backing track.

## Try other instruments

Swap the model to create practice tracks for any instrument:

| Model  | Practice Scenario       |
|--------|------------------------|
| `guitar` | Guitar play-along     |
| `bass`   | Bass play-along       |
| `drums`  | Drum play-along       |
| `piano`  | Piano / keys play-along |
| `vocals` | Vocal practice / sing-along |

## Use cases

- Build interactive practice apps for musicians
- Generate play-along tracks for music education platforms
- Create instrument-specific backing tracks at scale
- Power jam session features in music apps

**Instrument Separation**  
Extract all stems from a track instead of just one.

**Build Karaoke Tracks**  
Combine instrumental + lyrics for karaoke apps.
