NewsClip Custom API
NewsClip Custom API를 사용하여 비동기 커스텀 뉴스 수집 요청을 생성하고, 처리 상태 및 결과를 조회할 수 있습니다.인증
모든 API 요청에는 PULITZER-API-KEY 헤더에 API 키가 필요합니다.
헤더 설정
PULITZER-API-KEY: YOUR_API_KEYcurl -X POST "https://api.pulitzer.ai/live/openapi/news-clipping-custom/collect" \
-H "PULITZER-API-KEY: YOUR_API_KEY"커스텀 수집 요청 등록
비동기 뉴스 수집 요청을 생성합니다. 결과는 collect_id로 조회합니다.
POST https://api.pulitzer.ai/live/openapi/news-clipping-custom/collect요청 본문
{
"channel": "google_news",
"keyword": "AI 반도체",
"max_pages": 3,
"site_domains": [
"chosun.com",
"donga.com"
],
"filter_prompt": "투자/사업 전략 관련 기사만 포함",
"language": "ko",
"date_from": "2026-05-01",
"date_to": "2026-05-31"
}Request Body Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
channel | string | ✅ | 수집 채널: naver_news | google_news | naver_blog |
keyword | string | ✅ | 검색 키워드 (1-200자) |
max_pages | integer | ✅ | 최대 수집 페이지 (1-10) |
site_domains | array[string] | ❌ | 도메인 필터 (google_news 전용, 최대 10개) |
filter_prompt | string | ❌ | AI 필터링 프롬프트 (미입력 시 전체 기사 포함) |
language | string | ❌ | 언어 필터 (ISO 639-1 코드, 미입력 시 언어 제한 없음. 예: ko, en, ja) |
date_from | string(date) | ❌ | 검색 시작일 (YYYY-MM-DD) |
date_to | string(date) | ❌ | 검색 종료일 (YYYY-MM-DD, 최대 31일 범위) |
응답
{
"status": "SUCCESS",
"success": true,
"message": "수집 요청이 등록되었습니다. collect_id로 상태를 조회하세요.",
"data": {
"collect_id": 123,
"estimated_completion_kst": "2026-06-01T18:30:00+09:00"
}
}Response Fields
| 필드 | 타입 | 설명 |
|---|---|---|
status | string | 응답 상태 코드 문자열 (성공 시 SUCCESS) |
success | boolean | 요청 성공 여부 |
message | string | 응답 메시지 |
data.collect_id | integer | 생성된 수집 요청 ID |
data.estimated_completion_kst | string | null | 예상 완료 시간 (KST ISO 8601) |
curl -X POST "https://api.pulitzer.ai/live/openapi/news-clipping-custom/collect" \
-H "PULITZER-API-KEY: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"channel": "google_news",
"keyword": "AI 반도체",
"max_pages": 3,
"site_domains": ["chosun.com", "donga.com"],
"filter_prompt": "투자/사업 전략 관련 기사만 포함",
"language": "ko",
"date_from": "2026-05-01",
"date_to": "2026-05-31"
}'커스텀 수집 요청 목록
사용자의 커스텀 수집 요청 내역을 페이지네이션으로 조회합니다.
GET https://api.pulitzer.ai/live/openapi/news-clipping-custom/collect/listQuery Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
page | integer | ❌ | 페이지 번호 (기본: 1) |
page_size | integer | ❌ | 페이지 크기 (1-100, 기본: 20) |
status | string | ❌ | 상태 필터: pending | processing | done | error |
응답
{
"status": "SUCCESS",
"success": true,
"message": "수집 요청 내역 조회 성공",
"data": [
{
"collect_id": 123,
"channel": "google_news",
"keyword": "AI 반도체",
"max_pages": 3,
"site_domains": [
"chosun.com"
],
"filter_prompt": "투자/사업 전략 관련 기사만 포함",
"status": "processing",
"charged_pages": 0,
"total_cost": 0,
"created_kst": "2026-06-01T17:30:00+09:00",
"estimated_completion_kst": "2026-06-01T18:30:00+09:00"
}
],
"page_count": 1,
"total_count": 1
}Response Fields
| 필드 | 타입 | 설명 |
|---|---|---|
status | string | 응답 상태 코드 문자열 |
success | boolean | 요청 성공 여부 |
message | string | 응답 메시지 |
data[] | array | 수집 요청 목록 |
data[].collect_id | integer | 수집 요청 ID |
data[].channel | string | 수집 채널 |
data[].keyword | string | 검색 키워드 |
data[].max_pages | integer | 요청 최대 페이지 수 |
data[].site_domains | array[string] | null | 도메인 필터 목록 |
data[].filter_prompt | string | null | AI 필터 프롬프트 |
data[].language | string | null | 언어 필터 (ISO 639-1, None=제한없음) |
data[].status | string | 요청 상태 (pending/processing/done/error) |
data[].charged_pages | integer | 과금된 페이지 수 |
data[].total_cost | integer | 총 비용(원) |
data[].created_kst | string | null | 요청 생성 시간 (KST ISO 8601) |
data[].estimated_completion_kst | string | null | 예상 완료 시간 |
page_count | integer | 전체 페이지 수 |
total_count | integer | 전체 항목 수 |
curl -X GET "https://api.pulitzer.ai/live/openapi/news-clipping-custom/collect/list?page=1&page_size=20&status=processing" \
-H "PULITZER-API-KEY: YOUR_API_KEY"커스텀 수집 상태/결과 조회
collect_id 기준으로 처리 상태와 기사 결과를 조회합니다.
GET https://api.pulitzer.ai/live/openapi/news-clipping-custom/collect/{`{collect_id}`}상태 값
pending: 대기 중processing: 수집 진행 중done: 수집 완료error: 수집 실패
응답
{
"status": "SUCCESS",
"success": true,
"message": "수집 상태 조회 성공",
"data": {
"collect_id": 123,
"channel": "google_news",
"keyword": "AI 반도체",
"max_pages": 3,
"site_domains": [
"chosun.com"
],
"filter_prompt": null,
"status": "done",
"charged_pages": 2,
"total_cost": 400,
"created_kst": "2026-06-01T17:30:00+09:00",
"processing_kst": "2026-06-01T17:31:00+09:00",
"completed_kst": "2026-06-01T17:36:00+09:00",
"error_message": null,
"estimated_completion_kst": "2026-06-01T17:36:00+09:00",
"full_articles": [
{
"title_ko": "AI 반도체 투자 확대",
"title_en": "Expanded Investment in AI Semiconductors",
"summary_ko": "국내 기업이 AI 반도체 투자 확대를 발표...",
"summary_en": "A local company announced an expansion in AI semiconductor investment...",
"url": "https://example.com/article-1",
"media_name": "Example Media",
"pub_date": "2026-06-01T09:00:00+09:00"
}
],
"filtered_articles": [
{
"title_ko": "AI 반도체 투자 확대",
"title_en": "Expanded Investment in AI Semiconductors",
"summary_ko": "국내 기업이 AI 반도체 투자 확대를 발표...",
"summary_en": "A local company announced an expansion in AI semiconductor investment...",
"url": "https://example.com/article-1",
"media_name": "Example Media",
"pub_date": "2026-06-01T09:00:00+09:00"
}
]
}
}Response Fields
| 필드 | 타입 | 설명 |
|---|---|---|
status | string | 응답 상태 코드 문자열 |
success | boolean | 요청 성공 여부 |
message | string | 응답 메시지 |
data.collect_id | integer | 수집 요청 ID |
data.channel | string | 수집 채널 |
data.keyword | string | 검색 키워드 |
data.max_pages | integer | 요청 최대 페이지 수 |
data.site_domains | array[string] | null | 도메인 필터 목록 |
data.filter_prompt | string | null | AI 필터 프롬프트 |
data.language | string | null | 언어 필터 (ISO 639-1, None=제한없음) |
data.status | string | 요청 상태 |
data.charged_pages | integer | 과금된 페이지 수 |
data.total_cost | integer | 총 비용(원) |
data.created_kst | string | null | 요청 생성 시간 |
data.processing_kst | string | null | 처리 시작 시간 |
data.completed_kst | string | null | 처리 완료 시간 |
data.error_message | string | null | 실패 시 에러 메시지 |
data.estimated_completion_kst | string | null | 예상 완료 시간 |
data.full_articles[] | array | 필터링 전 전체 기사 목록 |
data.filtered_articles[] | array | 필터링 후 기사 목록 |
*.title_ko/title_en | string | null | 기사 제목(한/영) |
*.summary_ko/summary_en | string | null | 기사 요약(한/영) |
*.url | string | null | 기사 원문 URL |
*.media_name | string | null | 매체명 |
*.pub_date | string | null | 기사 발행 시각 |
curl -X GET "https://api.pulitzer.ai/live/openapi/news-clipping-custom/collect/123" \
-H "PULITZER-API-KEY: YOUR_API_KEY"