logo
게시일

API란?

다른 언어로 읽기: English
작성자

API가 뭔가요?

다른 컴퓨터에 요청을 보내는 방법

배달앱에서 "주문하기" 버튼을 누르면 어떤 일이 일어날까요?

  1. 내 폰의 배달앱이 치킨집 서버(다른 컴퓨터)에 "치킨 1마리 주문이요" 라고 보냅니다
  2. 치킨집 서버가 "주문 접수 완료!" 라고 돌려보냅니다

이처럼 내 프로그램이 다른 컴퓨터(서버)에 요청을 보내고, 응답을 받는 방법 — 이것이 API 입니다.

다른 컴퓨터에 요청을 보내는 방법

어디서든 쓰이고 있습니다

날씨앱이 기상청 서버에 날씨를 물어볼 때도 API. 카카오맵이 지도 서버에 경로를 물어볼 때도 API. 인스타그램이 서버에 새 게시물을 요청할 때도 API.

앱 화면 뒤에서, 내 폰의 앱은 API로 다른 컴퓨터(서버)에 요청을 보내고 있습니다.

어디서든 쓰이는 API

핵심 포인트

API = 내 프로그램이 다른 컴퓨터(서버)에 요청을 보내고 응답을 받는 방법 여러분이 쓰는 앱들도 API로 서버에 요청을 보내고 있습니다.


API를 직접 쓴다는 것

보통은 앱이 알아서 해줍니다

배달앱을 쓸 때, "API로 치킨집 서버에 요청을 보내자"라고 생각하지 않습니다. 그냥 버튼을 누르면 앱이 알아서 합니다.

Gemini 웹사이트에서 이미지를 만들 때도 마찬가지입니다. 채팅창에 글을 쓰면, 웹사이트가 알아서 Google AI 서버에 API로 요청을 보냅니다.

"직접 쓴다" = 앱 없이 내 프로그램으로 요청하는 것

API를 직접 쓴다는 것은, 앱이나 웹사이트를 거치지 않고 내 프로그램이 서버에 직접 요청을 보내는 것입니다.

[보통]   나 → 앱/웹사이트 → API → 서버
[직접]   나 → 내 프로그램 → API → 서버

왜 직접 쓸까요? 앱이나 웹사이트에는 제한이 있기 때문입니다.

예를 들어 Gemini 채팅으로 이미지를 만들면:

  • 워터마크가 붙습니다
  • 한 번에 하나씩만 만들 수 있습니다
  • 세부 설정을 조절할 수 없습니다

API를 직접 쓰면 이런 제한 없이 자유롭게 쓸 수 있습니다.

보통 vs 직접

핵심 포인트

API를 직접 쓴다 = 앱 없이 내 프로그램으로 서버에 요청하는 것 앱의 제한 없이 자유롭게 사용할 수 있습니다.


API 키 — 나만의 출입증

API 키란?

API를 직접 쓰려면 API 키가 필요합니다.

API 키는 "나는 허가된 사용자입니다"를 증명하는 출입증입니다. 회사 빌딩에 사원증 없이 들어갈 수 없듯이, API 서버에도 출입증 없이는 접근할 수 없습니다.

AIzaSyB...xYz123 같은 긴 문자열이고, 요청을 보낼 때 이것을 함께 보내야 서버가 받아줍니다.

API 키 = 출입증

API 키는 비밀번호입니다

API 키를 발급받으면 안전하게 보관해야 합니다.

다른 사람이 내 API 키를 가져가면, 그 사람이 사용한 만큼의 요금이 나에게 청구됩니다. 신용카드 번호를 공유하는 것과 같습니다.

이렇게 하세요이렇게 하면 안 됩니다
.env 파일에 저장코드에 직접 입력
혼자만 알기카카오톡/슬랙에 공유
.gitignore.env 추가GitHub에 올리기
API 키 보안

API 키 발급받기

Gemini API 키는 Google AI Studio에서 무료로 발급받을 수 있습니다.

  1. aistudio.google.com/apikey 접속
  2. Google 계정으로 로그인
  3. "Create API Key" 버튼 클릭
  4. 생성된 키를 복사

프로젝트 폴더에 .env 파일을 만들고 저장합니다:

GEMINI=여기에_발급받은_API_키_붙여넣기
API 키 발급

핵심 포인트

  • API 키 = API 서버에 접근하기 위한 출입증
  • 절대 공유하지 마세요 — 다른 사람이 쓰면 요금이 나에게 청구됩니다
  • .env 파일에 저장하고, .gitignore에 추가하세요

정리

개념한 줄 설명
API내 프로그램이 다른 컴퓨터(서버)에 요청을 보내고 응답을 받는 방법
API를 직접 쓴다앱 없이 내 프로그램으로 서버에 요청하는 것
API 키API 서버에 접근하기 위한 출입증 (비밀번호처럼 보관)