API Route는 HTTP·업무·입출력 세 층으로 나눈다
라우트 파일을 얇게 유지하면 전송 형식, 업무 규칙, 외부 기술이 서로의 변경을 끌고 다니지 않는다.
Handler
method·session·schema를 해석하고 결과를 status로 변환
Validated input
parseUserInput을 통과한 UserInput DTO와 검증된 id만 전달
Service
중복 확인·상태 전이·트랜잭션 같은 업무 규칙
Adapter
DB·파일·외부 API 세부사항을 포트 뒤에 숨김
핵심Service가 NextResponse나 SQL을 직접 알면 경계가 섞인다. Handler는 번역, Service는 정책, Adapter는 입출력에 집중한다.