POST 전용

API 문서

Google Search, Images, News, Videos, Maps Search, Maps Detail을 엔드포인트별로 정리한 문서입니다.

Base URL
https://test-api.serpbase.dev
인증 헤더
X-API-Key
과금
성공 요청당 1 또는 2 크레딧
인증

POST JSON 요청을 보내고 X-API-Key 헤더에 API key를 전달합니다. 성공과 실패 모두 JSON 본문을 반환합니다.

elapsed_ms

공통 응답 구조

credits_charged

성공 요청당 1 또는 2 크레딧

request_id

support trace id

최소 요청
bash
curl -X POST https://test-api.serpbase.dev/google/search \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your_api_key" \
  -d '{"q":"openai realtime api","hl":"en","gl":"us"}'
공통 응답 구조

성공 응답은 동일한 최상위 메타데이터를 반환합니다. 엔드포인트별 데이터는 organic, images, news, videos, places, place 같은 결과 키에 들어갑니다.

status
필수
number

필수

비즈니스 상태 코드입니다. 0은 성공을 의미합니다.

request_id
필수
string

필수

지원, 재시도, 로그 추적에 사용하는 요청 ID입니다.

elapsed_ms
필수
number

필수

게이트웨이가 측정한 요청 지연 시간(ms)입니다.

credits_charged
필수
number

필수

환불 로직 적용 후 차감된 크레딧입니다.

search_type
필수
string

필수

확정된 타입: search, images, news, videos, maps_search, maps_detail.

엔드포인트
POST
/google/images

이미지 검색

이미지 URL, 썸네일, 출처 페이지, 도메인.

type
images
result
images
과금
2 credits
파라미터
q
필수
string

필수

검색 쿼리 문자열입니다.

hl
선택
string

선택

언어 코드입니다. 기본값은 en입니다.

gl
선택
string

선택

국가 코드입니다. 기본값은 us입니다.

page
선택
number

선택

1부터 시작하는 페이지 번호입니다. 기본값은 1입니다.

응답 필드
query
필수
string

필수

요청에서 정규화된 쿼리입니다.

page
필수
number

필수

현재 페이지 번호입니다. 1부터 시작합니다.

images
선택
ImageResult[]

When image results are parsed.

Google Images results.

ImageResult 결과 항목 구조
rank
필수
number

필수

이 응답 안에서 1부터 시작하는 순위입니다.

position
선택
number

제공되는 경우 rank의 별칭입니다.

position 필드를 기대하는 클라이언트용 정규화 순위입니다.

title
선택
string

이미지 제목 또는 alt 텍스트를 파싱할 수 있을 때 반환됩니다.

결과 제목입니다.

link
필수
string

필수

파서가 반환하는 기본 링크입니다.

url
선택
string

결과 링크를 정규화할 수 있을 때 반환됩니다.

정규화된 대상 URL이며 보통 link와 같습니다.

source_url
선택
string

Google 리다이렉트/원본 URL이 관측된 경우에만 반환됩니다.

디버깅과 출처 확인을 위해 보존되는 원본 Google URL입니다.

display_url
선택
string

Google 표시 텍스트나 도메인을 추출할 수 있을 때 반환됩니다.

표시 URL 또는 출처 도메인입니다.

image_url
필수
string

필수

Full image URL.

thumbnail_url
선택
string

Google이 썸네일을 제공할 때 반환됩니다.

썸네일 URL입니다.

thumbnail
선택
string

제공되는 경우 thumbnail_url의 별칭입니다.

정규화된 썸네일 별칭입니다.

source
선택
string

When source text is parsed.

Image source label.

domain
선택
string

When source page domain can be derived.

Source page domain.

예제
bash
curl -X POST https://test-api.serpbase.dev/google/images \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your_api_key" \
  -d '{
    "q": "iphone 15 pro blue",
    "hl": "en",
    "gl": "us",
    "page": 1
  }'
참고

비주얼 검색, 상품 모니터링, 이미지 출처 탐색.

Some Google Images payload shapes expose rank/link but not every normalized alias. Treat url, display_url, source_url, position, and thumbnail as optional.

POST
/google/news

뉴스 검색

게시자, 시간, 스니펫, 썸네일이 포함된 뉴스 기사.

type
news
result
news
과금
1 credits
파라미터
q
필수
string

필수

검색 쿼리 문자열입니다.

hl
선택
string

선택

언어 코드입니다. 기본값은 en입니다.

gl
선택
string

선택

국가 코드입니다. 기본값은 us입니다.

page
선택
number

선택

1부터 시작하는 페이지 번호입니다. 기본값은 1입니다.

응답 필드
query
필수
string

필수

요청에서 정규화된 쿼리입니다.

page
필수
number

필수

현재 페이지 번호입니다. 1부터 시작합니다.

news
선택
NewsResult[]

When news results are parsed.

Google News results.

NewsResult 결과 항목 구조
rank
필수
number

필수

이 응답 안에서 1부터 시작하는 순위입니다.

position
선택
number

제공되는 경우 rank의 별칭입니다.

position 필드를 기대하는 클라이언트용 정규화 순위입니다.

title
필수
string

필수

결과 제목입니다.

link
필수
string

필수

파서가 반환하는 기본 링크입니다.

url
선택
string

결과 링크를 정규화할 수 있을 때 반환됩니다.

정규화된 대상 URL이며 보통 link와 같습니다.

source_url
선택
string

Google 리다이렉트/원본 URL이 관측된 경우에만 반환됩니다.

디버깅과 출처 확인을 위해 보존되는 원본 Google URL입니다.

display_url
선택
string

Google 표시 텍스트나 도메인을 추출할 수 있을 때 반환됩니다.

표시 URL 또는 출처 도메인입니다.

source
선택
string

When publisher text is parsed.

Publisher/source label.

time
선택
string

When Google exposes time text.

Raw published time text.

published_at
선택
string

Alias for parsed time when available.

Normalized published time alias.

snippet
선택
string

When a snippet is parsed.

Article summary snippet.

thumbnail_url
선택
string

Google이 썸네일을 제공할 때 반환됩니다.

썸네일 URL입니다.

thumbnail
선택
string

제공되는 경우 thumbnail_url의 별칭입니다.

정규화된 썸네일 별칭입니다.

예제
bash
curl -X POST https://test-api.serpbase.dev/google/news \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your_api_key" \
  -d '{
    "q": "apple event",
    "hl": "en",
    "gl": "us",
    "page": 1
  }'
참고

브랜드 모니터링, 트렌드 추적, 미디어 탐색.

Source and time are parsed from compact Google metadata text, so clients should treat both as optional.

POST
/google/videos

동영상 검색

출처, 길이, 시간, 썸네일이 포함된 동영상 결과.

type
videos
result
videos
과금
1 credits
파라미터
q
필수
string

필수

검색 쿼리 문자열입니다.

hl
선택
string

선택

언어 코드입니다. 기본값은 en입니다.

gl
선택
string

선택

국가 코드입니다. 기본값은 us입니다.

page
선택
number

선택

1부터 시작하는 페이지 번호입니다. 기본값은 1입니다.

응답 필드
query
필수
string

필수

요청에서 정규화된 쿼리입니다.

page
필수
number

필수

현재 페이지 번호입니다. 1부터 시작합니다.

videos
선택
VideoResult[]

When video results are parsed.

Google Videos results.

VideoResult 결과 항목 구조
rank
필수
number

필수

이 응답 안에서 1부터 시작하는 순위입니다.

position
선택
number

제공되는 경우 rank의 별칭입니다.

position 필드를 기대하는 클라이언트용 정규화 순위입니다.

title
필수
string

필수

결과 제목입니다.

link
필수
string

필수

파서가 반환하는 기본 링크입니다.

url
선택
string

결과 링크를 정규화할 수 있을 때 반환됩니다.

정규화된 대상 URL이며 보통 link와 같습니다.

source_url
선택
string

Google 리다이렉트/원본 URL이 관측된 경우에만 반환됩니다.

디버깅과 출처 확인을 위해 보존되는 원본 Google URL입니다.

display_url
선택
string

Google 표시 텍스트나 도메인을 추출할 수 있을 때 반환됩니다.

표시 URL 또는 출처 도메인입니다.

source
선택
string

When source/channel can be parsed.

Video source or channel label.

duration
선택
string

When duration appears in result text.

Video duration text.

time
선택
string

When posted time can be parsed.

Raw posted time text.

published_at
선택
string

Alias for parsed time when available.

Normalized posted time alias.

thumbnail_url
선택
string

Google이 썸네일을 제공할 때 반환됩니다.

썸네일 URL입니다.

thumbnail
선택
string

제공되는 경우 thumbnail_url의 별칭입니다.

정규화된 썸네일 별칭입니다.

예제
bash
curl -X POST https://test-api.serpbase.dev/google/videos \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your_api_key" \
  -d '{
    "q": "python asyncio tutorial",
    "hl": "en",
    "gl": "us",
    "page": 1
  }'
참고

동영상 검색, 튜토리얼 탐색, 미디어 모니터링.

If no dedicated video cards are parsed, the parser falls back to news-style extraction for compatible Google layouts.

POST
/google/maps/detail

지도 상세

Google Maps feature_id로 단일 장소 상세 정보를 가져옵니다.

type
maps_detail
result
place
과금
2 credits
파라미터
feature_id
필수
string

필수

Google Maps feature id입니다. 형식은 0x...:0x... 입니다.

hl
선택
string

선택

언어 코드입니다. 기본값은 en입니다.

gl
선택
string

선택

국가 코드입니다. 기본값은 us입니다.

응답 필드
feature_id
필수
string

필수

Feature id resolved from the Maps detail request.

page
필수
number

필수

Always 1 for maps detail.

place
선택
MapsPlace

When place details are parsed.

Single place detail object.

MapsPlace 결과 항목 구조
position
선택
number

Maps Search only.

Place rank in the local result list.

name
필수
string

필수

Place name.

title
필수
string

필수

Alias for name.

feature_id
필수
string

필수

Google Maps feature id.

place_id
선택
string

When Google exposes it.

Google place id.

data_id
선택
string

Alias for feature_id.

Maps data id.

cid
선택
string

Derived from feature_id when possible.

Google CID.

kgmid
선택
string

When present in Maps payload.

Knowledge graph machine id.

google_maps_url
선택
string

When Google exposes a Maps URL.

Google Maps URL.

url
선택
string

google_maps_url or website fallback.

Primary place URL.

rating
선택
number

When rating is present.

Google rating.

types
선택
string[]

When categories are present.

Place type labels.

category
선택
object

When category block is parsed.

Structured category data.

address
선택
string

When address is present.

Formatted address.

address_components
선택
object

When components are present.

Street, city, postal code, country code.

plus_code
선택
object

When plus code is present.

Global and compound plus codes.

phone
선택
string

When phone is present.

Local phone number.

phone_international
선택
string

When present.

International phone number.

phone_uri
선택
string

When present.

Telephone URI.

website
선택
string

When website is present.

Business website.

website_domain
선택
string

When website domain is present.

Business website domain.

latitude
선택
number

When coordinates are present.

Latitude.

longitude
선택
number

When coordinates are present.

Longitude.

image
선택
string

When image is present.

Primary place image.

thumbnail
선택
string

Alias for image when available.

Primary image alias.

photos
선택
MapsPhoto[]

When photos are parsed.

Photo id, URL, size, and optional coordinates.

hours
선택
Record<string,string>

When hours are parsed.

Opening hours by day.

open_status
선택
object

When status is present.

Open status text and current hours.

attributes
선택
object[]

When attributes are parsed.

Grouped place attributes.

related_places
선택
object[]

When related places are present.

Related places from Maps payload.

short_description
선택
string

When description block is present.

Short place description.

description
선택
string

When description block is present.

Longer place description.

snippet
선택
string

short_description or description fallback.

Normalized text summary.

timezone
선택
string

When present.

Place timezone.

region
선택
string

When present.

Region label.

country_code
선택
string

When present.

Country code.

language
선택
string

When present.

Language code from Maps payload.

예제
bash
curl -X POST https://test-api.serpbase.dev/google/maps/detail \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your_api_key" \
  -d '{
    "feature_id": "0x8085809c2c6fdc63:0x4b3f2d70e4f5a123",
    "hl": "en",
    "gl": "us"
  }'
참고

장소 정보 보강, 로컬 CRM 데이터, 상세 페이지.

Use feature_id from Maps Search results to request a detail record.

오류
error
필수
string

필수

사람이 읽을 수 있는 오류 메시지입니다.

0
SUCCESS

Request completed successfully.

1000
INVALID_REQUEST

Missing or invalid body or parameters.

1001
UNAUTHORIZED

Missing, invalid, or revoked API key.

1020
INSUFFICIENT_CREDITS

Account balance is not enough.

1029
RATE_LIMITED

QPS or concurrency limit exceeded.

1500
INTERNAL_ERROR

Unexpected internal server error.

1502
UPSTREAM_FAILED

Worker returned an upstream fetch or parse error.

1503
SERVICE_UNAVAILABLE

No worker session is available.

1504
UPSTREAM_TIMEOUT

Gateway timed out waiting for a worker result.

json
{
  "status": 1001,
  "error": "unauthorized",
  "request_id": "0f3576b2-6e2e-4f1e-bb0e-8cb0d4a60195",
  "elapsed_ms": 0,
  "credits_charged": 0
}
개인정보 및 보존
검색어는 과금, 디버깅, 남용 방지, 계정 로그를 위해 기록될 수 있습니다. 보존 정보는 개인정보 페이지를 확인하세요.