# Get available signals

`GET https://api.cryptohopper.com/v1/market/signals`

Part of [Marketplace](https://www.cryptohopper.com/api-documentation/api-reference/marketplace.md) in the Cryptohopper API reference.

Returns the signal providers you can subscribe to in the marketplace, sorted by name. Only signals that are sold in the mobile app or are free are included.

exchanges is a comma separated list of exchange keys.

## Headers

| Name | Type | Required | Description |
|---|---|---|---|
| `access-token` | string | yes | The OAuth access token of the user. |

## Example request

```bash
curl "https://api.cryptohopper.com/v1/market/signals" \
  -H "access-token: YOUR_ACCESS_TOKEN"
```

## Response

Example response (illustrative values):

```json
{
    "data": [
        {
            "signal_id": "42",
            "price": "29.00",
            "price_id": "12",
            "plan_id": "55",
            "name": "Alpha Signals",
            "description": "Momentum signals on major USDT pairs.",
            "logo": "https://cdn.cryptohopper.com/images/signals/42.png",
            "type": "signal",
            "feature_image": "https://cdn.cryptohopper.com/images/signals/42_feature.png",
            "subscription_price": "29.00",
            "subscription_fee_currency": "USD",
            "subscription_fee": "29.00",
            "exchanges": "binance,kucoin",
            "performance_pct": "12.50",
            "rating": "4.25000",
            "total_votes": "8",
            "risk_level": "medium",
            "link": "https://www.cryptohopper.com/signaller?signaller_id=42",
            "available_in_app": "1"
        }
    ]
}
```

Status codes: 200, 400. Errors return JSON with `status`, `error` and `message`, plus a numeric `code` when the error comes from the API itself rather than the gateway.
