Skip to content

ltbl/api.gae9.com

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

12 Commits
Β 
Β 

Repository files navigation

개9 μ˜€ν”ˆAPI μ‚¬μš©μ„€λͺ…μ„œ

μ†Œκ°œ

개9 API(μ΄ν•˜ API)λŠ” 개9 κΈ°λŠ₯ λŒ€λΆ€λΆ„μ„ μ§€μ›ν•˜λ©°, λ³„λ„μ˜ API λ„λ©”μΈμ—μ„œ REST ν˜•μ‹μœΌλ‘œ μ§€μ›ν•©λ‹ˆλ‹€.μ΅œμ‹  λ¬Έμ„œ λ‚΄μš©μ€ 항상 API Github μ—μ„œ ν™•μΈν•˜μ‹€ 수 μžˆμŠ΅λ‹ˆλ‹€.

μ›Œν„°λ§ˆν¬

개9μ—μ„œ μ‹€μ œλ‘œ μ œκ³΅ν•˜λŠ” λͺ¨λ“  μ΄λ―Έμ§€μ—λŠ”, μ›Œν„°λ§ˆν¬κ°€ ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. APIλ₯Ό μ‚¬μš©ν•˜λŠ” μ‚¬μš©μžλŠ”, 이 μ›Œν„°λ§ˆν¬λ₯Ό μž„μ˜λ‘œ μ œκ±°ν•  수 μ—†μœΌλ©° μ œκ±°ν•˜μ—¬ μ΄μš©ν•  경우 API μ‚¬μš©μ΄ 차단 λ˜λŠ” λ“±μ˜ λΆˆμ΄μ΅μ„ λ°›μœΌμ‹€ 수 μžˆμŠ΅λ‹ˆλ‹€.

이와 κ΄€λ ¨λœ μžμ„Έν•œ λ¬Έμ˜λŠ” [email protected] 으둜 λΆ€νƒλ“œλ¦½λ‹ˆλ‹€.

λ¬Έμ„œμ˜ 약속

  • λ³Έ λ¬Έμ„œμ—μ„œ <λ‚΄μš©> ν˜•νƒœλ£Œ ν‘œμ‹œλœ 뢀뢄은, μ λ‹Ήνžˆ μ•Œλ§žμ€ κ°’μœΌλ‘œ λ³€κ²½ν•΄ λ„£μ–΄μ•Ό ν•˜λŠ” 인자λ₯Ό 의미 ν•©λ‹ˆλ‹€.

μš”μ²­

인증

APIλŠ” 인증을 ν•„μš”λ‘œ ν•˜λŠ” API와 인증없이 μž‘λ™λ˜λŠ” API둜 κ΅¬λ³„λ˜λ©°, λͺ¨λ“  μ“°κΈ°/μ—…λ°μ΄νŠΈ/μ‚­μ œλ“±μ˜ μš”μ²­μ—λŠ” 인증이 ν•„μš”ν•©λ‹ˆλ‹€.

기본적으둜 인증은 λ‹€μŒκ³Ό 같은 방식을 μ§€μ›ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

  1. OAuth 2.0 Draft 16 이상
  2. λΈŒλΌμš°μ € μ„Έμ…˜μ„ μ΄μš©ν•œ 방법
주의: λΈŒλΌμš°μ € μ„Έμ…˜μ„ μ΄μš©ν•œ λ°©λ²•μ˜ 경우, GAE9νŒ€κ³Ό λ³„λ„μ˜ ν˜‘μ˜κ°€ ν•„μš”ν•©λ‹ˆλ‹€. μžμ„Έν•œ λ‚΄μš©μ€ [email protected] 으둜 메일 μ£Όμ„Έμš”.

OAuth

OAuth 인증은 OAuth 2.0 Draft 16 μ΄μƒμ˜ ν‘œμ€€μ„ μ€€μˆ˜ν•˜λŠ” μ„ μ—μ„œ μ§€μ›ν•˜λ©°, HTTP Authorization 해더λ₯Ό 톡해, HMAC-SHA1 으둜 μ„œλͺ…λœ μ„œλͺ…λ§Œ μˆ˜λ½ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

Endpoint URL
Token Request http://api.gae9.com/oauth/request_token
Authorize http://api.gae9.com/oauth/authorize
Access Token http://api.gae9.com/oauth/access_token

OAuth 인증을 μ‚¬μš©ν•˜λ €λ©΄ GAE9 개발자 νŽ˜μ΄μ§€ μ—μ„œ Application 등둝 과정을 μˆ˜ν–‰ν•΄μ•Ό ν•©λ‹ˆλ‹€.

μ£Όμ†Œ

λͺ¨λ“  μš”μ²­μ€ http://api.gae9.com ν˜ΈμŠ€νŠΈμ—μ„œ 처리 λ©λ‹ˆλ‹€.

METHOD URL DESCRIPTION 인증
GET /channel 채널 λͺ©λ‘ N
GET /channel/<channel> <channel>에 μ†ν•œ 개그, 사진 λͺ©λ‘ N
GET /tag νƒœκ·Έ λͺ©λ‘ N
GET /gag 개그, 사진 λͺ©λ‘ N
GET /gag/<gag id> νŠΉμ • <gag id>에 λŒ€ν•œ 정보 N
GET /gag/<gag id>/image κ°€μž₯ 큰 μ‚¬μ΄μ¦ˆ 이미지 N
POST /gag/<gag id>/tag/<tag> κ°œκ·Έμ— νƒœκ·Έ μΆ”κ°€ Y
DELETE /gag/<gag id>/tag/<tag> κ°œκ·Έμ— νƒœκ·Έ μ‚­μ œ Y
POST /gag 사진 μ—…λ‘œλ“œ Y
DELETE /gag/<gag id> 사진 μ‚­μ œ Y
GET /search 검색 N

응닡

λͺ¨λ“  μš”μ²­μ— λŒ€ν•œ 응닡은 application/json ν˜•νƒœλ‘œ 제곡되며 JSONP ν˜•νƒœ λ“±μ˜ μ‚¬μš© 편의λ₯Ό μœ„ν•΄ λͺ¨λ“  HTTP 응닡 μ½”λ“œλŠ” 200 으둜 μ œκ³΅λ©λ‹ˆλ‹€.

HTTP/1.1 200 OK
Server: nginx
Content-Type: application/json

{}

이에 따라 λͺ¨λ“  응닡은, λ‹€μŒκ³Ό 같은 ν˜•νƒœλ₯Ό μ·¨ν•©λ‹ˆλ‹€.

{
    "meta": {
        "status": 200,
        "message": "OK"
    },
    "response": { ... }
}

Callback

JSONP 지원을 μœ„ν•΄, jsonp= ν˜Ήμ€ callback= ν˜•μ‹μ˜ 인자λ₯Ό μ§€μ›ν•©λ‹ˆλ‹€. APIν˜ΈμΆœμ‹œ ν•΄λ‹Ή 인자λ₯Ό ν¬ν•¨ν•˜μ—¬ ν˜ΈμΆœν•  경우, 응닡은 ν•΄λ‹Ή 인자둜 μ „λ‹¬λœ ν•¨μˆ˜λ₯Ό ν˜ΈμΆœν•˜λŠ” ν˜•μ‹μœΌλ‘œ λ³€κ²½λ©λ‹ˆλ‹€.

νŽ˜μ΄μ§•

μš”μ²­μ΄ 일정 갯수λ₯Ό λ„˜μ–΄κ°ˆ 경우, meta 응닡에 νŽ˜μ΄μ§• 정보가 ν¬ν•¨λ©λ‹ˆλ‹€. λ”°λΌμ„œ λ‹€μŒκ³Ό 같은 ν˜•νƒœλ‘œ νŽ˜μ΄μ§€ μš”μ²­μ„ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

meta 응닡에 ν¬ν•¨λ˜λŠ” νŽ˜μ΄μ§• μ •λ³΄λŠ” μ•„λž˜μ™€ 같은 ν˜•μ‹ μž…λ‹ˆλ‹€.

{
    "meta": {
        "paging": {
            "next": 2,
            "cur": 1,
            "prev": null
        }
    }
}

/channel

개9 전체 채널 λͺ©λ‘μ„ λ°˜ν™˜ ν•©λ‹ˆλ‹€.

μš”μ²­

응닡

ν•„λ“œλͺ… Type κΈ°λŠ₯ μ„€λͺ…
name String 채널λͺ… κ³ μœ ν•œ κ΅¬λΆ„μž(Uniqye Key)μž…λ‹ˆλ‹€.
url String μ£Όμ†Œ μ›Ήμ—μ„œ 채널에 μ ‘κ·Όν•  수 μžˆλŠ” 고유링크(Permalink)μž…λ‹ˆλ‹€.
feed String ν”Όλ“œμ£Όμ†Œ μ±„λ„μ˜ μ—…λ°μ΄νŠΈλ₯Ό λ°›μ•„λ³Ό 수 μžˆλŠ” RSS μ£Όμ†Œ μž…λ‹ˆλ‹€.
last_published_at String μ΅œκ·Όν•­λͺ© 채널에 κ°€μž₯ λ§ˆμ§€λ§‰μ— μ—…λ‘œλ“œλœ 개그의 μ‹œκ°„μœΌλ‘œ ISO8601 ν˜•μ‹ μž…λ‹ˆλ‹€.
count Number ν•­λͺ©κ°―수 채널에 μ—…λ‘œλ“œ λ˜μ–΄ μžˆλŠ” ν•­λͺ©μ˜ 총 수 μž…λ‹ˆλ‹€.
latest_gag GAG μ΅œκ·Όν•­λͺ© 채널에 κ°€μž₯ λ§ˆμ§€λ§‰μ— μ—…λ‘œλ“œλœ ν•­λͺ©μ˜ 데이터 μž…λ‹ˆλ‹€.

예제

{
    "meta": {
        "status": 200,
        "message": "OK"
    },
    "response": [
        {
            "name": "GAE9",
            "url": "http://gae9.com/channel/1",
            "feed": "http://gae9.com/channel/1/feed",
            "last_published_at": "2012-11-05T11:11:11Z",
            "count": 9292,
            "latest_gag": { ... }
        },
    ]
}

/channel/<channel>

μ§€μ •ν•œ <channel> 정보λ₯Ό λ°˜ν™˜ ν•©λ‹ˆλ‹€.

μš”μ²­

응닡

ν•„λ“œλͺ… Type κΈ°λŠ₯ μ„€λͺ…
name String 채널λͺ… κ³ μœ ν•œ κ΅¬λΆ„μž(Uniqye Key)μž…λ‹ˆλ‹€.
url String μ£Όμ†Œ μ›Ήμ—μ„œ 채널에 μ ‘κ·Όν•  수 μžˆλŠ” 고유링크(Permalink)μž…λ‹ˆλ‹€.
feed String ν”Όλ“œμ£Όμ†Œ μ±„λ„μ˜ μ—…λ°μ΄νŠΈλ₯Ό λ°›μ•„λ³Ό 수 μžˆλŠ” RSS μ£Όμ†Œ μž…λ‹ˆλ‹€.
last_published_at String μ΅œκ·Όν•­λͺ© 채널에 κ°€μž₯ λ§ˆμ§€λ§‰μ— μ—…λ‘œλ“œλœ 개그의 μ‹œκ°„μœΌλ‘œ ISO8601 ν˜•μ‹ μž…λ‹ˆλ‹€.
count Number ν•­λͺ©κ°―수 채널에 μ—…λ‘œλ“œ λ˜μ–΄ μžˆλŠ” ν•­λͺ©μ˜ 총 수 μž…λ‹ˆλ‹€.
latest_gag GAG μ΅œκ·Όν•­λͺ© 채널에 κ°€μž₯ λ§ˆμ§€λ§‰μ— μ—…λ‘œλ“œλœ ν•­λͺ©μ˜ 데이터 μž…λ‹ˆλ‹€.

예제

{
    "meta": {
        "status": 200,
        "message": "OK"
    },
    "response": {
        "name": "GAE9",
        "url": "http://gae9.com/channel/1",
        "feed": "http://gae9.com/channel/1/feed",
        "last_published_at": "2012-11-05T11:11:11Z",
        "count": 9292,
        "latest_gag": { ... }
    }
}

/tag

λ“±λ‘λœ λͺ¨λ“  νƒœκ·Έμ˜ λͺ©λ‘μ„ λ°˜ν™˜ν•©λ‹ˆλ‹€.

μš”μ²­

응닡

ν•„λ“œλͺ… Type κΈ°λŠ₯ μ„€λͺ…
name String 이름 νƒœκ·Έλͺ…
permalink String κ³ μœ μ£Όμ†Œ 그의 κ³ μœ μ£Όμ†Œ(URL)
count Number 총갯수 ν•΄λ‹Ή νƒœκ·Έλ‘œ νƒœκΉ…λœ μ»¨ν…μΈ μ˜ 수

예제

{
    "meta": {
        "status": 200,
        "message": "OK"
    },
    "response": [
        {
            "name": "\\uace0\\uc591\\uc774",
            "permalink": "http://gae9.com/search?tags=\uace0\uc591\uc774",
            "count": 100
        }
    ]
}

/gag

전체 개그 λͺ©λ‘μ„ λ°˜ν™˜ν•©λ‹ˆλ‹€.

μš”μ²­

응닡

/gag/<gag id> ν•­λͺ©μ„ μ°Έκ³ ν•˜μ„Έμš”.

/gag/<gag id>

<gag id> 에 ν•΄λ‹Ήν•˜λŠ” λ‚΄μš©μ„ λ°˜ν™˜ν•©λ‹ˆλ‹€.

μš”μ²­

응닡

ν•„λ“œλͺ… Type κΈ°λŠ₯ μ„€λͺ…
id String 고유ID ν•΄λ‹Ή 개그의 고유 κ΅¬λΆ„μž(Unique Key) μž…λ‹ˆλ‹€.
permalink String κ³ μœ μ£Όμ†Œ ν•΄λ‹Ή 개그λ₯Ό κ³ μœ ν•˜κ²Œ ν‘œν˜„ν•˜λŠ” URL μž…λ‹ˆλ‹€.
author Hash μž‘μ„±μž Β 
author.id String 고유ID μž‘μ„±μžμ˜ 고유 κ΅¬λΆ„μž(Unique Key) μž…λ‹ˆλ‹€.
author.name String μž‘μ„±μžλͺ… μž‘μ„±μžμ˜ ν‘œμ‹œλͺ…(Screen Name) μž…λ‹ˆλ‹€.
title String 제λͺ© ν•΄λ‹Ή 개그의 제λͺ©
published_at String μž‘μ„±μΌ ISO8601 ν˜•μ‹μ˜ 개그 μž‘μ„±μΌ μž…λ‹ˆλ‹€.
score Number 점수 ν•΄λ‹Ή κ°œκ·Έκ°€ νšλ“ν•œ 점수 μž…λ‹ˆλ‹€.
share Number 곡유 ν•΄λ‹Ή κ°œκ·Έκ°€ SNSμ—μ„œ 곡유된 수λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
likes Number μ’‹μ•„μš” ν•΄λ‹Ή κ°œκ·Έκ°€ μ‚¬μ΄νŠΈμ—μ„œ νšλ“ν•œ μ’‹μ•„μš”μ˜ 수λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
tags Array νƒœκ·Έ Β 
tags.name String νƒœκ·Έλͺ… ν•΄λ‹Ή κ°œκ·Έμ— νƒœκ·Έλœ νƒœκ·Έμ˜ μ΄λ¦„μž…λ‹ˆλ‹€.
tags.permalink String νƒœκ·Έμ£Όμ†Œ ν•΄λ‹Ή νƒœκ·Έμ— λŒ€ν•œ 고유 URL μž…λ‹ˆλ‹€.
images Array 이미지 크기별 이미지 μ’…λ₯˜λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
images.name String μ’…λ₯˜ μ΄λ―Έμ§€μ˜ μ’…λ₯˜λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
images.width Number κ°€λ‘œν¬κΈ° μ΄λ―Έμ§€μ˜ κ°€λ‘œν¬κΈ°(λ‹¨μœ„: px)λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
images.height Number μ„Έλ‘œν¬κΈ° μ΄λ―Έμ§€μ˜ μ„Έλ‘œν¬κΈ°(λ‹¨μœ„: px)λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
images.url String μ£Όμ†Œ μ΄λ―Έμ§€μ˜ URL μž…λ‹ˆλ‹€.
source String 좜처 ν•΄λ‹Ή μ»¨ν…μΈ μ˜ 좜처λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
type String μ’…λ₯˜ ν•΄λ‹Ή μ»¨ν…μΈ μ˜ μ’…λ₯˜λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.(image|video)
type_features Hash 뢀가정보 μ’…λ₯˜λ³„λ‘œ 좔가적인 정보가 λ‹΄κΉλ‹ˆλ‹€.

컨텐츠 뢀가정보

개9 μ—μ„œ μ œκ³΅ν•˜λŠ” λͺ¨λ“  μ»¨ν…μΈ λŠ” image ν˜Ήμ€ video 쀑 ν•˜λ‚˜μ˜ μ’…λ₯˜μž…λ‹ˆλ‹€. μ•ˆνƒ€κΉκ²Œλ„, 컨텐츠쀑 μΌλΆ€λŠ” μ™ΈλΆ€μ‚¬μ—…μžμ˜ 컨텐츠에 μ˜μ‘΄ν•΄μ•Ό ν•˜λ―€λ‘œ API μ—μ„œ ν‘œμ€€ν™”λœ 응닡을 μ œκ³΅ν•˜κΈ° μ–΄λ €μš΄ 면이 μžˆμŠ΅λ‹ˆλ‹€.

λ”°λΌμ„œ, 개9 μ—μ„œλŠ” type_features λΌλŠ” 뢀가정보λ₯Ό 각 컨텐츠 μ’…λ₯˜μ— 맞게 좔가적인 μ‘λ‹΅μœΌλ‘œ μ œκ³΅ν•©λ‹ˆλ‹€.

image

"type-features": {
    "content-type": "image/gif"
    "animated": true
}

video

type_features["provider"] 정보에 λ”°λΌμ„œ 각 λ‹€λ₯Έ ν˜•νƒœμ˜ 뢀가정보가 ν¬ν•¨λ©λ‹ˆλ‹€.

youtube

"type_features": {
    "permalink": "http://youtu.be/lhe7IiQ_4xA",
    "provider": "youtube",
    "thumbnails": {
        "default": "http://img.youtube.com/vi/lhe7IiQ_4xA/default.jpg",
        "hqdefault": "http://img.youtube.com/vi/lhe7IiQ_4xA/hqdefault.jpg"
    }
}

vimeo

"type_features": {
    "permalink": "http://vimeo.com/52942657",
    "provider": "vimeo",
    "oembed": "http://vimeo.com/api/oembed.json?url=http%3A//vimeo.com/52942657"
}

tvpot

"type_features": {
    "permalink": "http://tvpot.daum.net/v/vc8abuorokllLLHxlkuTxEx",
    "provider": "tvpot",
    "thumbnails": {
        "default": "http://i1.daumcdn.net/svc/image/U03/tvpot_thumb/vc8abuorokllLLHxlkuTxEx/thumb.png",
        "thumb_1": "http://i1.daumcdn.net/svc/image/U03/tvpot_thumb/vc8abuorokllLLHxlkuTxEx/1.png",
        "thumb_2": "http://i1.daumcdn.net/svc/image/U03/tvpot_thumb/vc8abuorokllLLHxlkuTxEx/2.png",
        "thumb_3": "http://i1.daumcdn.net/svc/image/U03/tvpot_thumb/vc8abuorokllLLHxlkuTxEx/3.png",
    }

}

μ΄λ―Έμ§€μ˜ μ’…λ₯˜

개9 μ—μ„œλŠ” νŠΉμ • 개그의 이미지에 λŒ€ν•΄μ„œ λ‹€μ–‘ν•œ 크기의 이미지λ₯Ό μƒμ„±ν•˜μ—¬ μ œκ³΅ν•©λ‹ˆλ‹€.

μ’…λ₯˜ 크기 κ·œμΉ™
full 원본 크기
thumbnail κ°€λ‘œ 크기λ₯Ό μ΅œλŒ€ 480px κΉŒμ§€ (id 172κΉŒμ§€λŠ” 640px) ν—ˆμš©ν•˜λŠ” 크기둜 μ‘°μ • λ©λ‹ˆλ‹€.
small 80px*80px 크기의 μ •μ‚¬κ°ν˜•μœΌλ‘œ μ‘°μ •ν•©λ‹ˆλ‹€.

λ§Œμ•½, μ—…λ‘œλ“œλœ 컨텐츠가 Animated GIF 라면 λ‹€μŒ κ·œμΉ™μ„ λ”°λ¦…λ‹ˆλ‹€.

full μ›λ³Έμ˜ μ—λ‹ˆλ©”μ΄μ…˜μ„ κ·ΈλŒ€λ‘œ μœ μ§€ν•©λ‹ˆλ‹€.
thumbnail 첫 ν”„λ ˆμž„λ§Œ μΆ”μΆœν•˜μ—¬ 정적 μ΄λ―Έμ§€λ‘œ μƒμ„±ν•©λ‹ˆλ‹€.(크기 λ³€κ²½ μ—†μŒ)
small 첫 ν”„λ ˆμž„λ§Œ μΆ”μΆœν•˜μ—¬ 정적 μ΄λ―Έμ§€λ‘œ μƒμ„±ν•©λ‹ˆλ‹€.(크기 λ³€κ²½ μ—†μŒ)

예제

{
    "meta": {
        "status": 200,
        "message": "OK"
    },
    "response": {
        "id": "16232",
        "permalink": "http://gae9.com/gag/16232",
        "author": {
            "id": "5",
            "name": "kkungkkung"
        },
        "title": "\\uc800\\uae30.. \\ud558\\uc774\\ud30c\\uc774\\ube0c\\uc880 \\ud574\\uc8fc\\uc9c0 \\uc54a\\uc744\\ub798?",
        "published_at": "2012-10-25T02:10:00Z",
        "score": 7,
        "share": 13,
        "likes": 4,
        "tags": [
            {
                "name": "\\uace0\\uc591\\uc774",
                "permalink": "http://gae9.com/search?tags=\uace0\uc591\uc774"
            }
        ],
        "images": [
            {
                "name": "full",
                "width": 1024,
                "height" 768,
                "url": ""
            },
            {
                "name": "thumbnail",
                "width": 480,
                "height": 480,
                "url": ""
            },
            {
                "name": "small",
                "width": 80,
                "height": 80,
                "url": ""
            }
        ],
        "type": "image",
        "type_features": {
            "content-type": "image/jpeg"
        }
        "source": "http://imgur.com/gallery/ZoEY8",
    }
}

/gag/<gag id>/image

<gag id> 에 ν•΄λ‹Ήν•˜λŠ” λ‚΄μš©μ˜ κ°€μž₯ 큰 이미지 μ£Όμ†Œλ₯Ό 302 Found Redirect ν•©λ‹ˆλ‹€.

주의: λ‹Ή APIλŠ” μœ μΌν•˜κ²Œ api.gae9.com 이 μ•„λ‹Œ gae9.com 으둜 호좜 ν•©λ‹ˆλ‹€.

μš”μ²­

응닡

  • 415 UNSUPPORTED MEDIA TYPE: λ™μ˜μƒλ“± λ‹¨μˆœνžˆ μ‚¬μš©ν•  수 μ—†λŠ” 경우 λ°˜ν™˜λ©λ‹ˆλ‹€.
  • 302 Found: μ΄λ―Έμ§€μ˜ μ£Όμ†Œμž…λ‹ˆλ‹€.

/search

λ‹€μ–‘ν•œ λ°©λ²•μœΌλ‘œ 개9 컨텐츠λ₯Ό 검색할 수 μžˆλŠ” κΈ°λŠ₯μž…λ‹ˆλ‹€.

μš”μ²­

검색 APIλŠ” λ‹€μŒκ³Ό 같은 μ’…λ₯˜μ˜ 인자λ₯Ό μ§€μ›ν•˜λ©°, 2개의 인자λ₯Ό μ‘°ν•©ν•˜μ—¬ μ‚¬μš©ν•  수 있으며, sort λ₯Ό μ œμ™Έν•œ ν•œκ°€μ§€ μ΄μƒμ˜ μΈμžκ°€ μ œκ³΅λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€.

μ’…λ₯˜ μ„€λͺ… κΈ°λ³Έκ°’
q 제λͺ©λ“±μ˜ 검색어 NULL
tags λ„μ–΄μ“°κΈ°λ‘œ κ΅¬λΆ„ν•˜λŠ” νƒœκ·Έ λͺ©λ‘μœΌλ‘œ AND 질의 μž…λ‹ˆλ‹€. NULL
type 컨텐츠 μ’…λ₯˜(image, animated, video) NULL
sort μ •λ ¬ 방법을 μ •μ˜ν•©λ‹ˆλ‹€. hot
channel νŠΉμ • 채널λͺ… λ˜λŠ” μ±„λ„μ˜ ID둜 κ²€μƒ‰ν•©λ‹ˆλ‹€. NULL

sort

μ •λ ¬ 방식은 λ‹€μŒκ³Ό 같은 값이 μ§€μ›λ©λ‹ˆλ‹€.

sort μ„€λͺ…
hot μ΅œμ‹  κ°œκ·Έλ“€ 쀑 μΈκΈ°μžˆλŠ” ν•­λͺ©λ“€
best νŠΉμ • 갯수의 μ΅œμ‹  κΈ€ μ€‘μ—μ„œ κ°€μž₯ μ μˆ˜κ°€ 높은 ν•­λͺ©
new μ΅œμ‹ μˆœ

응닡

/gag 와 같은 ν˜•μ‹μœΌλ‘œ 응닡이 μ œκ³΅λ©λ‹ˆλ‹€.

예제

About

GAE9.COM API Documents

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published