← 노드 한 장 전체#10 · Loop Over Items

Loop Over Items

한꺼번에 말고 3개씩 나눠 보내기

이 글은 이런 분께요청 제한이 있는 API에 항목을 몇 개씩 나눠 보내야 하는 분
Loop Over Items 영상 표지

1분 영상은 @workflow.hanjang 에 순서대로 공개돼요

JSON 받기

요청 12개, 한 번에 보내도 될까요?

많은 API엔 "1초에 몇 번까지" 같은 제한이 있어요. 그럴 땐 Loop Over Items 노드로 나눠 보내면 됩니다.

먼저 결과부터

Loop Over Items는 항목을 묶음으로 나눠 처리한다. 요청 제한이 있을 때만 필요하고, 12개 도시를 3개씩 4번 + Wait 1초.
우리가 실제로 돌린 기록 · 실행 #71365 · 2026-10-24
Loop Over Items 실제 n8n 화면 1
우리가 실제로 돌린 n8n 화면 (실행 #71365, 2026-10-24)
Loop Over Items 실제 n8n 화면 2
우리가 실제로 돌린 n8n 화면 (실행 #71365, 2026-10-24)

따라 하기

아래 설정값은 이 영상에 나온 워크플로우 JSON에서 그대로 가져왔어요. n8n 캔버스에서 +를 눌러 노드를 순서대로 추가하고 같은 값을 넣으면 돼요. 빨간 제목이 이번 편의 주인공 노드예요. 표 왼쪽은 n8n 편집기에 보이는 칸 이름, 오른쪽은 실제로 넣은 값이에요. 직접 입력하기 번거로우면 JSON을 받아 ⋯ → Import from File로 가져오세요.

Step 1. Manual Trigger 노드 추가이름: Run manually

설정 없이 그대로 추가해요.

Step 2. Code 노드 추가이름: 12 cities

JavaScript
const cities = [
  ['Seoul',37.57,126.98],['Tokyo',35.68,139.69],['Beijing',39.90,116.41],
  ['Singapore',1.35,103.82],['Mumbai',19.08,72.88],['Dubai',25.20,55.27],
  ['London',51.51,-0.13],['Paris',48.86,2.35],['Berlin',52.52,13.40],
  ['New York',40.71,-74.01],['Sao Paulo',-23.55,-46.63],['Sydney',-33.87,151.21],
];
return cities.map(([city, lat, lon]) => ({ json: { city, lat, lon } }));

Step 3. Loop Over Items 노드 추가이름: Loop Over Items

Batch Size3

Step 4. Code 노드 추가이름: All done

JavaScript
const rows = $input.all().map(i => i.json);
const hot = rows.reduce((a, b) => (b.temp_c > a.temp_c ? b : a));
const cold = rows.reduce((a, b) => (b.temp_c < a.temp_c ? b : a));
return [{ json: { cities: rows.length, hottest: `${hot.city} ${hot.temp_c}°C`, coldest: `${cold.city} ${cold.temp_c}°C` } }];

Step 5. HTTP Request 노드 추가이름: Get weather

URLhttps://api.open-meteo.com/v1/forecast?latitude={{ $json.lat }}&longitude={{ $json.lon }}&current=temperature_2m

Step 6. Edit Fields (Set) 노드 추가이름: Keep city + temp

필드 1city · string · {{ $('Loop Over Items').item.json.city }}
필드 2temp_c · number · {{ $json.current.temperature_2m }}
필드 3checked_at · string · {{ $now.setZone('Asia/Seoul').toFormat('HH:mm:ss') }}

Step 7. Wait 노드 추가이름: Wait 1s

Wait Amount1
Wait UnitSeconds

가져와서 쓸 때 확인할 것

노드의 모든 옵션은 n8n 공식 문서에서 볼 수 있어요.