정리와 실습
핵심 요약
- 는 한 프로그램이 다른 프로그램에 제공하는 요청 메뉴이며, 계약입니다: 합의된 방식으로 물으면 합의된 형태의 답을 받습니다. 대부분의 API 버그는 한쪽이 그 계약을 깨는 것입니다.
- 은 답이 돌아오는 형식입니다 — 키와 값으로 이뤄지고, 객체
{ }와 배열[ ]로 만들어지며 중첩됩니다. 데이터 타입은 string, number, boolean, null, array, object입니다. - 문자열 대 숫자 함정(
42대"42")과 누락 대null이 가장 흔한 형태 버그입니다. 이제 JSON을 읽을 수 있으니 — 뭔가 이상하게 굴면 타입을 확인하세요. - API 키는 비밀번호입니다. 절대 브라우저로 내보내지 말고, 절대 에 커밋하지 말고, 환경 변수에 저장하세요. 유출된 키는 즉시 교체(rotate)해야 합니다.
- 레이트 리밋(
429)과 사용량 과금을 조심하세요 — 유료 API를 쉼 없이 호출하는 AI 작성 루프가 네 자리 숫자 청구서를 만드는 길입니다. 먼저 요금을 읽고 예산 알림을 설정하세요.
직접 해보기
브라우저에서 키가 필요 없는 무료 API를 찾아보세요 — 예를 들어 새 탭에서 https://api.github.com/users/octocat을 바로 열어보세요. 원시 JSON 응답이 보일 겁니다. 양식처럼 읽으세요: 객체 { }를 골라내고, 배열이 있으면 찾고, 서로 다른 값 세 개의 타입을 이름 붙여 보세요(어느 게 문자열? 숫자? 불리언? null인 건 없나?). 이 장이 AI가 연결하는 모든 API 응답에 대해 하라고 하는 바로 그 점검을 방금 한 것입니다.
이 장의 프롬프트
나는 API를 호출하고 있고, 초보자로서 데이터 모양을 직접 점검해 보고 싶어.
여기 진짜 문서야 (예시 요청 + 예시 응답):
<API 문서의 예시 요청과 JSON 응답을 여기에 붙여넣어라>
- 파싱 코드를 작성하기 전에, 이 호출이 돌려주는 원본 JSON을 보여주고
키들, 그 타입들, 그리고 null이거나 빠질 수 있는 것을 짚어줘.
- 내 코드가 읽는 키들이 그 응답에 실제로 존재하는지 확인해줘.
- API key가 서버의 환경 변수에서 읽히도록 하고,
코드에 하드코딩하거나 브라우저로 보내지 않도록 해줘.
- 호출이 실패하거나, 시간 초과되거나, 속도 제한에 걸리면 어떻게 되는지 알려줘.