Instagram을 Social Quack에 연결하기
내 Instagram 계정에 게시물을 예약하세요 — Facebook 페이지도, App Review도 필요 없고, 한 번만 들이면 되는 몇 분입니다.
Instagram은 예약 도구가 내 것이 아니면 나를 대신해 글을 올리도록 허용하지 않습니다. 그래서 한 번만 해야 하는 일이, Meta 사이트에서 내 소유의 작고 무료인 개발자 앱을 만들고 거기서 값 두 개를 Social Quack에 붙여 넣는 것입니다. 그 값들은 암호화되어 내 Mac에만 저장되며, 개발자 앱이 내 것이므로 Instagram의 게시 한도도 온전히 내 것입니다 — 남의 계정과 한 통에 묶여 제한을 받거나 차단될 일이 없습니다.
Social Quack과 브라우저를 나란히 놓고 작업하세요. 브라우저에는 Meta 개발자 사이트를, 그 옆에는 앱을 띄워 두시면 됩니다. Meta 사이트에 붙여 넣어야 하는 값에는 앱 안에 모두 복사 버튼이 붙어 있습니다.
1. Instagram 계정이 프로페셔널 계정이어야 합니다
Social Quack은 프로페셔널 계정 — 비즈니스 또는 크리에이터 — 에 게시합니다. 휴대폰의 Instagram 앱에서 Settings → Account type(설정 → 계정 유형)을 확인하세요. 개인 계정은 Instagram의 게시 도구로 아예 올릴 수 없으니, 무엇보다 먼저 확인할 만한 항목입니다.
Facebook 페이지는 필요 없고, 계정을 페이지에 연결해 둘 필요도 없습니다.
2. Social Quack에서 키 입력 창 열기
앱에서 사이드바의 Channels(채널)를 클릭하고 Add a channel(채널 추가) 아래에서 Instagram을 찾아 Set up app keys(앱 키 설정)를 클릭하세요.
그 창은 열어 두세요. 곧 필요한 세 가지가 들어 있습니다.
- 이 페이지와 같은 단계의 요약;
- 리디렉션 URL — 로그인 후 Instagram이 여러분을 되돌려 보낼 주소입니다. Social Quack이 각자의 환경에 맞는 주소를 계산해 복사 버튼과 함께 보여 주니, 그럴듯해 보이는 주소를 직접 입력하지 말고 언제나 여기서 가져오세요;
- 붙여 넣을 두 개의 입력란:
Instagram App ID와Instagram App Secret.
3. Meta 앱에 Instagram 사용 사례 추가하기
- https://developers.facebook.com 으로 가서 Facebook 계정으로 로그인하세요.
- 앱을 여세요. Threads를 연결하려고 이미 만들어 둔 앱이 있다면 그 앱을 그대로 쓰시면 됩니다 — 두 번째 앱은 필요 없습니다.
- 만든 적이 없으신가요? My Apps → Create app에서 이름은 아무거나 정하고, 앱이 무엇을 해야 하는지 Meta가 물으면 사용 사례 "Manage messaging & content on Instagram"을 고른 뒤, business portfolio를 연결하거나 새로 만들라고 하면 그렇게 하세요.
- 앱 안에서 Add use case → "Manage messaging & content on Instagram"을 선택하세요 — 앱을 만들면서 방금 골랐다면 이미 들어 있습니다.
이 사용 사례는 예전에 Instagram API with Instagram Login이라고 불렸습니다. 같은 것이고 이름만 바뀌었으니, 오래된 글에서 옛 이름을 보셨더라도 제대로 찾아오신 것입니다.
4. 돌아올 주소를 앱에 알려 주기
그 사용 사례 안에서 API setup with Instagram login → Set up Instagram business login을 열고 입력란 세 개를 채우세요.
| Meta 페이지의 입력란 | 무엇을 넣나 |
|---|---|
| OAuth redirect URIs | Social Quack이 Set up app keys 창에서 복사 버튼과 함께 보여 주는 리디렉션 URL. 거기서 복사하세요 — 다시 타이핑하지 마세요. |
| Deauthorize URL | https://socialquack.com/oauth/callback/uninstall |
| Data deletion URL | https://socialquack.com/oauth/callback/delete |
페이지를 저장하세요. 리디렉션 URL은 한 글자도 틀리지 않아야 하므로 직접 입력하지 말고 언제나 복사하세요 — Instagram 로그인 페이지가 더 진행하지 않는 가장 흔한 이유가 바로 이것입니다.
그 주소가 내 컴퓨터가 아니라
socialquack.com에 있어도 당황하지 마세요. Instagram은 보안되지 않은 평범한 주소로 되돌려 보내는 로그인을 거부하기 때문에, Social Quack이 등록할 보안 주소를 제공하고 로그인은 그대로 내 Mac에서 돌아가는 앱으로 넘겨줍니다.
5. 키 두 개를 Social Quack에 복사하기
같은 페이지에서 Instagram App ID와 Instagram App Secret을 찾아 Social Quack의 해당 입력란에 붙여 넣으세요.
이것은 대시보드 다른 곳에 표시되는 Meta App ID 및 시크릿이 아닙니다. 비슷해 보이지만 서로 다른 값입니다. API setup with Instagram login에서 가져오세요.
Save(저장)를 클릭하세요. Social Quack이 두 값을 암호화해 Mac에 저장하고 곧바로 브라우저에서 Instagram 로그인 페이지를 엽니다. 아직 6단계를 하지 않으셨다면 이 첫 로그인은 실패합니다 — 예상된 일이며, 6단계가 그 해결책입니다.
6단계를 마친 뒤 로그인이 정상적으로 진행되면, Instagram이 세 가지 권한 승인을 요청합니다.
| 권한 | 어디에 쓰이나 |
|---|---|
instagram_business_basic |
사용자 이름과 프로필 사진을 읽어, 계정이 Connected 아래에 나타나게 합니다 |
instagram_business_content_publish |
예약한 게시물을 올립니다 |
instagram_business_manage_comments |
여러 부분으로 된 게시물의 나머지 부분을 댓글로 답니다 |
셋 다 승인하세요. 세 번째 권한이 있어야 여러 부분으로 된 게시물의 뒷부분이 댓글로 달립니다 — 없으면 게시물 자체는 나가지만 "Posted, but adding the comment thread failed"로 실패합니다.
6. 내 계정을 Instagram Tester로 추가하고 — 초대를 수락하기
여러분의 앱은 개발 모드에 머무르며(8단계 참고), 그 모드에서 Instagram은 초대한 계정만 앱을 쓰게 해 줍니다. 내 계정도 그중 하나여야 합니다.
- Meta 앱에서 App roles → Roles → Add people으로 들어가 내 Instagram 계정을 Instagram Tester로 추가하세요.
- 그런 다음 휴대폰의 Instagram 앱에서 초대를 수락하세요: Settings → Website permissions → Apps and websites → Tester invites.
수락하기 전까지 초대는 대기 중으로 남고 5단계의 로그인은 실패합니다. 첫 연결 시도가 오류와 함께 되돌아왔다면 거의 언제나 이것이 원인입니다 — 초대를 수락한 뒤 Instagram 카드의 Connect(연결)를 다시 클릭하세요.
7. 미디어 호스팅 — Instagram 게시물에는 반드시 사진이나 동영상이 필요합니다
Instagram의 두 가지 규칙이 이 단계를 결정합니다. 글만 있는 게시물은 존재하지 않고, Instagram은 사진과 동영상을 업로드로 받는 대신 공개된 웹 주소에서 가져갑니다.
Social Quack에서 Settings → Media hosting(설정 → 미디어 호스팅)을 여세요. 라이선스가 활성화되어 있으면 Social Quack이 파일을 대신 호스팅하므로 설정할 것이 없습니다. 파일 복사본은 게시물이 나가는 순간에만 만들어지고 하루 안에 삭제되며, 원본은 내 Mac을 떠나지 않습니다. 직접 파일을 서비스하고 싶으시다면 Use your own bucket instead(내 버킷을 대신 사용)에서 S3 호환 스토리지를 쓸 수 있습니다 — 사용자 지정 도메인을 붙인 Cloudflare R2 버킷이 아주 잘 맞습니다.
글만 있는 게시물이 불가능하므로, Social Quack은 나중에 실패하게 두지 않고 예약하는 순간에 막습니다: "Instagram has no text-only posts — attach an image or video". 그리고 파일은 첨부했는데 호스팅할 곳이 없으면 예정 시각에 "This platform needs a public URL for media…"와 함께 실패합니다 — 라이선스를 활성화하거나 여기서 내 버킷을 설정하세요.
8. 무언가 올려 보기
Compose(작성)를 열고 Instagram 채널을 체크한 다음 사진이나 동영상을 첨부하고 문구를 써서 예약하세요.
- 문구는 2,200자까지 쓸 수 있습니다.
- 사진이나 동영상은 10개까지 첨부할 수 있고, 두 개 이상이면 캐러셀이 됩니다.
- 동영상 하나만 올리면 릴스로 게시됩니다.
- 여러 부분으로 된 게시물의 나머지 부분은 댓글이 됩니다. 첫 번째 추가 부분은 게시물의 댓글로 달리고, 그 뒤의 부분들은 그 댓글의 답글로 달립니다.
- 게시되면 Queue(예약 목록)에서 Instagram의 실제 게시물로 바로 이어집니다.
이것으로 전부입니다. 앱은 개발 모드에 머무르며, 내 계정에 게시하는 데는 그것으로 충분합니다 — 통과해야 할 App Review가 없습니다. 연결은 계속 게시하는 동안 스스로 갱신됩니다. Instagram이 60일짜리 이용권을 발급하는데, 그 이용권의 마지막 주에 이 계정으로 게시물이 처음 나갈 때 Social Quack이 새 것으로 바꿔 둡니다. 두 달을 쉬면 이용권은 그대로 만료되고, Instagram이 계정을 다시 연결하라고 요청합니다.
문제가 생겼을 때
| 이런 증상 | 무슨 뜻인가 | 어떻게 하나 |
|---|---|---|
| Instagram 로그인이 실패하거나 오류와 함께 곧장 되돌아옵니다 | Tester 초대가 아직 대기 중입니다 | Instagram 앱에서 수락하세요: Settings → Website permissions → Apps and websites → Tester invites. 그런 다음 다시 연결하세요(6단계) |
| Instagram이 계정 연결 자체를 거부합니다 | 개인 계정입니다 | Instagram 앱에서 비즈니스나 크리에이터로 바꾸세요: Settings → Account type(1단계) |
| Instagram 로그인 페이지가 리디렉션에 대해 불평하거나, 앱으로 돌아오지 않습니다 | Meta에 저장된 리디렉션 URL이 정확히 일치하지 않습니다 | Channels → Instagram → Edit app keys(앱 키 수정)의 복사 버튼으로 다시 복사해 Meta의 OAuth redirect URIs에 붙여 넣고 저장한 뒤 다시 연결하세요(4단계) |
| 시작하자마자 로그인이 거부됩니다 | Instagram 것이 아니라 Meta App ID와 시크릿을 붙여 넣었습니다 | API setup with Instagram login에서 Instagram App ID와 Instagram App Secret을 가져오세요(5단계) |
| 그 브라우저에 이미 로그인되어 있는데도 Instagram이 로그인을 요구합니다 | 정상입니다 — 연결할 때는 언제나 새로 로그인을 요구합니다 | 평소처럼 로그인하세요 |
| "Instagram has no text-only posts — attach an image or video" (Post now(지금 게시)에서는 "Instagram requires an image or video on every post") | 게시물에 사진이나 동영상이 없고, Instagram에는 글만 있는 게시물이 없습니다 | Compose에서 파일을 첨부하거나, 그 게시물에서 Instagram 채널의 체크를 푸세요(7단계) |
| "This platform needs a public URL for media…" | Instagram은 사진과 동영상을 웹 주소에서 가져가는데, Social Quack이 파일을 둘 곳이 없습니다 | Settings → License에서 라이선스를 활성화하거나, Settings → Media hosting에서 내 버킷을 설정하세요(7단계) |
| "Instagram could not process the media" | Instagram이 파일 자체를 거부했습니다 | 다른 파일로 시도해 보세요 — 휴대폰에서 올릴 법한, 표준적인 JPEG나 MP4가 좋습니다 |
| "Instagram took too long to process the media" | 큰 동영상이 Instagram 쪽에서 아직 처리 중입니다 | 하실 일은 없습니다. Social Quack이 일시적인 상황으로 보고 다시 시도합니다 |
| "Posted, but adding the comment thread failed" | 게시물은 올라갔지만 뒷부분을 추가하지 못했습니다 | Channels를 열고 Instagram을 다시 연결해 댓글 권한을 포함한 세 가지 권한을 모두 승인하세요(5단계) — 같은 계정이 제자리에서 다시 연결됩니다 |