원문 하나로 여러 채널 글 쓰기
원문 하나로 계정마다 그 계정 페르소나 말투의 글을 받고, 계정마다 발행하거나 예약하세요.
원문 하나(텍스트, 공개 링크, 발행된 내 게시물)와 글을 쓸 계정을 넘기면, Posteady가 계정마다 그 계정 페르소나의 말투와 플랫폼 형식으로 글을 씁니다. Posteady 앱의 여러 채널 한 번에와 같습니다. 요청 하나로 모든 글을 돌려받습니다. Posteady는 글을 저장하거나 발행하지 않으니, 계정마다 받은 글을 직접 발행하거나 예약하세요.
흐름
- 계정 목록에서 플랫폼마다 계정 하나씩 고릅니다. 각 계정에는 활성 페르소나가 있어야 합니다.
- 글 쓰기를 요청합니다. 글을 다 쓸 때까지 기다렸다가 응답하며 보통 10~30초 걸립니다.
- 계정마다 받은 글로 발행하거나 예약합니다.
글 쓰기
원문은 text, url, post 중 하나만 넣습니다. targets에는 글을 쓸 계정을 플랫폼마다 하나씩 넣습니다.
curl --request POST "https://www.posteady.com/api/v1/channel-texts" \
--header "Authorization: Bearer $POSTEADY_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"url": "https://example.com/blog/spring-menu",
"targets": [
{ "accountId": "11111111-1111-4111-8111-111111111111" },
{ "accountId": "22222222-2222-4222-8222-222222222222" },
{ "accountId": "33333333-3333-4333-8333-333333333333" }
]
}'{
"channels": [
{
"accountId": "11111111-1111-4111-8111-111111111111",
"platform": "threads",
"personaId": "44444444-4444-4444-8444-444444444444",
"posts": [
"3월 3일부터 봄 메뉴가 나옵니다.",
"시즌 음료 세 가지와 주말 브런치 세트를 새로 준비했어요. 어떤 걸 먼저 드셔 보실 건가요?"
]
},
{
"accountId": "22222222-2222-4222-8222-222222222222",
"platform": "linkedin",
"personaId": "55555555-5555-4555-8555-555555555555",
"posts": ["3월 3일, 시즌 음료 세 가지와 새 브런치 세트를 담은 봄 메뉴를 선보입니다."]
},
{
"accountId": "33333333-3333-4333-8333-333333333333",
"platform": "instagram",
"personaId": "66666666-6666-4666-8666-666666666666",
"posts": ["봄 메뉴 3월 3일 공개. 새 음료 세 가지와 주말 브런치 세트."]
}
],
"failed": [],
"sourceMedia": [{ "type": "IMAGE", "url": "https://example.com/images/spring-menu.jpg" }],
"partialSource": false
}| 원문 | 값 | 쓰임 |
|---|---|---|
text | 메모, 기사, 대본 등(최대 50,000자) | 넣은 텍스트로 글을 씁니다. |
url | 소셜 게시물 하나, 동영상, 상품 페이지, 기사의 공개 링크 | 링크의 글을 읽어 씁니다. 프로필·채널·검색 페이지는 쓸 수 없습니다. |
post | 발행된 내 게시물의 platform과 postId | GET /api/v1/posts의 postId를 씁니다. Threads, X, LinkedIn, Instagram, Facebook 게시물을 쓸 수 있습니다. |
| 옵션 | 설명 |
|---|---|
targets[].personaId | 글에 쓸 말투의 페르소나입니다. 생략하면 그 계정에서 가장 최근에 만든 활성 페르소나를 씁니다. 실제로 쓴 페르소나는 응답의 personaId에 나옵니다. |
instructions | 모든 채널에 적용할 추가 지시사항입니다. 말투, 대상 독자, 강조할 내용 등(최대 1,000자). |
length | short는 핵심만 짧게, persona(기본값)는 페르소나의 평소 길이로, full은 길어지더라도 주요 내용을 모두 담습니다. |
크레딧
글을 쓴 채널마다 5크레딧이 차감됩니다. url 원문은 링크를 읽는 몫으로 요청당 한 번 5크레딧이 더 차감됩니다. 예를 들어 링크로 채널 세 개에 쓰면 20크레딧입니다.
- 일부 채널이 실패하면
failed에 나오며, 그 채널은 차감되지 않습니다. - 모든 채널이 실패하면 오류를 반환하고 차감하지 않습니다.
- 크레딧은 채널마다 따로 차감합니다. 중간에 크레딧이 떨어지면 차감하지 못한 채널이
failed에INSUFFICIENT_CREDITS로 나옵니다. 처음부터 크레딧이 모자라면 요청 전체 금액을 담아402 INSUFFICIENT_CREDITS를 반환합니다.
채널마다 발행하기
채널마다 받은 글은 그대로 발행할 수 있는 모양입니다. 발행 요청 하나는 accountIds의 모든 계정에 같은 글을 보내므로, 채널마다 요청을 따로 보내세요.
platform | posts를 넣을 곳 |
|---|---|
threads, x | posts. 글이 여러 개면 연결 글(스레드)로 발행됩니다. |
linkedin | posts(항상 글 하나). |
tiktok | posts(캡션 하나)와 video를 함께 넣습니다. |
instagram | instagram.caption. |
youtube | youtube.description. title은 직접 넣으세요. |
facebook | facebook.message. |
예를 들어 위 응답의 Threads 글을 발행하려면:
curl --request POST "https://www.posteady.com/api/v1/posts" \
--header "Authorization: Bearer $POSTEADY_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"accountIds": ["11111111-1111-4111-8111-111111111111"],
"posts": [
"3월 3일부터 봄 메뉴가 나옵니다.",
"시즌 음료 세 가지와 주말 브런치 세트를 새로 준비했어요. 어떤 걸 먼저 드셔 보실 건가요?"
]
}'Instagram, TikTok, YouTube는 미디어가 있어야 발행할 수 있습니다. sourceMedia에는 url·post 원문에서 찾은 이미지와 동영상이 나오지만, Posteady가 글에 붙이지 않고 주소가 만료될 수도 있습니다. 쓰려면 URL로 가져온 뒤 받은 mediaId로 발행하세요.
긴 연결 글
발행·예약 요청 하나는 글을 25개까지 받습니다. length를 full로 두고 긴 원문을 쓰면 Threads나 X 연결 글이 그보다 길어질 수 있습니다. 더 짧은 length로 다시 요청하거나, 연결 글을 줄여서 발행하세요.
firstComment의 참고 링크
페르소나는 원문 링크 같은 참고 링크를 글에 붙일 수 있습니다. LinkedIn, Instagram, TikTok, YouTube, Facebook에서는 합쳐도 플랫폼 글자 수 한도 안이면 참고 링크를 글 끝에 붙입니다. 한도를 넘으면 posts의 글은 한도 안에 두고 참고 링크를 firstComment로 따로 돌려줍니다. Posteady 앱은 이 내용을 첫 댓글로 올립니다. 직접 댓글로 올리거나, 글을 줄여 함께 넣으세요.
실패했을 때
상태와 error.code | 뜻과 다음 할 일 |
|---|---|
402 INSUFFICIENT_CREDITS | 조직의 크레딧이 이 요청을 시작하기에 모자랍니다. 글은 쓰지 않았습니다. |
403 PLAN_REQUIRED | 조직의 요금제에 API 사용이나 이 원문이 포함되지 않습니다. |
404 ACCOUNT_NOT_FOUND, 404 POST_NOT_FOUND | targets의 계정이나 원문 게시물이 이 워크스페이스에 없습니다. |
422 VALIDATION_ERROR | 입력이 잘못됐거나, 같은 플랫폼 계정이 둘이거나, 활성 페르소나가 없는 계정이 있거나, 지원하지 않는 링크이거나, 원문에 글이 없습니다. error.message를 확인하세요. |
503 SERVICE_UNAVAILABLE | 원문을 읽지 못했거나 시간 안에 어느 채널도 쓰지 못했습니다. 차감하지 않았으니 다시 시도하세요. |
failed에 나온 채널은 아래 코드 중 하나이며, 차감되지 않습니다.
failed[].code | 뜻 |
|---|---|
INSUFFICIENT_CREDITS | 이 채널 차례에 크레딧이 떨어졌습니다. |
TIMEOUT | 이 채널의 글을 쓰는 데 시간이 너무 오래 걸렸습니다. |
GENERATION_FAILED | 이 채널의 글을 쓰지 못했습니다. 다시 시도하세요. |
다시 요청하기
이 요청에는 requestId가 없습니다. 요청할 때마다 새 글을 쓰고 다시 차감합니다. 응답을 받지 못했다면 글이 이미 써지고 차감됐을 수 있습니다.
알아 둘 점
- AI 소재나 업로드한 파일을 원문으로 쓰는 것, 링크 이미지 속 글까지 읽는 것은 Posteady 앱에서만 됩니다.
- YouTube 제목은 쓰지 않습니다. 발행할 때 직접 넣으세요.