2교시 · 11:30 — 오늘의 고비

메타 개발자 앱 만들고
토큰 받기

제일 짜증나는 구간입니다. 그래서 함께 합니다. 강사도 인스타·스레드로 여러 번 해봤고, 매번 짜증났습니다.

🎁 2교시가 끝나면

먼저 전체 그림. 인스타그램에 프로그램이 게시물을 올리려면 메타가 발급한 액세스 토큰이라는 열쇠가 필요합니다. 열쇠를 받는 길은 이렇습니다.

  1. 메타 개발자 등록 (1회만)
  2. 앱 만들기 — "인스타그램에 접근하는 프로그램"이라는 신고서 같은 것
  3. 앱에 권한 달기 — 발행 권한이 기본 목록에 없어서 직접 추가해야 합니다 ← 숨은 함정 1
  4. 내 인스타 계정을 앱에 연결 — 바로 되면 통과, 안 되면 테스터 초대 + 수락 ← 숨은 함정 2
  5. 토큰 발급 — 버튼 한 번이면 60일 장기 토큰이 바로 나옵니다
💡 스레드 수업을 들으신 분: 흐름은 거의 같은데 use case와 권한 이름이 다릅니다. 그리고 인스타 쪽은 토큰 교환 단계가 없어서 마지막이 오히려 쉽습니다.
⚠️ 메타 화면은 문구와 위치가 수시로 바뀝니다. 이 매뉴얼과 화면이 조금 달라도 당황하지 마세요 — 굵은 글씨의 핵심 단어(Instagram, use case, 권한 이름 등)를 화면에서 찾으면 됩니다. 못 찾겠으면 스크린샷을 채팅에 올려주세요(📎).

포털에서 하는 일 (사람 담당)

1

메타 개발자 등록

developers.facebook.com에 접속해 우상단에서 페이스북 계정으로 로그인하세요. 처음이면 개발자 등록(Get Started) 절차가 나옵니다 — 이메일/전화 인증하고, 직업을 물으면 아무거나(예: "기타") 골라도 됩니다.

💡 "개발자"라는 말에 쫄 필요 없습니다. 등록엔 자격 심사가 없고, 오늘 우리가 만드는 앱은 내 계정에만 붙는 개인 도구입니다.
2

앱 만들기 — use case에서 Instagram 고르기

우상단 내 앱(My Apps)앱 만들기(Create App)를 누르세요. 진행 중에 use case(사용 사례)를 고르는 화면이 나오면 "Instagram에서 메시지 및 콘텐츠 관리(Manage messaging & content on Instagram)"를 선택합니다. 앱 이름은 아무거나(예: 내카드뉴스자동화), 연락용 이메일 확인하고 만들기를 누르면 끝.

⚠️ use case 화면에 Instagram 관련 항목이 여러 개일 수 있습니다. "메시지 및 콘텐츠 관리" 쪽을 고르세요. 비즈니스 인증·사업자등록·페이스북 페이지는 오늘 전혀 필요 없습니다. 그런 걸 요구하는 화면이 나왔다면 길을 잘못 든 것이니 손 들어주세요 — 앱은 몇 번이고 다시 만들 수 있습니다.
3

권한 확인 + 발행 권한 직접 추가 — 숨은 함정 1

앱 대시보드 왼쪽 메뉴에서 use case → Instagram → API setup with Instagram login(비슷한 이름) 화면으로 들어가세요. "Add all required permissions" 같은 버튼이 있으면 눌러서 기본 권한을 넣습니다.

그리고 — 여기가 함정인데 — 권한(Permissions and features) 페이지로 가서 아래 권한을 직접 추가(Add)하세요. 기본 목록에 안 들어 있습니다.

  • instagram_business_content_publish — 발행 권한. 이게 없으면 4교시에 발행이 안 됩니다.
⚠️ 이 권한을 빼먹으면 지금은 아무 문제 없어 보이다가 4교시 발행 순간에 permission 오류가 납니다. 그때 추가하면 토큰도 새로 발급받아야 해서 두 번 일합니다. 지금 확인하고 가세요.
4

내 인스타 계정 연결하기 — 숨은 함정 2

같은 설정 화면에 "Add account"(계정 추가) 버튼이 있습니다. 누르고 프로페셔널로 전환해둔 내 인스타그램 계정으로 로그인해 연결하세요.

⚠️ 여기서 오류가 나거나 계정이 안 붙으면: 왼쪽 메뉴 앱 역할(App Roles) → 역할(Roles)에서 사람 추가(Add People)Instagram 테스터(Instagram Tester)로 내 인스타 @아이디를 초대하세요. 그다음 📱 폰 또는 브라우저의 인스타그램에서 수락해야 합니다: 인스타그램 설정 → 웹사이트 권한(Website permissions) → 앱 및 웹사이트 → 테스터 초대(Tester Invites)에서 수락. 그 후 다시 "Add account"를 누르면 붙습니다.
⚠️ "프로페셔널 계정이 아닙니다" 류의 오류가 나면 수업 전 준비 ②의 프로페셔널 전환을 먼저 하세요 (1분).
💡 초대가 안 보이면: ① 초대할 때 입력한 @아이디 오타 ② 로그인된 인스타 계정이 초대한 그 계정이 맞는지 확인하세요. 계정 여러 개 쓰시는 분이 자주 여기서 걸립니다.
5

토큰 발급받기

계정이 연결되면 계정 이름 옆에 토큰 생성(Generate token) 버튼이 생깁니다. 누르면 인스타 계정을 확인하는 창이 뜨고 → 허용하면 긴 문자열(토큰)이 나옵니다. 복사 버튼으로 복사해두세요.

💡 이 토큰은 처음부터 60일짜리 장기 토큰입니다. 스레드처럼 단기→장기 교환 단계가 없습니다. 만료 전 갱신법은 4교시 운영 수칙에서 배웁니다.
⚠️ 이 문자열이 내 계정의 열쇠입니다. 카톡·메일·채팅창에 붙여넣지 마세요. 다음 단계에서 컴퓨터 안의 비밀보관함 파일에만 넣습니다. 수업 채팅에도 절대 올리지 마세요! (스크린샷 올릴 때 토큰이 찍히지 않게 조심)

비밀 넣기 — 값은 사람이, 나머지는 클로드

여기서부터 1교시에 깐 안전장치가 일부러 끼어듭니다. 클로드가 비밀파일(.env)을 cat·메모장으로 열려고 하면 안전장치가 막아요 — 고장이 아니라 설계입니다. 그래서 오늘의 분업은 이래요:

💡 이 한 줄이 오늘 배우는 가장 중요한 습관이에요: 비밀은 사람이 넣고, 클로드는 쓰기만 한다(화면엔 절대 안 띄우고). 그래서 토큰은 클로드 채팅에도, 수업 채팅에도 붙여넣지 않습니다.
6

비밀 폴더·파일 만들기 (클로드)

클로드 코드 입력창에 아래를 붙여넣으세요. 클로드가 빈 서식만 만듭니다 (값은 다음 스텝에서 사람이 넣어요).

홈 폴더에 .secrets 폴더를 만들고(이미 있으면 그대로 두고), 그 안에 instagram.env 파일을 아래 두 줄짜리 빈 서식으로 만들어줘. 값은 전부 비워두고, 이 파일 내용은 화면에 출력하지 마. INSTAGRAM_ACCESS_TOKEN= INSTAGRAM_USER_ID=
💡 폴더 이름 .secrets는 다른 토큰(스레드 등)도 모으는 내 비밀 서랍이에요. 점(.)으로 시작해서 평소엔 숨겨져 있습니다. 스레드 수업을 들었던 분은 이미 있는 폴더에 파일 하나가 더 생기는 것뿐입니다.
7

토큰 붙여넣기 (사람이 직접) ⭐

이제 그 파일을 직접 열어서 5번 토큰을 붙여넣습니다. 숨김 폴더라 아래 방법으로 여세요 (까만 창 안 씁니다).

🪟 윈도우: 메모장 실행 → 파일 → 열기 → 파일 이름 칸에 아래를 붙여넣고 열기. (파일이 안 보이면 오른쪽 아래 형식을 「모든 파일」로)

%USERPROFILE%\.secrets\instagram.env

🍎 맥: 텍스트편집기 실행 → 파일 → 열기Cmd+Shift+G → 아래 입력 → 열기.

~/.secrets/instagram.env

열리면 5번에서 복사한 토큰을 INSTAGRAM_ACCESS_TOKEN= 줄의 = 뒤에 붙여넣으세요. INSTAGRAM_USER_ID=는 비워두고 저장. (맥은 저장 전 포맷 → 일반 텍스트 확인)

🚨 이 토큰은 오직 이 파일에만. 클로드 채팅창·수업 채팅·카톡 어디에도 붙여넣지 마세요. (스크린샷에도 안 찍히게)
💡 맥이라면 파일을 잠가두면 더 안전해요. 클로드에게: "~/.secrets/instagram.env 권한을 600으로 잠가줘". (윈도우는 이미 내 사용자 폴더라 자동 보호됩니다.)
8

연결 확인 (클로드)

파일에 넣었으면 클로드에게 아래를 시키세요. (3교시 패키지를 아직 안 깔았어도 이 확인은 됩니다.)

홈 폴더 .secrets/instagram.env를 "set -a; source ~/.secrets/instagram.env; set +a" 로 불러와줘. 그다음 인스타그램 API(graph.instagram.com/v23.0/me?fields=user_id,username)를 조회해서 연결을 확인하고, 응답의 user_id를 INSTAGRAM_USER_ID= 줄에 채워줘. cat·grep으로 .env를 열지 말고 source로만 읽고, 토큰 값은 절대 출력하지 마. 끝나면 내 인스타 사용자 이름만 알려줘.

클로드가 "@내아이디로 연결됐어요"라고 답하면 — 오늘의 고비를 넘었습니다. 🎉 채팅창에 "토큰 발급 완료!"라고 자랑해주세요. 전원이 완료되면 점심 먹으러 갑니다. 🍚

💡 "source로만 읽어"가 핵심 — 안전장치는 cat·grep으로 .env 여는 건 막지만 source는 통과시켜서, 클로드가 비밀을 화면에 안 꺼내고 쓰기만 합니다.

막혔을 때

use case 목록에 Instagram이 없어요

개발자 등록 직후엔 목록이 덜 보이는 경우가 있습니다. 페이지 새로고침 → 그래도 없으면 로그아웃 후 재로그인. 계속 없으면 손 들어주세요, 함께 봅니다.

"비즈니스 인증이 필요합니다" / "페이스북 페이지를 연결하세요"가 떠요

오늘 과정엔 둘 다 필요 없습니다. 이 문구가 보이면 use case를 잘못 골랐거나(광고/마케팅 API 갈래) 다른 로그인 방식으로 들어간 겁니다. 앱을 지우고 2번부터 다시 하는 게 빠릅니다 — 앱은 몇 번이고 다시 만들 수 있습니다.

Add account를 눌렀는데 계정 연결이 안 돼요

① 계정이 프로페셔널이 아닌 경우 — 수업 전 준비 ②대로 전환 후 다시. ② 테스터 수락이 필요한 경우 — 4번의 Instagram Tester 초대 → 인스타그램 설정에서 수락을 하세요. ③ 브라우저에 로그인된 인스타 계정이 다른 계정인 경우 — 시크릿 창에서 다시 시도해보세요.

8번에서 토큰 오류가 나요 (Invalid OAuth / Session key invalid 등)

에러 문구가 무엇이든 대응은 같습니다 — 토큰이 무효거나 복사 중 잘린 경우예요. 5번에서 토큰을 새로 발급받아 7번에서 파일에 다시 붙여넣고 8번을 다시 시키면 됩니다. 토큰은 몇 번이고 다시 만들 수 있으니 아까워하지 마세요.

토큰을 실수로 채팅이나 카톡에 붙여넣었어요

괜찮습니다, 열쇠를 바꾸면 됩니다. 개발자 사이트에서 토큰을 새로 발급받으세요(5번). 걱정되면 손 들어주시면 같이 합니다.

강사는 왜 여러 번 했는데 매번 짜증났나요

메뉴 이름이 수시로 달라지고, 발행 권한이 기본 목록에 빠져 있고, 테스터 수락이 앱 깊숙이 숨어 있고, 문서가 영어이기 때문입니다. 오늘 여러분은 그 시행착오를 건너뛰고 있습니다. 그래도 짜증나면 정상입니다. 채팅에 화풀이하셔도 됩니다.