APIFuseAPIFuse
  • Providers
  • 변경 내역
  • Playground
  • 대시보드
  • APIFuse 문서
    • 시작하기
    • 인증과 connection
    • 플레이그라운드
    • OpenAPI와 스키마 아티팩트
    • MCP 엔드포인트
    • 개발자 MCP 가이드
    • 스키마 번들과 변환 경고
    • Next.js App Router 연동
    • FastAPI 연동
    • 에러 처리
    • 자주 묻는 질문
    • 추가 리소스
APIFuseAPIFuse

Next.js App Router 연동

APIFuse에서 생성된 스키마 아티팩트를 서버 사이드 Next.js App Router 코드에서 사용하는 방법입니다.

Next.js App Router 연동

개발자 MCP로 operation을 탐색하고 생성된 TypeScript·Zod 아티팩트를 가져온 뒤, 서버 사이드 App Router 코드에서 APIFuse를 호출합니다. 클라이언트 컴포넌트에서 시크릿 키로 APIFuse를 직접 호출하지 마세요.

서버 전용 원칙

APIFuse API 키와 조직 인증 정보는 서버 전용 코드에 보관하세요. 브라우저 컴포넌트에는 애플리케이션 고유의 DTO만 전달하고, provider 자격 증명이나 connection 참조는 노출하지 마세요.

1. 개발자 MCP로 아티팩트 가져오기

코딩 에이전트에게 다음을 요청하세요.

  1. apifuse_dev_search_operations로 operation을 검색합니다.
  2. apifuse_dev_get_operation_spec으로 operation 계약을 가져옵니다.
  3. apifuse_dev_get_schema_bundle로 TypeScript·Zod 대상 아티팩트를 가져옵니다.

생성된 아티팩트는 서버 전용 모듈에 커밋합니다. 예: src/server/apifuse/generated/weather.ts

2. 서버 라우트 만들기

// app/api/weather/route.ts
import { NextResponse } from "next/server";
import {
  ShortForecastInputSchema,
  ShortForecastOutputSchema,
} from "@/server/apifuse/generated/weather";

export async function POST(request: Request) {
  const input = ShortForecastInputSchema.parse(await request.json());

  const response = await fetch(
    "https://api.apifuse.com/v1/korea-weather/short-forecast",
    {
      method: "POST",
      headers: {
        Authorization: `Bearer ${process.env.APIFUSE_API_KEY}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify(input),
      cache: "no-store",
    },
  );

  if (!response.ok) {
    return NextResponse.json(
      { error: "apifuse_request_failed" },
      { status: response.status },
    );
  }

  const parsed = ShortForecastOutputSchema.parse(await response.json());
  return NextResponse.json({ forecast: parsed });
}

3. 클라이언트 컴포넌트에서 호출하기

"use client";

export async function loadForecast() {
  const response = await fetch("/api/weather", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ baseDate: "20260525", baseTime: "0500", gridX: 60, gridY: 127 }),
  });

  if (!response.ok) throw new Error("Forecast request failed");
  return response.json();
}

안전 체크리스트

  • 서버 경계에서 생성된 Zod 스키마를 사용하세요.
  • APIFUSE_API_KEY는 서버 환경 변수에 보관하세요.
  • provider 자격 증명, 조직 인증 정보, connection 식별자를 브라우저에 노출하지 마세요.
  • apifuse_dev_* 도구는 탐색·스키마·가이드 용도이며, provider operation은 서버 사이드 게이트웨이 호출로 실행합니다.
  • bundleHash 또는 targetArtifactHash 값이 변경되면 애플리케이션 코드를 재생성하고 검토하세요.

On this page

Next.js App Router 연동1. 개발자 MCP로 아티팩트 가져오기2. 서버 라우트 만들기3. 클라이언트 컴포넌트에서 호출하기안전 체크리스트
APIFuseAPIFuse
  • Providers
  • 변경 내역
  • Playground
  • 대시보드
  • APIFuse 문서
    • 시작하기
    • 인증과 connection
    • 플레이그라운드
    • OpenAPI와 스키마 아티팩트
    • MCP 엔드포인트
    • 개발자 MCP 가이드
    • 스키마 번들과 변환 경고
    • Next.js App Router 연동
    • FastAPI 연동
    • 에러 처리
    • 자주 묻는 질문
    • 추가 리소스
Providers
  • API Reference
    • 아마존 재팬
    • 배달의민족 프로바이더
    • Buyee
    • 캐치테이블 식당 검색 및 예약
    • 차란 커머스
    • Daangn 공개 매물
    • 다이소 상품 및 매장 데이터
    • Danawa price comparison
    • Demaecan
    • Ekitan
    • 여기어때 국내 숙소
    • Google Flights
    • 한강 수위
    • 핫페퍼 구루메
    • 현대카드
    • Jalan
    • 일본 국회 회의록
    • 일본 재난 알림
    • 일본 EDINET 공시
    • 일본 e-Gov 법령
    • 일본 e-Stat
    • 일본 GSI 지오코딩
    • 일본 e-Gov 오픈데이터
    • Japan Post ZIP
    • 일본 공휴일
    • JMA Weather
    • 카카오맵 장소 검색과 길찾기
    • 카카오 T 택시 호출
    • 한국 주소 검색
    • AirKorea Real-time Air Pollution
    • 한국 아파트 전월세 실거래가
    • 한국 아파트 매매 실거래가
    • 나라장터 입찰공고
    • 건축물대장 (Korea Building Register)
    • Korea Business Verify
    • 대한민국 고캠핑
    • 한국 DART 기업 재무정보
    • DART 기업 정보
    • 한눈에 보는 문화정보
    • 한국 재난 알림
    • Korea Emergency Hospital
    • 한국 ETF
    • 한국 전기차 충전소
    • 한국 주유소 유가
    • Korea Holiday
    • Korea Hospital Info
    • Korea Land Price
    • 식약처 의약품 안전정보
    • 식약처 식품 안전정보
    • 쓰레기 배출 정보
    • Korea National Law Search and Lookup
    • NEIS 급식 메뉴
    • Carrier List and Delivery Tracking
    • Korea Pharmacy
    • 한국 인구 통계
    • 한국 주식시장지수
    • 한국 주식시세
    • 한국 열차 시간표
    • 한국 기상청 예보 데이터
    • Korea Weather Forecast
    • 대한민국 복지서비스
    • 창업진흥원 K-Startup
    • LH 청약 공고
    • Market Kurly product data
    • Mercari
    • 모두의주차장
    • 네이버 블로그 검색
    • 네이버 항공권 검색
    • 네이버 지도
    • 네이버 뉴스 검색
    • NOL 숙소
    • 오늘의집 스토어 및 콘텐츠
    • 라쿠텐 이치바
    • 라쿠텐 트래블
    • SEC EDGAR Filings
    • 서울 따릉이
    • 서울 실시간 혼잡도
    • 서울 지하철 실시간 도착
    • Shinhan Bank
    • 신한카드
    • Skiplagged
    • SUUMO
    • Swing Taxi
    • Tabelog
    • TableCheck
    • Weverse Provider
    • 야후! 쇼핑 (일본)
    • Yogiyo
    • 조조타운
APIFuseAPIFuse

Next.js App Router 연동

APIFuse에서 생성된 스키마 아티팩트를 서버 사이드 Next.js App Router 코드에서 사용하는 방법입니다.

Next.js App Router 연동

개발자 MCP로 operation을 탐색하고 생성된 TypeScript·Zod 아티팩트를 가져온 뒤, 서버 사이드 App Router 코드에서 APIFuse를 호출합니다. 클라이언트 컴포넌트에서 시크릿 키로 APIFuse를 직접 호출하지 마세요.

서버 전용 원칙

APIFuse API 키와 조직 인증 정보는 서버 전용 코드에 보관하세요. 브라우저 컴포넌트에는 애플리케이션 고유의 DTO만 전달하고, provider 자격 증명이나 connection 참조는 노출하지 마세요.

1. 개발자 MCP로 아티팩트 가져오기

코딩 에이전트에게 다음을 요청하세요.

  1. apifuse_dev_search_operations로 operation을 검색합니다.
  2. apifuse_dev_get_operation_spec으로 operation 계약을 가져옵니다.
  3. apifuse_dev_get_schema_bundle로 TypeScript·Zod 대상 아티팩트를 가져옵니다.

생성된 아티팩트는 서버 전용 모듈에 커밋합니다. 예: src/server/apifuse/generated/weather.ts

2. 서버 라우트 만들기

// app/api/weather/route.ts
import { NextResponse } from "next/server";
import {
  ShortForecastInputSchema,
  ShortForecastOutputSchema,
} from "@/server/apifuse/generated/weather";

export async function POST(request: Request) {
  const input = ShortForecastInputSchema.parse(await request.json());

  const response = await fetch(
    "https://api.apifuse.com/v1/korea-weather/short-forecast",
    {
      method: "POST",
      headers: {
        Authorization: `Bearer ${process.env.APIFUSE_API_KEY}`,
        "Content-Type": "application/json",
      },
      body: JSON.stringify(input),
      cache: "no-store",
    },
  );

  if (!response.ok) {
    return NextResponse.json(
      { error: "apifuse_request_failed" },
      { status: response.status },
    );
  }

  const parsed = ShortForecastOutputSchema.parse(await response.json());
  return NextResponse.json({ forecast: parsed });
}

3. 클라이언트 컴포넌트에서 호출하기

"use client";

export async function loadForecast() {
  const response = await fetch("/api/weather", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({ baseDate: "20260525", baseTime: "0500", gridX: 60, gridY: 127 }),
  });

  if (!response.ok) throw new Error("Forecast request failed");
  return response.json();
}

안전 체크리스트

  • 서버 경계에서 생성된 Zod 스키마를 사용하세요.
  • APIFUSE_API_KEY는 서버 환경 변수에 보관하세요.
  • provider 자격 증명, 조직 인증 정보, connection 식별자를 브라우저에 노출하지 마세요.
  • apifuse_dev_* 도구는 탐색·스키마·가이드 용도이며, provider operation은 서버 사이드 게이트웨이 호출로 실행합니다.
  • bundleHash 또는 targetArtifactHash 값이 변경되면 애플리케이션 코드를 재생성하고 검토하세요.

On this page

Next.js App Router 연동1. 개발자 MCP로 아티팩트 가져오기2. 서버 라우트 만들기3. 클라이언트 컴포넌트에서 호출하기안전 체크리스트