n8n을 사용하여 첨부 파일이 있는 수신 이메일을 자동으로 Facebook에 게시하기

발행: (2025년 12월 28일 오후 02:33 GMT+9)
4 분 소요
원문: Dev.to

Source: Dev.to

What This Automation Does

  • 이메일 인박스를 감시합니다
  • 이메일 제목을 Facebook 캡션으로 사용합니다
  • 이미지 첨부 파일을 변환하고 업로드합니다
  • 게시물을 자동으로 게시합니다

Workflow Overview

High-level view of the email → Facebook automation workflow
이메일 → Facebook 자동화 워크플로우의 전체적인 흐름

Why IMAP (and Not the Gmail Trigger)

처음에는 n8n의 Gmail Trigger를 사용해 보았는데, 더 “네이티브”하게 느껴졌습니다. 실제로는 제 사용 사례에 충분히 신뢰할 수 없었습니다:

  • 새로운 이메일이 항상 워크플로우를 트리거하지 않음
  • 가끔 전혀 작동하지 않음

공개적으로 게시하는 자동화에서는 이메일 하나라도 놓치는 것이 허용되지 않습니다. 그래서 몇 가지 실용적인 이유로 IMAP으로 전환했습니다:

  • 일관된 실행 – 새로운 이메일을 매번 잡아냄
  • 모든 이메일 제공자와 호환 – Gmail API에 종속되지 않음

간단하고, 신뢰성이 높으며, 워크플로우가 매번 실행되도록 유지해 주었습니다 — 바로 제가 필요했던 것이었습니다.

Handling Facebook Image Posts

Facebook에서는 하나의 게시물에 여러 이미지를 직접 업로드할 수 없습니다. 대신 다음과 같이 해야 합니다:

  1. 각 이미지를 미공개 상태로 업로드
  2. 반환된 media_fbid들을 수집
  3. 최종 게시물을 만들 때 해당 ID들을 첨부

Step 1: Loop through attachments

각 첨부 파일을 개별적으로 처리하기 위해 Loop Over Items 노드를 사용합니다.

Step 2: Upload as unpublished

POST https://graph.facebook.com/{page-id}/photos
  • published: false 설정
  • 첨부 파일 URL 전달

각 업로드는 media_fbid를 반환합니다 – 이를 저장합니다.

Step 3: Create the final post

POST https://graph.facebook.com/{page-id}/feed
  • 이메일 제목을 message로 사용
  • 수집한 모든 media_fbid를 첨부

이 흐름을 이해하면 나머지는 간단합니다.

Gotchas I Ran Into

Attachment format matters

n8n은 이메일 첨부 파일을 바이너리 데이터로 취급합니다. Facebook에 업로드하기 전에 Convert to File 노드를 사용해야 했으며, 그렇지 않으면 API가 파일을 거부했습니다.

Facebook permissions

앱에 pages_manage_postspages_read_engagement 권한이 있는지 확인하세요. 그렇지 않으면 업로드가 실패합니다.

Final Thoughts

이 자동화는 화려하지는 않지만, 조용히 시간을 절약하고 마찰을 없애줍니다. 이미 n8n을 사용하고 반복적인 게시물 작업을 하고 있다면, 이런 워크플로우를 구축할 가치가 충분히 있습니다. 때때로 가장 좋은 자동화는 눈에 띄지 않을 정도로 자연스럽게 작동하는 것들입니다.

Back to Blog

관련 글

더 보기 »