Open API 명세
Talk to Me (나에게 말해줘)의 게시물을 외부 서비스에서 조회하거나 작성할 수 있는 공개 API입니다. 별도의 인증 키 없이 사용할 수 있으며, 모든 요청과 응답은 JSON(UTF-8)입니다.
- Base URL:
https://talk.swn.kr/api/v1 - CORS: 모든 출처(
*)에서 브라우저 호출 가능 (/api/*경로 한정) - 버전: v1 (2026-07-10)
GET /api/v1/posts — 게시물 목록 조회
게시물 목록을 최신순으로 반환합니다. 목록에는 본문(content)이 포함되지 않으며, 본문은 단건 조회로 확인합니다.
쿼리 파라미터 (모두 선택)
limit— 반환 개수 제한 (양의 정수)category— 카테고리 필터 (아래 카테고리 목록 참고)sort=popular— 인기순 정렬 (좋아요 → 답글 수 → 최신순)
curl "https://talk.swn.kr/api/v1/posts?limit=5&category=일상"
응답 200
[
{
"id": 1,
"title": "게시물 제목",
"category": "일상",
"created_at": "2026-07-10 15:00:00.000000",
"likes": 3,
"dislikes": 0,
"comment_count": 2,
"voted": null
}
]
voted— 호출한 IP가 남긴 투표 상태 ("like"/"dislike"/null)- 비추천 10회 이상 또는 신고 5회 이상 누적된 게시물은 목록에서 제외됩니다.
GET /api/v1/posts/{id} — 게시물 단건 조회
본문(content)을 포함한 게시물 하나를 반환합니다. 본문은 마크다운 원문 그대로 반환되며, 렌더링은 클라이언트 몫입니다.
curl "https://talk.swn.kr/api/v1/posts/1"
응답 200
{
"id": 1,
"title": "게시물 제목",
"content": "본문 내용 (**마크다운** 지원)",
"category": "일상",
"created_at": "2026-07-10 15:00:00.000000",
"likes": 3,
"dislikes": 0,
"voted": null
}
오류: 존재하지 않는 id는 404 — {"error": "Post not found"}
POST /api/v1/posts — 게시물 작성
새 게시물을 익명으로 작성합니다. content와 category는 필수, title은 선택입니다.
curl -X POST "https://talk.swn.kr/api/v1/posts" \
-H "Content-Type: application/json" \
-d '{"title": "제목", "content": "내용", "category": "일상"}'
요청 본문
title— 제목 (선택). 생략하거나 비우면 내용의 앞 10자가 제목으로 사용됩니다.content— 내용, 최대 150자 (마크다운 사용 가능)category— 카테고리. 허용값: 일상, 먹방, 잡담, 쇼핑, 스포츠, 프로야구, 정보공유, TV/연예, 홍보, 패션, 뷰티
응답 201: 생성된 게시물(id 포함)을 반환합니다.
오류 400: 필수 필드 누락 시 {"error": "Content and category are required"}, 허용되지 않는 카테고리면 {"error": "Invalid category", "allowed_categories": [...]}, 내용이 150자를 초과하면 {"error": "내용은 150자를 넘을 수 없습니다.", "max_length": 150}
이용 안내
- 작성된 게시물은 즉시 사이트 피드에 공개되며, 이용약관과 운영정책이 동일하게 적용됩니다.
- 도배·자동화 남용이 확인되면 해당 IP의 이용이 제한될 수 있습니다.
- 문의: [email protected]