미디어브릿지 CRM API

Media Bridge CRM API를 사용하여 기자 관계를 관리하고, 미팅을 기록하며, 배포 성과를 추적할 수 있습니다.

인증

모든 API 요청에는 PULITZER-API-KEY 헤더에 API 키가 필요합니다.

헤더 설정

PULITZER-API-KEY: YOUR_API_KEY

워크스페이스 구분

이 API는 Media Bridge CRM 워크스페이스만 대상으로 합니다. Team 워크스페이스(팀 협업용)는 별도 관리됩니다.

curl -X GET "https://api.pulitzer.ai/live/openapi/workspace/list" \
  -H "PULITZER-API-KEY: YOUR_API_KEY"

워크스페이스 목록

사용자의 CRM 워크스페이스 목록을 조회합니다.

GET https://api.pulitzer.ai/live/openapi/workspace/list

응답

{
  "status": "SUCCESS",
  "success": true,
  "data": [
    {
      "id": 1,
      "name": "테크 PR팀",
      "company_name": "주식회사 테크",
      "keywords": [
        "AI",
        "스타트업"
      ],
      "created_kst": "2026-01-15T09:00:00"
    }
  ]
}
curl -X GET "https://api.pulitzer.ai/live/openapi/workspace/list" \
  -H "PULITZER-API-KEY: YOUR_API_KEY"

워크스페이스 생성

새로운 CRM 워크스페이스를 생성합니다. 유저당 1개까지만 생성 가능합니다.

POST https://api.pulitzer.ai/live/openapi/workspace/create

Request Body Parameters

파라미터타입필수설명
namestringYes워크스페이스 이름 (1~100자)
company_namestringNo회사명
keywordsstring[]No모니터링 키워드
curl -X POST "https://api.pulitzer.ai/live/openapi/workspace/create" \
  -H "PULITZER-API-KEY: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "테크 PR팀",
    "company_name": "주식회사 테크",
    "keywords": ["AI", "스타트업", "투자"]
  }'

기자 목록 조회

워크스페이스에 등록된 기자 목록을 페이지네이션으로 조회합니다.

GET https://api.pulitzer.ai/live/openapi/workspace/{workspace_id}/reporters

Query Parameters

파라미터타입설명
pageinteger페이지 번호 (기본값: 1)
page_sizeinteger페이지 크기 (1~100, 기본값: 20)
keywordstring검색어 (기자명/매체명)
is_distribution_targetboolean배포 대상만 필터링

응답

{
  "status": "SUCCESS",
  "success": true,
  "data": [
    {
      "reporter_id": 42,
      "name": "김기자",
      "email": "reporter@media.com",
      "media": "IT조선",
      "is_managed": true,
      "is_distribution_target": true,
      "memo": "AI 분야 전문"
    }
  ],
  "page_count": 5,
  "total_count": 93
}
curl -X GET "https://api.pulitzer.ai/live/openapi/workspace/1/reporters?page=1&page_size=20" \
  -H "PULITZER-API-KEY: YOUR_API_KEY"

기자 추가

워크스페이스에 기자를 추가합니다.

POST https://api.pulitzer.ai/live/openapi/workspace/{workspace_id}/reporters

Request Body Parameters

파라미터타입필수설명
namestringYes기자 이름
emailstringYes기자 이메일
mediastringNo소속 매체
is_distribution_targetbooleanNo배포 대상 여부 (기본값: false)
curl -X POST "https://api.pulitzer.ai/live/openapi/workspace/1/reporters" \
  -H "PULITZER-API-KEY: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "김기자",
    "email": "reporter@media.com",
    "media": "IT조선",
    "is_distribution_target": true
  }'

기자 뉴스 조회

특정 기자의 최근 뉴스 기사를 조회합니다.

GET https://api.pulitzer.ai/live/openapi/workspace/{workspace_id}/reporters/{reporter_id}/news

Query Parameters

파라미터타입설명
pageinteger페이지 번호
page_sizeinteger페이지 크기

응답

{
  "status": "SUCCESS",
  "success": true,
  "data": [
    {
      "id": 1001,
      "title": "AI 스타트업 투자 트렌드",
      "url": "https://media.com/article/1001",
      "media_name": "IT조선",
      "reporter_name": "김기자",
      "pub_kst": "2026-05-20T09:30:00"
    }
  ],
  "page_count": 3,
  "total_count": 28
}
curl -X GET "https://api.pulitzer.ai/live/openapi/workspace/1/reporters/42/news?page=1&page_size=10" \
  -H "PULITZER-API-KEY: YOUR_API_KEY"

미팅 관리

기자와의 미팅/통화/이메일 등 활동을 기록합니다.

POST https://api.pulitzer.ai/live/openapi/workspace/{workspace_id}/reporters/{reporter_id}/meetings

Request Body Parameters

파라미터타입필수설명
actionstringYes활동 유형: MEETING, CALL, EMAIL, OTHER
titlestringNo제목
contentstringNo내용
placestringNo장소
meeting_start_kststringNo미팅 시작 시간 (ISO 8601)
meeting_end_kststringNo미팅 종료 시간 (ISO 8601)
curl -X POST "https://api.pulitzer.ai/live/openapi/workspace/1/reporters/42/meetings" \
  -H "PULITZER-API-KEY: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "action": "MEETING",
    "title": "신제품 브리핑",
    "content": "2분기 신제품 소개 미팅",
    "place": "서울 강남 카페",
    "meeting_start_kst": "2026-06-01T14:00:00",
    "meeting_end_kst": "2026-06-01T15:00:00"
  }'

보도 성과 통계

워크스페이스의 보도자료 배포 및 커버리지 성과 통계를 조회합니다.

GET https://api.pulitzer.ai/live/openapi/workspace/{workspace_id}/outcome-stats

Query Parameters

파라미터타입설명
start_datestring시작일 (YYYY-MM-DD)
end_datestring종료일 (YYYY-MM-DD)

응답

{
  "status": "SUCCESS",
  "success": true,
  "data": {
    "total_releases": 15,
    "total_coverages": 42,
    "total_reporters_managed": 120,
    "total_meetings": 8
  }
}
curl -X GET "https://api.pulitzer.ai/live/openapi/workspace/1/outcome-stats?start_date=2026-01-01&end_date=2026-06-30" \
  -H "PULITZER-API-KEY: YOUR_API_KEY"

에러 응답

발생 가능한 에러 코드입니다.

HTTP Status설명
404워크스페이스를 찾을 수 없음
404기자를 찾을 수 없음
409이미 CRM 워크스페이스가 존재함 (유저당 1개 제한)
409이미 등록된 기자