# Get last signal

`GET https://api.cryptohopper.com/v1/hopper/{id}/signal/last`

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

Returns the log output of the last signal the hopper handled, as plain text.

OAuth scope: `read`

Returns the text "No signals matching your config received yet." when the hopper has not handled a signal. Not available for arbitrage, market maker, copy trading, grid and AI bots.

## Headers

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

## Path parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `id` | string | yes | Hopper ID. |

## Example request

```bash
curl "https://api.cryptohopper.com/v1/hopper/HOPPER_ID/signal/last" \
  -H "access-token: YOUR_ACCESS_TOKEN"
```

## Response

Example response (illustrative values):

```json
{
    "data": "2026-09-25 10:15:02 UTC - INFO - Received SELL signal from: Example Signals for coin: BTC, rate: 65000\n2026-09-25 10:15:02 UTC - INFO - Sell signal is already handled/received. Stopping here.\n"
}
```

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