# List a machine's signals (https://docs.pulsarml.com/v1/api-reference/signals/get-machines-machine_uuid-signals)

Return the raw sensor signals a machine exposes, with the `public_id` needed to read samples.

A signal is one sensor channel read by the machine, named after the physical quantity it
carries (`current`, `count`, `product_count`, `cycle`, `energy`, `temperature`,
`pressure`, ...). A machine can expose several signals with the same `name`; their
`display_name` tells them apart. Soft-deleted signals and signals without a kind are not listed.

`description` is in English by default; pass `language=es` for Spanish. A description with no
translation in the requested language is returned in English.

## `GET /v1/machines/{machine_uuid}/signals`

Base URLs:
- `https://draco.prod.pulsarml.com` — Production
- `https://draco.dev.pulsarml.com` — Development (sandbox)

Authentication: send your API key in the `x-api-key` header.

### Path parameters

- `machine_uuid` (string (uuid), required) — The machine's `uuid`, as returned by `GET /v1/machines`.

### Query parameters

- `language` ("en" | "es", optional, default `"en"`) — Language of each signal's `description`. Falls back to English.

### Responses

#### 200 — The raw sensor signals exposed for this machine

Type: object (`GetMachineSignalsResponseV1`)

- `machine_uuid` (string (uuid), required, e.g. `"01748f7c-9688-7abc-8def-0123456789ab"`) — The machine's `uuid`, as returned by `GET /v1/machines`.
- `signals` (array of object, required)
  - `public_id` (string (uuid), required) — Identifier accepted by the signal data endpoint.
  - `name` (string, required) — Kind of physical quantity, for example `current`, `count` or `temperature`.
  - `display_name` (string, optional, nullable) — Label that tells apart two signals of the same kind on one machine.
  - `description` (string, optional, nullable) — What the signal measures, in the requested `language` (English if unavailable).

#### 422 — Validation Error

Type: object (`HTTPValidationError`)

- `detail` (array of object, optional)
  - `loc` (array of string | integer, required)
  - `msg` (string, required)
  - `type` (string, required)

### Example request

```bash
curl -X GET 'https://draco.prod.pulsarml.com/v1/machines/<machine_uuid>/signals' \
  -H 'x-api-key: <YOUR_API_KEY>'
```