Communitygithub.com

azeeemkafridi/bulkpublish-api

가장 좋은 무료 소셜 미디어 게시 및 예약 API입니다. Python 및 Node용 SDK, AI 에이전트용 MCP 서버, 15개 플랫폼을 지원합니다.

bulkpublish-api란 무엇인가요?

BulkPublish API는 개발자, AI 에이전트, LLM을 위해 설계된 헤드리스 소셜 미디어 자동화 도구입니다. 단일 API 호출로 Facebook, Instagram, X/Twitter, YouTube, TikTok, LinkedIn 등 15개 플랫폼에 프로그래밍 방식으로 게시할 수 있습니다. 브라우저 세션이나 수동 상호 작용 없이 자동화된 작업 흐름을 지원합니다. MCP 서버를 제공하여 Claude, Cursor, Windsurf, Claude Code와 같은 AI 어시스턴트가 직접 소셜 미디어를 관리할 수 있으며, Python과 Node.js SDK를 통해 쉽게 통합할 수 있습니다. 또한 CSV를 통한 대량 스케줄링, RSS 자동 게시, 플랫폼별 콘텐츠 최적화, 분석 대시보드, 멀티파트 스레드 게시물, 미디어 업로드(이미지, 비디오, GIF), 반복 일정, 링크 추적, 팀 승인 워크플로우 등 다양한 고급 기능을 제공합니다. AI 에이전트를 위한 24개의 소셜 미디어 콘텐츠 스킬 라이브러리와 Claude, OpenAI, LangChain과의 즉시 사용 가능한 툴 정의도 포함되어 있습니다.

지원 대상✓Claude Code✓Codex CLI✓Cursor✓Antigravity✓Windsurf
npx skills add https://github.com/azeemkafridi/bulkpublish-api/tree/main

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

미리보기

스킬 README에서

bulkpublish-api preview
bulkpublish-api preview
bulkpublish-api preview
bulkpublish-api preview
bulkpublish-api preview
bulkpublish-api preview
bulkpublish-api preview
bulkpublish-api preview

문서

단일 API 호출로 15개 플랫폼에 프로그래밍 방식으로 게시하세요. 브라우저 세션이나 수동 상호 작용 없이 안정적인 소셜 미디어 자동화가 필요한 개발자, AI 에이전트, LLM 및 에이전트 워크플로우를 위해 구축되었습니다.

from bulkpublish import BulkPublish

bp = BulkPublish("bp_your_key_here")
bp.posts.create(
    content="오늘 신제품을 출시합니다!",
    channels=[{"channelId": 1, "platform": "x"}, {"channelId": 2, "platform": "linkedin"}],
    status="scheduled",
    scheduled_at="2026-04-10T09:00:00Z",
)

BulkPublish를 사용해야 하는 이유는?

대부분의 소셜 미디어 도구는 버튼을 클릭하는 인간을 위해 만들어졌습니다. BulkPublish는 코드를 위해 만들어졌습니다. 그 코드가 개발자, AI 에이전트, 툴을 사용하는 LLM, 또는 자율 워크플로우에 의해 작성되었든 상관없습니다.

  • 헤드리스 설계 — 브라우저, UI, 런타임 시 OAuth 팝업이 없습니다. 대시보드에서 한 번 계정을 연결한 다음 API를 통해 모든 것을 자동화하세요.
  • AI 네이티브 — Claude를 위한 MCP 서버, GPT 및 LangChain을 위한 도구 정의, LLM이 안정적으로 파싱하는 구조화된 JSON 응답.
  • 에이전트 지원 — 명확한 오류 코드가 있는 결정론적 API. AI 에이전트가 게시물 생성, 상태 확인, 실패 재시도, 분석을 자율적으로 읽을 수 있습니다.
  • 15개 플랫폼, 하나의 엔드포인트 — Facebook, Instagram, X/Twitter, TikTok, YouTube, Threads, Bluesky, Pinterest, Google Business Profile, LinkedIn, Mastodon, Discord, Telegram, Tumblr, Snapchat.

사용 사례

  • AI 소셜 미디어 관리자 — Claude, GPT 또는 사용자 지정 에이전트가 게시물을 자율적으로 예약하고 게시하도록 하세요.
  • 콘텐츠 파이프라인 — RSS-소셜, 블로그-소셜, 뉴스레터-소셜 자동화.
  • 대량 일정 — CSV를 업로드하거나 콘텐츠 캘린더를 제공하여 프로그래밍 방식으로 몇 주 분량의 게시물을 예약합니다.
  • 교차 플랫폼 신디케이션 — 플랫폼별 콘텐츠 최적화와 함께 모든 플랫폼에 한 번에 게시합니다.
  • 분석 대시보드 — 자신의 도구, 스프레드시트 또는 AI 분석으로 참여 데이터를 가져옵니다.
  • Zapier/n8n/Make 대안 — 미들웨어 없이 직접 API 액세스, 더 낮은 지연 시간, 더 많은 제어.
  • LLM 기반 콘텐츠 제작 — AI로 콘텐츠를 생성하고, BulkPublish로 게시하고, 성과를 추적하고, 반복합니다.

빠른 시작

1. 가입

app.bulkpublish.com에서 무료 계정을 만드세요.

2. API 키 받기

대시보드의 설정 > 개발자로 이동하여 API 키를 생성하세요. 키는 bp_로 시작하며 한 번만 표시됩니다. 안전하게 저장하세요.

3. 플랫폼 연결

채널 아래 대시보드에서 소셜 계정을 연결하세요. API는 연결된 채널을 사용하여 게시합니다.

4. SDK 설치

Python

pip install bulkpublish

Node.js

npm install bulkpublish

Homebrew (macOS/Linux)

brew tap azeemkafridi/bulkpublish && brew install bulkpublish

또는 curl, fetch, requests 또는 모든 HTTP 클라이언트로 REST API를 직접 호출하세요.

5. 첫 번째 API 호출하기

curl -X POST https://app.bulkpublish.com/api/posts \
  -H "Authorization: Bearer bp_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "Hello from the BulkPublish API!",
    "channels": [{"channelId": 1, "platform": "linkedin"}],
    "status": "draft"
  }'

AI 에이전트 통합

MCP 서버 (Claude, Cursor, Windsurf, Claude Code)

BulkPublish는 AI 어시스턴트가 소셜 미디어를 직접 관리할 수 있도록 MCP 서버를 제공합니다:

{
  "mcpServers": {
    "bulkpublish": {
      "command": "npx",
      "args": ["-y", "@bulkpublish/mcp-server"],
      "env": {
        "BULKPUBLISH_API_KEY": "bp_your_key_here"
      }
    }
  }
}

50개의 도구 사용 가능: create_post, list_channels, upload_media, get_analytics, 대화형 compose_post 컴포저(MCP 앱) 등. 로컬(stdio)로 실행되거나 https://mcp.bulkpublish.com/mcp에서 Streamable HTTP를 통해 호스팅됩니다. mcp-server/README.md를 참조하세요.

소셜 미디어 콘텐츠 스킬

BulkPublish는 AI 에이전트가 소셜 미디어 콘텐츠를 계획, 조정, 검토, 예약 및 게시할 수 있는 24개 스킬 라이브러리를 포함합니다: 소셜 미디어 콘텐츠 스킬.

LLM 도구 사용 / 함수 호출

자율 AI 에이전트를 위한 즉시 사용 가능한 도구 정의:

모든 예제는 완전하고 실행 가능한 스크립트이며 오류 처리를 포함합니다.

코드 예제

게시물 만들기

from bulkpublish import BulkPublish

bp = BulkPublish("bp_your_key_here")

post = bp.posts.create(
    content="최신 업데이트를 확인하세요!",
    channels=[
        {"channelId": 1, "platform": "facebook"},
        {"channelId": 2, "platform": "x"},
        {"channelId": 3, "platform": "linkedin"},
    ],
    status="draft",
)
import { BulkPublish } from 'bulkpublish';

const bp = new BulkPublish({ apiKey: 'bp_your_key_here' });

const post = await bp.posts.create({
  content: '최신 업데이트를 확인하세요!',
  channels: [
    { channelId: 1, platform: 'facebook' },
    { channelId: 2, platform: 'x' },
    { channelId: 3, platform: 'linkedin' },
  ],
  status: 'draft',
});

게시물 예약하기

post = bp.posts.create(
    content="이 게시물은 내일 아침에 나갑니다.",
    channels=[{"channelId": 1, "platform": "instagram"}],
    status="scheduled",
    scheduled_at="2026-04-10T09:00:00Z",
    timezone="America/New_York",
)

미디어 업로드 및 게시

media = bp.media.upload("./product-photo.jpg")

post = bp.posts.create(
    content="저희의 최신 제품이 여기 있습니다.",
    channels=[{"channelId": 1, "platform": "instagram"}],
    media_files=[media["file"]["id"]],
    status="scheduled",
    scheduled_at="2026-04-10T12:00:00Z",
)

자동화 예제: CSV에서 대량 예약

import csv
from bulkpublish import BulkPublish

bp = BulkPublish("bp_your_key_here")
channels = bp.channels.list()["channels"]

with open("content-calendar.csv") as f:
    for row in csv.DictReader(f):
        bp.posts.create(
            content=row["content"],
            channels=[{"channelId": ch["id"], "platform": ch["platform"]} for ch in channels],
            status="scheduled",
            scheduled_at=row["scheduled_at"],
            timezone="America/New_York",
        )

더 많은 예제는 examples/ — Python 자동화 스크립트, Node.js 예제, curl 참조, AI 에이전트 통합을 참조하세요.

기능

  • 15개 플랫폼 — Facebook, Instagram, X/Twitter, TikTok, YouTube, Threads, Bluesky, Pinterest, Google Business Profile, LinkedIn, Mastodon, Discord, Telegram, Tumblr, Snapchat
  • 예약 — 시간대 지원으로 미래의 모든 시간에 게시물을 예약하거나 대기열 슬롯이 최적의 시간을 선택하도록 합니다.
  • 미디어 업로드 — 최대 100MB의 이미지(JPEG, PNG, WebP, GIF) 및 비디오(MP4, MOV, WebM)
  • 반복 일정 — 매일, 매주, 격주 또는 매월 지정된 시간에 게시물 반복
  • 분석 — 노출수, 좋아요, 댓글, 공유, 참여도를 추적합니다. 각 플랫폼은 다른 측정항목 하위 집합을 보고하며, 응답은 어떤 항목이 지원되는지(supportedMetrics / supportedTotals) 알려주므로 0이 측정값으로 오인되지 않습니다. — 플랫폼별 측정항목 참조
  • 링크 추적 — 조직별로 또는 linkTrackingOverride를 통해 게시물별로 옵트인하여 bulkpubli.sh를 통해 링크를 다시 작성하고 클릭 수를 계산합니다. linkClicks / totalLinkClicks로 보고되며 플랫폼이 아닌 BulkPublish에서 측정하므로 플랫폼이 아무것도 보고하지 않는 경우에도 작동합니다. — 문자 제한 참조
  • 레이블 — 색상 코드 레이블로 게시물과 미디어를 구성합니다.
  • 대량 작업 — 단일 요청으로 여러 게시물을 삭제하거나 재시도합니다.
  • 스레드 — X, Threads, Bluesky 및 Mastodon을 위한 멀티파트 스레드 게시물
  • 자동 첫 댓글 — 모든 플랫폼에 게시한 후 자동으로 댓글을 추가합니다.
  • 모든 게시물 유형 — Reels, Stories, Carousels, Threads, Shorts, Video — postTypeOverrides를 통해 플랫폼별로 설정합니다.
  • 플랫폼별 콘텐츠 — 단일 게시물에서 플랫폼별로 텍스트 및 옵션 사용자 지정
  • 플랫폼별 옵션 — Instagram 공동 작업자, TikTok 개인정보 보호, YouTube 카테고리, Pinterest 보드 등

API 참조

전체 대화형 API 문서: app.bulkpublish.com/docs

기본 URL

https://app.bulkpublish.com

인증

Authorization: Bearer bp_your_key_here

핵심 엔드포인트

메서드엔드포인트설명
POST/api/posts게시물 생성 (임시 보관, 예약 또는 즉시)
GET/api/posts게시물 목록 (페이지 매김, 상태/날짜/채널/레이블별 필터링 가능)
GET/api/posts/:id플랫폼 상태 및 측정항목이 포함된 게시물 가져오기
PUT/api/posts/:id임시 보관 또는 예약된 게시물 업데이트
DELETE/api/posts/:id게시물 삭제
POST/api/posts/:id/publish임시 보관 게시물을 즉시 게시
POST/api/posts/:id/retry실패한 플랫폼 재시도
POST/api/posts/:id/approve팀 승인을 기다리는 게시물 승인 (게시물:승인 권한이 있는 역할)
POST/api/posts/:id/reject보류 중인 게시물을 선택적 사유와 함께 임시 보관으로 반려
POST/api/posts/bulk대량 삭제 또는 재시도
GET/api/channels연결된 소셜 미디어 채널 목록
GET/api/channels/:id/health채널 토큰 상태 확인
GET/api/channels/:id/options플랫폼 옵션 가져오기 (Pinterest 보드, YouTube 재생 목록)
GET/api/channels/:id/mentions@멘션을 위한 사용자 검색 (X, Bluesky)
GET/POST/api/channel-sets원클릭 타겟팅을 위한 저장된 채널 그룹 (/api/channel-sets/:id를 통해 업데이트/삭제)
GET/POST/api/rss-feedsRSS/Atom 자동 게시 피드 — 새 항목이 게시물이 됨 (/api/rss-feeds/:id를 통해 업데이트/삭제)
POST/api/media미디어 파일 업로드 (멀티파트 폼, 최대 100MB)
POST/api/media/multipart/create대용량 미디어(최대 1GB 비디오, 10MB 파트)에 대한 청크 업로드 시작
POST/api/media/multipart/complete업로드된 파트를 조합하고 미디어 파일 기록
GET/api/media업로드된 미디어 목록
GET/api/analytics/summary날짜 범위에 대한 분석 요약
GET/api/analytics/engagement일/주/월별로 그룹화된 참여 데이터
POST/api/schedules반복 일정 생성
GET/api/quotas/usage현재 요금제 제한 및 사용량 확인

전체 엔드포인트 목록은 OpenAPI 사양을 참조하세요.

지원되는 플랫폼

플랫폼게시물 유형미디어
Facebook게시물, 스토리이미지, 비디오
Instagram피드, 릴, 스토리, 캐러셀이미지 (JPEG), 비디오 (MP4, MOV)
X / Twitter트윗, 스레드이미지, 비디오, GIF
TikTok비디오, 사진 슬라이드쇼비디오 (MP4, MOV), 이미지
YouTube비디오, Shorts비디오 (MP4, MOV, WebM, AVI, WMV, FLV)
Threads게시물, 스레드, 인용 게시물이미지, 비디오
Bluesky게시물, 스레드이미지
PinterestPin, Idea Pin이미지 (JPEG), 비디오 (MP4)
Google Business Profile게시물, 이벤트, 제안이미지, 비디오
LinkedIn게시물, 이미지 게시물, 비디오 게시물, 문서 게시물, 캐러셀, 이벤트이미지, 비디오, PDF, 문서
Mastodon게시물, 스레드이미지, 비디오
Discord웹훅 메시지 (임베드 포함)이미지 URL, 비디오 URL
Telegram메시지, 사진, 비디오, 문서이미지, 비디오, PDF, 문서
Tumblr텍스트, 사진, 인용, 링크, 채팅, 오디오, 비디오이미지, 비디오
Snapchat스냅, 스토리이미지, 비디오

라이선스

MIT — 소스 코드를 자유롭게 사용, 수정 및 배포하세요. 소셜 미디어 콘텐츠 스킬은 CC BY 4.0에 따라 라이선스가 부여됩니다.

BulkPublish는 소셜 미디어 API 위에 있는 관리형 서비스이며 플랫폼 사용 약관을 준수해야 합니다. 서비스 약관은 bulkpublish.com/terms를 참조하세요.

기여

기여를 환영합니다! 기여 지침을 참조하세요.

  1. 이슈를 열어 버그를 보고하거나 기능을 제안하세요.
  2. 이 리포지토리를 포크하세요.
  3. 변경 사항이 포함된 PR을 제출하세요.

연락처

관련 스킬