API 키
제가 코딩 막 시작했을 때, 지도 위에 데이터를 찍어보는 작은 토이 프로젝트를 했던 적이 있어요. 그때 개발자 콘솔에서 뭔가 길쭉한 문자열 하나를 발급받아서 코드에 한 줄 넣었을 뿐인데, 제 허술한 웹페이지에 네이버 지도가 마법처럼 뜨는 걸 보고 “아 이게 그 유명한 API 키구나” 하고 처음 제대로 체감했었습니다.
개발자가 아닌 분들 눈에는 그냥 의미 없는 암호처럼 보일 수도 있는데요, API 키는 큰 서비스의 기능을 내 프로젝트로 안전하게 끌고 올 때 쓰는 ‘디지털 만능 열쇠’ 같은 존재라고 보시면 됩니다. 애플리케이션의 신분증 역할도 하고, 경우에 따라서는 사용량을 재는 “결제 수단” 같은 역할까지 겸하더라고요.
이 글에서는 제가 프로젝트 하면서 직접 삽질해보고 깨달았던 것들 기준으로 API 키가 뭔지부터, 서비스별 발급 흐름, 그리고 키 종류별로 뭐가 다른지까지 너무 딱딱하지 않게 풀어볼게요.
API 키는 어떻게 발급받나요?
API 키 발급은 보통 서비스 제공자의 개발자 전용 사이트(콘솔, 대시보드)에서 비슷한 흐름으로 진행됩니다. 대부분 “계정 만들고 로그인 → 프로젝트 만들기 → 쓸 API 켜기 → 키 생성” 이 순서로 가요.
먼저 개발자용 계정을 만들고 로그인합니다. 그다음에 내가 진행할 ‘프로젝트’를 하나 만들게 되는데요, 이건 API 쓰는 목적별로 작업 공간을 나눠두는 거라고 생각하시면 편합니다. 예를 들어 ‘개인 블로그 지도 연동’이랑 ‘회사 업무 자동화’를 한 프로젝트에 섞어두면, 나중에 권한이랑 과금이 뒤엉켜서 관리가 진짜 피곤해지더라고요.
프로젝트를 만들었으면, 그 안에서 원하는 API 기능을 활성화하는 게 핵심입니다. 구글 지도를 쓰고 싶으면 Google Maps 쪽 API를 켜고, 유튜브 데이터를 가져오고 싶으면 YouTube Data API를 켜는 식이죠. 준비가 끝나면 ‘사용자 인증 정보’나 ‘API Keys’ 같은 메뉴에서 API 키를 생성할 수 있습니다.
처음엔 좀 복잡해 보일 수 있는데, 몇 번만 해보면 “아 다 비슷한 패턴이네” 하고 금방 익숙해져요. 다만 금융 정보처럼 민감한 데이터를 다루는 서비스는, 키 발급 자체에 서류 제출이나 승인 절차가 붙는 경우도 있습니다. 이런 건 진짜로 공식 문서 한 번 확인하고 가시는 게 마음 편해요.
| 단계 | 설명 |
|---|---|
| 1단계 | 서비스 개발자 계정 생성 및 로그인 (ex. Google Cloud, OpenAI Platform) |
| 2단계 | 프로젝트 생성 (API 사용 목적에 따른 작업 공간 분리) |
| 3단계 | 사용하려는 특정 API 기능 활성화 (ex. Maps JavaScript API, YouTube Data API) |
| 4단계 | API 키 생성 및 발급 (보안 강화를 위한 제한 설정 권장) |

구글 API 키 발급
구글 API 키는 Google Cloud Console에서 프로젝트를 만들고, 원하는 API를 켠 다음 발급받습니다. 구글은 지도, 유튜브, 번역 같은 서비스가 워낙 많아서, 개발자 입장에서는 API로 기능을 가져다 쓰는 일이 정말 흔하죠.
흐름은 이렇습니다. Google Cloud Console 들어가서 구글 계정으로 로그인하고, 새 프로젝트를 하나 만듭니다. 프로젝트는 구글 자원을 관리하는 기본 단위라서, API 사용량이랑 비용을 프로젝트별로 따로 추적할 수 있어요. 이게 나중에 진짜 편합니다.
프로젝트 만들었으면 왼쪽 메뉴에서 ‘API 및 서비스’로 가서 ‘라이브러리’를 눌러주세요. 여기가 구글 API 백화점 같은 곳이에요. 여기서 ‘Maps JavaScript API’ 같은 걸 검색해서 ‘사용 설정’ 눌러 활성화하면 됩니다.
API를 켰으면 다시 ‘사용자 인증 정보’ 탭으로 돌아와서 ‘+ 사용자 인증 정보 만들기’ 누르고 ‘API 키’를 선택하면 키가 바로 나옵니다. 근데 여기서 끝내면 안 돼요.
저도 예전에 개인 블로그에 지도 붙이겠다고 키 만들어놓고 제한을 하나도 안 걸어뒀다가, 며칠 뒤에 무단 요청이 잔뜩 찍힌 거 보고 식겁한 적이 있거든요. 보안 설정이 좀 귀찮긴 한데, 요금 폭탄 막는 안전장치라고 생각하시면 됩니다. 발급된 키에는 애플리케이션 제한과 API 제한을 꼭 걸어주세요. 특정 도메인이나 서버 IP에서만 쓰게 잠그고, 지도만 쓸 거면 지도 API만 허용해두는 식으로요. 이렇게 해두면 마음이 훨씬 편합니다.

제미나이 API 키 발급
제미나이(Gemini)는 글쓰기, 대화, 코딩, 이미지 이해까지 다 하는 구글 쪽 AI 모델이죠. 제미나이 API 키는 Google AI Studio 또는 Google Cloud Console의 Vertex AI 쪽에서 발급받을 수 있습니다.
개인적으로 처음 AI 쪽 붙여보는 분이면, 복잡한 설정 없이 시작 가능한 Google AI Studio가 훨씬 편하더라고요. 구글 계정만 있으면 몇 번 클릭으로 API 키가 바로 나오고, 아이디어를 빠르게 프로토타입으로 만들기 좋습니다. 빠른 실험은 AI Studio, 상용 서비스는 Vertex AI 이런 느낌으로 이해하시면 됩니다.
반대로 실제 사용자 서비스로 가거나 트래픽이 커질 것 같으면 Vertex AI가 정답에 가깝습니다. 대신 Cloud 프로젝트 만들고 결제 계정 연결하는 등 초기 세팅이 좀 더 들어가요. 그리고 제미나이는 모델 버전(Gemini 1.0 Pro, 1.5 Pro 등)에 따라 가격이랑 성능이 달라서, 키 만들기 전에 어떤 모델 쓸지 공식 문서로 한 번 체크하고 가는 게 좋습니다.

GPT API 키 발급
GPT API 키는 OpenAI의 GPT-4 같은 언어 모델이나 DALL·E 같은 이미지 모델에 접근할 때 필요한 열쇠입니다. OpenAI 플랫폼에서 계정 만들고 로그인한 다음, 프로필 메뉴에서 ‘API keys’로 들어가 ‘Create new secret key’를 누르면 생성됩니다.
여기서 진짜 중요한 포인트가 하나 있어요. 키는 화면에 뜰 때 딱 한 번만 전체를 볼 수 있습니다. 저도 처음에 무심코 창 닫았다가 “어? 키 어디 갔지?” 하고 다시 발급받았던 적이 있어요. 키가 보이면 바로 복사해서 비밀번호 관리 프로그램 같은 안전한 곳에 저장해두세요.
그리고 OpenAI는 종량제라서, 보통 Billing에서 결제 수단 등록을 해야 실제로 제대로 쓰게 됩니다. 예상치 못한 요금 폭탄 피하려면 월별 지출 한도도 같이 걸어두는 게 좋습니다. 과금 단위가 토큰(Token)인데, 쉽게 말해 처리한 텍스트 양이라고 보시면 돼요. 내 돈이랑 직결되는 키라서, GitHub 같은 공개 저장소에 올리는 건 절대 금지입니다. 서버 환경 변수나 시크릿 매니저에 숨겨두고 쓰셔야 해요.

주요 서비스별 API 키 종류
서비스마다 API 키의 종류나 관리 방식, 권한 모델이 꽤 다릅니다. API 키라고 다 같은 키가 아니에요. 아파트 현관 키, 자동차 키, 금고 키가 다 다른 것처럼요.
구글처럼 서비스가 많은 곳은 인증 방식도 여러 갈래로 나뉘고, 클로드나 노션처럼 특정 서비스에 집중한 곳은 그 서비스에 맞춘 키 시스템을 갖고 있습니다. 그래서 내가 쓰려는 서비스의 인증 방식이 어떤 성격인지 이걸 먼저 잡고 가는 게 중요하더라고요.

구글 API 키, 어떻게 활용하고 관리해야 할까요?
구글 API 키는 구글 지도, 유튜브, 드라이브 같은 다양한 구글 서비스에 접근하는 기본 인증 수단입니다. 이 키 하나로 여러 기능을 붙일 수 있고, Google Cloud Console에서 프로젝트 단위로 관리됩니다. 프로젝트별로 “이 키는 지도만”, “저 키는 유튜브만” 이런 식으로 쪼개서 운영할 수 있어서, 여러 프로젝트 굴릴 때 특히 편합니다.
근데 구글 쪽 인증을 제대로 이해하려면 API 키 말고도 두 가지를 같이 알아두셔야 해요. OAuth 2.0이랑 서비스 계정입니다. 이 셋 차이를 구분할 줄 아는 게, 구글 서비스 연동에서 사고 안 나는 지름길이더라고요. 비유로 정리해보면 이런 느낌입니다.
| 인증 방식 | 역할 | 예시 |
|---|---|---|
| API 키 | ‘프로그램/프로젝트’의 신분증 역할 (공개 데이터 접근) | 도서관의 ‘자료 검색 컴퓨터’에 접근해서 공개된 자료를 보는 느낌입니다. |
| OAuth 2.0 | ‘사용자’의 허락을 받아 개인 데이터 접근 | 사용자가 “내 서재 책 좀 빌려가도 됩니다”라고 허락해줘서 구글 드라이브 파일에 접근하는 상황이죠. |
| 서비스 계정 | ‘프로그램/서버’ 자체에 부여하는 신분증 (사용자 개입 없이 작업) | 사람이 아니라 서버가 쓰는 ‘사서 전용 아이디’로, 서버 혼자 클라우드에 파일 저장하는 케이스입니다. |

구글 AI 스튜디오 API 키
구글 AI 스튜디오 API 키는 제미나이 모델을 빠르게 테스트할 수 있게 Google AI Studio에서 제공하는 키입니다. 이 키의 매력은 딱 하나예요. 클라우드 세팅이나 결제 연결 없이, 구글 로그인만 하면 바로 발급된다는 점입니다. 학습용, 빠른 프로토타입용으로는 진짜 편합니다.
AI Studio에서 결과가 괜찮게 나오면 ‘Get API key’ 버튼으로 키를 만들 수 있어요. 다만 무료 발급이 가능해도 분당 요청 제한 같은 제약이 있을 수 있어서 상업적으로 쓰실 거면 정책을 꼭 확인하셔야 합니다. 구글도 보통 “AI Studio에서 검증하고, 서비스는 Vertex AI로 옮기세요” 이런 흐름을 안내하더라고요.

제미나이 API 키
제미나이 API 키는 텍스트뿐 아니라 이미지 처리 같은 멀티모달 기능까지 폭넓게 쓰기 위한 인증 수단입니다. 제미나이의 특징이 멀티모달이라서, “이미지 올려놓고 질문하기”, “코드 짜달라고 하기”, “복잡한 추론 시키기” 같은 걸 한 번에 엮어서 앱을 만들 수 있더라고요. 발급 경로는 앞에서 말한 것처럼 AI Studio(빠른 실험)랑 Vertex AI(상용) 두 갈래로 보시면 됩니다.
모델도 Nano, Pro, Ultra처럼 크기가 나뉘어서 용도에 맞게 고를 수 있습니다. 경차/세단/슈퍼카 고르는 느낌이랑 비슷해요. 성능이 올라가면 비용도 같이 올라가는 경우가 많으니, 서비스 목적이랑 예산을 같이 보고 고르시는 게 안전합니다. 그리고 스트리밍 응답, 함수 호출(Function Calling) 같은 기능도 지원해서, 제대로 붙이면 꽤 그럴듯한 AI 기능을 만들 수 있어요.

제미니 API 키
‘제미니 API 키’는 공식 표기인 ‘제미나이 API 키’랑 같은 말이고, 현업에서 편하게 부르는 표현입니다. 커뮤니티나 동료들이 “제미니 키 발급했어요” 이러면 그냥 제미나이 키 얘기하는 거라고 보시면 돼요. 저도 처음엔 “제미나이? 제미니?” 헷갈렸는데, 내용은 같습니다. 핵심은 이름이 아니라, 그 키가 어떤 서비스(모델)에 대한 접근 권한인지 정확히 아는 거예요.
gemini API 키
‘gemini API 키’처럼 소문자로 쓰는 건 보통 코드 예제나 기술 문서에서 나오는 식별자 표기입니다. 예를 들어 환경 변수 이름을 GEMINI_API_KEY로 두거나, gemini_api_key 같은 변수명을 쓰는 식이죠. API 엔드포인트에도 .../models/gemini-pro:generateContent처럼 소문자 gemini가 들어가는 경우가 많고요.
그리고 이 키 자체는 대소문자 구분하는 긴 문자열이라서, 복사/붙여넣기 할 때 오타 안 나게 조심하셔야 합니다. 전송은 당연히 HTTPS로 하셔야 하고요.
클로드 API 키
클로드 API 키는 앤스로픽(Anthropic)의 대화형 AI ‘클로드’에 접근하기 위한 키입니다. 클로드는 안전성과 유용성을 강조하는 쪽으로 색깔이 좀 뚜렷하더라고요. 발급은 앤스로픽 개발자 콘솔에서 진행하고, OpenAI처럼 키는 생성 시점에만 전체가 보이는 경우가 많아서 바로 안전한 곳에 저장해두셔야 합니다.
모델 라인업도 Opus, Sonnet, Haiku처럼 성능/속도/비용이 갈립니다. 앤스로픽은 ‘헌법 AI(Constitutional AI)’라는 훈련 방식도 내세우는데요.
> 쉽게 말해, AI가 유해하거나 편향된 말을 안 하도록 “착하게 행동하는 규칙”을 먼저 가르쳐두고, 그 규칙에 맞춰 답을 만들게 하는 방식입니다.
그리고 클로드 쪽에서 많이들 감탄하는 포인트가 문맥(Context) 길이가 큰 편이라는 점이에요. 긴 문서 다루는 작업에서 특히 강하다는 얘기가 괜히 나오는 게 아니더라고요.

노션 API 키
노션 API 키는 노션의 데이터베이스나 페이지를 코드로 제어해서 반복 작업을 자동화할 때 씁니다. 앞에서 본 AI 키들이 “모델 호출” 쪽이라면, 노션 키는 “업무 도구 자동화” 쪽에 더 가깝다고 보시면 돼요. 사람이 노션 앱 켜서 클릭하던 걸 코드로 대신하는 거죠.
발급은 노션 개발자 포털에서 ‘통합(Integration)’을 만들면서 진행합니다. 이 통합이 내 프로그램이랑 내 노션 워크스페이스를 연결해주는 다리 역할을 해요. 저도 개인적으로는 매일 아침 특정 데이터베이스를 확인해서 오늘 마감인 항목을 슬랙으로 자동 전송하는 내부 통합을 만들어서 쓰고 있는데, 이거 한 번 해두면 “아 내가 왜 이걸 수작업으로 했지” 싶어집니다.
내 워크스페이스 안에서만 쓰는 건 내부 통합, 다른 사람들도 설치해서 쓰게 배포하는 건 공개 통합이고요. 공개 통합은 보통 OAuth 2.0 같은 더 빡센 인증 흐름이 붙습니다. 노션은 모든 콘텐츠가 블록(Block) 단위라서, API로 블록을 조립하듯이 페이지를 만들고 수정할 수 있어요. 민감한 데이터도 다룰 수 있으니, 권한은 꼭 필요한 것만 주는 게 안전합니다.
—
여기까지 보면 감이 오실 거예요. API 키는 그냥 “문자열 하나”가 아니라, 서비스랑 내 앱이 서로 신분 확인하고 비용 정산하고 권한을 나누는 출발점입니다. 발급 방법도 중요하지만, 제한 설정이랑 보관 습관이 더 중요할 때가 많더라고요.
처음엔 키 발급 화면만 봐도 머리 아플 수 있는데, 몇 번만 직접 해보면 금방 익숙해집니다. 중간에 삽질하면 그게 또 실력으로 남아요. 막히는 포인트 있으면 언제든 질문 던져주세요. 같이 보면서 정리해보면 됩니다.

FAQ
Q1: API 키를 제 GitHub 저장소에 올려도 괜찮을까요?
A1: 절대 안 됩니다. 이건 진짜 몇 번을 말해도 부족해요. API 키를 GitHub 같은 공개 저장소에 올리는 건 집 열쇠를 현관문 손잡이에 걸어두는 거랑 똑같습니다. 누가 가져가서 요금 폭탄 내거나, 서비스 망가뜨리는 건 순식간이에요. 서버 환경 변수나 AWS Secrets Manager 같은 시크릿 관리 도구로 보관하세요.
Q2: API 키와 OAuth 2.0은 무엇이 다른가요?
A2: API 키는 보통 “프로그램/프로젝트가 누구냐”를 증명하는 신분증에 가깝습니다. 반면 OAuth 2.0은 “사용자가 허락했다”를 증명하는 방식이에요. 공개 데이터 접근은 API 키로도 충분한 경우가 많고, 사용자 개인 데이터(캘린더, 드라이브 등) 들어가면 OAuth 2.0이 일반적입니다.
Q3: API 키를 발급받는 것은 항상 무료인가요?
A3: 키 발급 자체는 무료인 경우가 많지만, 그 키로 API를 호출하는 건 유료일 수 있습니다. 서비스마다 정책이 달라요. 무료 구간(Free Tier)을 주는 곳도 있고, OpenAI처럼 사용한 만큼 과금하는 곳도 많습니다. 본격적으로 붙이기 전에 가격 정책은 꼭 확인하세요.
Q4: API 키의 보안을 강화하려면 어떻게 해야 하나요?
A4: 핵심만 잡으면 됩니다. 필요한 권한만 주고(최소 권한), 허용된 도메인/서버 IP로 제한 걸고, 코드에 박아넣지 말고 환경 변수나 보안 저장소 쓰고, 가능하면 주기적으로 키 교체(Key Rotation)도 해주세요. 이거 해두면 사고 확률이 확 내려갑니다.
Q5: 여러 서비스에서 API 키를 발급받았는데, 모두 똑같이 사용하면 되나요?
A5: 아닙니다. 어떤 데는 Authorization 헤더에 넣고, 어떤 데는 X-API-Key 헤더를 쓰고, 어떤 데는 URL에 ?key=YOUR_API_KEY처럼 붙이기도 합니다. 제일 정확한 건 항상 공식 문서예요. “내가 아는 방식”으로 우기면 여기서 삽질 시작합니다.
안녕하세요, 코드 치는 게 일상인 12년 차 백엔드 개발자입니다. 😉
복잡해 보이는 API 공식 문서, 제가 초보자 눈높이에서 아주 쉽게 풀어드릴게요.
막히는 게 있다면 언제든 물어보세요. 같이 삽질하며 성장해 봅시다! 💪



