---
title: "Watch 리스트 배치 — 전 심볼 active+state 1콜 (N+1 제거)"
method: GET
path: "/api/v1/public/signals/watch-grid"
tags: ["Public — Signals"]
---

# Watch 리스트 배치 — 전 심볼 active+state 1콜 (N+1 제거)

`GET /api/v1/public/signals/watch-grid`

## Request

- Base URL: `https://api.decker-ai.com`
- URL: `https://api.decker-ai.com/api/v1/public/signals/watch-grid`
- Auth: none declared

심볼 목록의 active_user_signal + state/live 를 서버에서 concurrent 계산해 1 응답으로. 프론트 28콜 팬아웃 대체. 단일소스(get_active_user_signal+compute_state_live 재사용). 신호 없는 심볼 = {active:null, live:null}.

## Query parameters

- `symbols` string, required: 쉼표구분 심볼 (최대 20)
- `tf` string: primary timeframe
- `mtf` string: MTF 스냅샷 TF

## Headers

- `X-API-Key` string, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/decker-ai/apis/decker-public-api.md) · [All operations](https://skmtc.dev/decker-ai/apis/decker-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/decker-ai/apis/decker-public-api/revisions/fc19ddf728bf?raw)
