Skip to content

support OAuth 2.0 Login & RESTFul API for XpressEngine

Notifications You must be signed in to change notification settings

qlazzarus/xe-oauth-server

Repository files navigation

XE DEVELOPER CENTER

νŠΉμ§•

XE 에 O-Auth 2.0 둜그인과 RESTFul API λ₯Ό μ§€μ›ν•©λ‹ˆλ‹€.

μš”κ΅¬μ‚¬ν•­

  • PHP 7.0+
  • OpenSSL
  • XpressEngine 1.9.6+
  • composer
  • redis (optional)

λΌμ΄μ„ΌμŠ€

ν•΄λ‹Ή ν”„λ‘œκ·Έλž¨μ€ MIT λΌμ΄μ„ΌμŠ€λ₯Ό λ”°λ¦…λ‹ˆλ‹€.

  • 후원은 항상 κ°μ‚¬ν•©λ‹ˆλ‹€.
  • μ‹ ν•œμ€ν–‰ 110-318-788269 μ΄ν˜„μ„

TODO

  • 메세지 ν˜Ήμ€ λŒ“κΈ€ μž‘μ„±μ‹œ μ•Œλ¦Ό κΈ°λŠ₯ 지원
  • μ‹€μ‹œκ°„ API

곡톡 μ—λŸ¬

  • 400 - unsupported_grant_type
    • ν•΄λ‹Ή ν”„λ‘œκ·Έλž¨μ€ Authorization Code Grant 와 Refresh Token Grant 만 μ§€μ›ν•©λ‹ˆλ‹€.
    • λ‹€λ₯Έ grant type 으둜 μš”μ²­μ‹œ 좜λ ₯λ©λ‹ˆλ‹€.
  • 400 - invalid_client_id
    • client_id κ°€ λˆ„λ½ ν˜Ήμ€ μ‘΄μž¬ν•˜μ§€ μ•Šμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 400 - invalid_code
    • auth_code κ°€ 잘λͺ»λ˜κ±°λ‚˜ 만료 ν˜Ήμ€ revoke λ˜μ—ˆμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 400 - invalid_redirect_uri
    • callback url 이 잘λͺ»λ˜μ—ˆμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 400 - invalid_refresh_token
    • refresh token 이 잘λͺ»λ˜μ—ˆμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 400 - invalid_scope
    • κΆŒν•œ (scope) κ°€ 잘λͺ»λ˜μ—ˆμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 401 - invalid_client
    • client_id κ°€ 잘λͺ»λ˜μ—ˆμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 401 - invalid_request
    • refresh token 이 잘λͺ»λ˜κ±°λ‚˜ 만료 ν˜Ήμ€ revoke λ˜μ—ˆμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 401 - access_denied
    • access token 이 잘λͺ»λ˜κ±°λ‚˜ 만료 ν˜Ήμ€ revoke λ˜μ—ˆμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 401 - permission_denied
    • ν•΄λ‹Ή λ¦¬μ†ŒμŠ€μ— μ ‘κ·Όν•˜μ§€ λͺ»ν•  경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 404 - resource is gone
    • ν•΄λ‹Ή λ¦¬μ†ŒμŠ€κ°€ μ‘΄μž¬ν•˜μ§€ μ•Šμ„λ•Œ 좜λ ₯λ©λ‹ˆλ‹€.
  • 405 - method_not_allowed
    • μ§€μ›ν•˜μ§€ μ•ŠλŠ” Request Method
    • API End Point 에 ν—ˆμš©λ˜μ§€ μ•ŠλŠ” Method 둜 μ ‘κ·Όμ‹œ 좜λ ₯λ©λ‹ˆλ‹€.
  • 406 - module_not_exists
    • μ—°κ΄€ λͺ¨λ“ˆμ΄ μ‘΄μž¬ν•˜μ§€ μ•Šμ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.
  • 429 - User request limit reached
    • ν—ˆμš©ν•˜λŠ” λ²”μœ„μ˜ μš”μ²­μ΄ λ„˜μ–΄κ°”μ„ 경우 좜λ ₯λ©λ‹ˆλ‹€.

API Reference

μ•½κ΄€λ™μ˜

API λ₯Ό μ‚¬μš©ν•˜κΈ° μœ„ν•΄μ„œ λ¨Όμ € ν•΄λ‹Ή μ•±μ˜ μ΄μš©λ™μ˜κ°€ ν•„μš”ν•©λ‹ˆλ‹€. μ΄μš©λ™μ˜λ₯Ό λ°›λŠ” μœ μ €μ˜ κ°œμΈμ •λ³΄λ§Œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

GET /?module=devcenter&act=dispDevcenterAuthorize&client_id=[앱이름]&state=[state]

Request

  • client_id - ν•„μˆ˜ / μ•± 아이디 μž…λ‹ˆλ‹€.
  • state - μ˜΅μ…˜ / μ•½κ΄€ λ™μ˜ ν›„ callback url 둜 μ΄λ™μ‹œ 같이 μ „λ‹¬λ©λ‹ˆλ‹€. 이 값을 톡해 CSRF 곡격을 λ°©μ–΄ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

Authorization Code Grant

μ•½κ΄€ λ™μ˜ ν›„ Authorization Code 와 ν•¨κ»˜ Callback URL 둜 μ΄λ™ν•˜κ²Œ λ©λ‹ˆλ‹€. μ΄λ•Œ Auth Code λ₯Ό μ „λ‹¬ν•˜λ©΄ Access Token / Refresh Token 을 전달 받을 수 μžˆμŠ΅λ‹ˆλ‹€. authorization code λŠ” 10λΆ„μ˜ μœ νš¨μ‹œκ°„μ„ κ°€μ§‘λ‹ˆλ‹€.

POST /?module=devcenter&act=token

Request

  • client_id - ν•„μˆ˜ / μ•± 아이디 μž…λ‹ˆλ‹€.
  • client_secret - ν•„μˆ˜ / API λΉ„λ°€ν‚€ μž…λ‹ˆλ‹€.
  • redirect_uri - ν•„μˆ˜ / callback url 을 μ§€μ •ν•©λ‹ˆλ‹€.
  • grant_type - ν•„μˆ˜ / 인증 νƒ€μž…μ„ μ§€μ •ν•©λ‹ˆλ‹€. authorization_code 둜 μž…λ ₯ν•©λ‹ˆλ‹€.
  • code - ν•„μˆ˜ / λ¦¬λ‹€μ΄λ ‰μ…˜μœΌλ‘œ λ„˜μ–΄μ˜¨ authorization code λ₯Ό μž…λ ₯ν•©λ‹ˆλ‹€.

Response

{
    "token_type":"Bearer",
    "expires_in":7200,
    "access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImVlNzhjZWViZWNjMTQ2NGRkNmNlODk2OGJmNzFjNzVlMzkxZjNjNTQ4ZTRkMjYyN2YxOTRmNGNiZmFmYzY5MTNiZGJjMmFlMGQwYjcwZDAwIn0.eyJhdWQiOiIwMDA0Ni1DMEpCNS1YOUxGRi03NldOWS1ZQVFMNSIsImp0aSI6ImVlNzhjZWViZWNjMTQ2NGRkNmNlODk2OGJmNzFjNzVlMzkxZjNjNTQ4ZTRkMjYyN2YxOTRmNGNiZmFmYzY5MTNiZGJjMmFlMGQwYjcwZDAwIiwiaWF0IjoxNTIzOTQyMzc4LCJuYmYiOjE1MjM5NDIzNzgsImV4cCI6MTUyMzk0OTU3OCwic3ViIjoiMTUwIiwic2NvcGVzIjpbInJlYWQiLCJ3cml0ZSJdfQ.GBYXav59z7xnTz2_SpqtzFvvtLPy2hl69I06E_tZQ9ZeqnS5mk7aA_2DvIjSgoKsoOXfMKgBl-7se7VGAkDFopcNb3rwimpUt6pXoEQKHNSVwKZqNQ09R0tCPuP8DcUdoAt27QLnwPyDDJnRg7L6Bd3EIKhjLGdwfJlyz-2YbZp8VzluaRDqYrBn8MYdPjUqoZ5_E26btwSj-2ZVl-ucGB-4OlqiZ5lwgCUmvoOJAz4BB5Q1bJ9BH8iPAfdofpQhqStg5kJuq1RodXQz2_ZcpKaTNT5Fe8f1bEnmE4dEHEJuMZ767DNaD8quJCo2VeiCeNo8MU4kA9mcP6XhivugBw",
    "refresh_token":"def50200d7bcb8b8882dd90876e5507bfa467a510de0447bd21742ead737e3915d08c698ba09417164eb28b737f654270e2806e9a0621417c4d8f57b2919ed6fcc26b285811b4bf3b3ec4edc93cd7976bf691fa00d8bbf74054fedb4af7fb6b8335a9e62fa06555bc996c04b2f7431280e813409e9f0b4c56f30bf795582ed91742759719f03c9cdfa9af7538c4c905eea231441b4156f0e00daf36d8f96d87ec8f09b7d80071bf1082e2f7cf5f7a821dc05ce9e778ad29b5bcc87d1b4c06e80004ea61bffeba417b1e5fee3b9ca191549789c60e5682476ea8149bb2aa1dbb83c1c26b74017b17a4bfec0c3dff0d0a936d307531cd2dc1bcf09bd821fa32ab2824ce1e2df72a97d0c45caf09a2d2359ee9830017ed3c699d37c6899affd5ab65211005d1a0a5e07c8839e848ac4c77d85ab4403ad8da43b1be37ea4184a2ac64469232678699832770d6b5e09d5ddf4fc4555f859ccd8efec6aa9ca5a7f6530854c5a549e16c6234b752a9f8c43e18675e493f84be463fcaa835b61f28d31b6971ca835994382082d654cb18e"
}
  • token_type - 토큰 νƒ€μž…μ΄ λ¦¬ν„΄λ©λ‹ˆλ‹€.
  • expires_in - access token λ§Œλ£Œμ‹œκ°„μ΄ λ¦¬ν„΄λ©λ‹ˆλ‹€.
  • access_token - access token μž…λ‹ˆλ‹€.
  • refresh_token - refresh token μž…λ‹ˆλ‹€.

Refresh Token Grant

access token 은 2μ‹œκ°„μ˜ μœ νš¨μ‹œκ°„μ„ κ°€μ§‘λ‹ˆλ‹€. μœ νš¨μ‹œκ°„μ΄ μ§€λ‚œ 경우 refresh token 을 톡해 κ°±μ‹ ν•  수 μžˆμŠ΅λ‹ˆλ‹€. refresh token 은 1κ°œμ›”μ˜ μœ νš¨μ‹œκ°„μ„ κ°€μ§‘λ‹ˆλ‹€.

POST /?module=devcenter&act=token

Request

  • client_id - ν•„μˆ˜ / μ•± 아이디 μž…λ‹ˆλ‹€.
  • client_secret - ν•„μˆ˜ / API λΉ„λ°€ν‚€ μž…λ‹ˆλ‹€.
  • grant_type - ν•„μˆ˜ / 인증 νƒ€μž…μ„ μ§€μ •ν•©λ‹ˆλ‹€. refresh_token 으둜 μž…λ ₯ν•©λ‹ˆλ‹€.
  • refresh_token - ν•„μˆ˜ / refresh token 을 μž…λ ₯ν•©λ‹ˆλ‹€.

Response

{
    "token_type":"Bearer",
    "expires_in":7200,
    "access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImVlNzhjZWViZWNjMTQ2NGRkNmNlODk2OGJmNzFjNzVlMzkxZjNjNTQ4ZTRkMjYyN2YxOTRmNGNiZmFmYzY5MTNiZGJjMmFlMGQwYjcwZDAwIn0.eyJhdWQiOiIwMDA0Ni1DMEpCNS1YOUxGRi03NldOWS1ZQVFMNSIsImp0aSI6ImVlNzhjZWViZWNjMTQ2NGRkNmNlODk2OGJmNzFjNzVlMzkxZjNjNTQ4ZTRkMjYyN2YxOTRmNGNiZmFmYzY5MTNiZGJjMmFlMGQwYjcwZDAwIiwiaWF0IjoxNTIzOTQyMzc4LCJuYmYiOjE1MjM5NDIzNzgsImV4cCI6MTUyMzk0OTU3OCwic3ViIjoiMTUwIiwic2NvcGVzIjpbInJlYWQiLCJ3cml0ZSJdfQ.GBYXav59z7xnTz2_SpqtzFvvtLPy2hl69I06E_tZQ9ZeqnS5mk7aA_2DvIjSgoKsoOXfMKgBl-7se7VGAkDFopcNb3rwimpUt6pXoEQKHNSVwKZqNQ09R0tCPuP8DcUdoAt27QLnwPyDDJnRg7L6Bd3EIKhjLGdwfJlyz-2YbZp8VzluaRDqYrBn8MYdPjUqoZ5_E26btwSj-2ZVl-ucGB-4OlqiZ5lwgCUmvoOJAz4BB5Q1bJ9BH8iPAfdofpQhqStg5kJuq1RodXQz2_ZcpKaTNT5Fe8f1bEnmE4dEHEJuMZ767DNaD8quJCo2VeiCeNo8MU4kA9mcP6XhivugBw",
    "refresh_token":"def50200d7bcb8b8882dd90876e5507bfa467a510de0447bd21742ead737e3915d08c698ba09417164eb28b737f654270e2806e9a0621417c4d8f57b2919ed6fcc26b285811b4bf3b3ec4edc93cd7976bf691fa00d8bbf74054fedb4af7fb6b8335a9e62fa06555bc996c04b2f7431280e813409e9f0b4c56f30bf795582ed91742759719f03c9cdfa9af7538c4c905eea231441b4156f0e00daf36d8f96d87ec8f09b7d80071bf1082e2f7cf5f7a821dc05ce9e778ad29b5bcc87d1b4c06e80004ea61bffeba417b1e5fee3b9ca191549789c60e5682476ea8149bb2aa1dbb83c1c26b74017b17a4bfec0c3dff0d0a936d307531cd2dc1bcf09bd821fa32ab2824ce1e2df72a97d0c45caf09a2d2359ee9830017ed3c699d37c6899affd5ab65211005d1a0a5e07c8839e848ac4c77d85ab4403ad8da43b1be37ea4184a2ac64469232678699832770d6b5e09d5ddf4fc4555f859ccd8efec6aa9ca5a7f6530854c5a549e16c6234b752a9f8c43e18675e493f84be463fcaa835b61f28d31b6971ca835994382082d654cb18e"
}
  • token_type - 토큰 νƒ€μž…μ΄ λ¦¬ν„΄λ©λ‹ˆλ‹€.
  • expires_in - access token λ§Œλ£Œμ‹œκ°„μ΄ λ¦¬ν„΄λ©λ‹ˆλ‹€.
  • access_token - access token μž…λ‹ˆλ‹€.
  • refresh_token - refresh token μž…λ‹ˆλ‹€.

ν”„λ‘œν•„ 뢈러였기 (νƒ€μΈμ˜ κ°œμΈμ •λ³΄ μ‘°νšŒμ‹œ stream κΆŒν•œ ν•„μš”)

μ‚¬μš©μžμ˜ ν”„λ‘œν•„μ„ ν˜ΈμΆœν•©λ‹ˆλ‹€.

GET /?module=devcenter&act=profile

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • member_unique_srl - μ˜΅μ…˜ / νƒ€μΈμ˜ κ°œμΈμ •λ³΄λ₯Ό μ‘°νšŒν• λ•Œ μ‚¬μš©ν•˜λŠ” ν‚€μž…λ‹ˆλ‹€.

Response

{
    "member_unique_srl": "6jOJl1LBXtOl1lv6MqJBIv6fmf0aGexsvnlvjRPRdmQkyhqAQroaBEIDsUMUA9zUuCNbJ3",
    "joined_at": 1487744104,
    "allow_mailing": false,
    "allow_message": true,
    "email_address": "mas***@mono.svn.io",
    "user_id": "kyle_li",
    "nick_name": "μ‹ λ””λ‘œνΌ",
    "blog": ""
}
  • member_unique_srl - κ³ μœ ν•œ κ°œμΈν‚€μž…λ‹ˆλ‹€.
  • joined_at - κ°€μž…μΌ μž…λ‹ˆλ‹€.
  • allow_mailing - 메일 ν—ˆμš© μœ λ¬΄μž…λ‹ˆλ‹€.
  • allow_message - 메세지 ν—ˆμš© μœ λ¬΄μž…λ‹ˆλ‹€.
  • email_address - 이메일 μ£Όμ†Œμž…λ‹ˆλ‹€.
  • user_id - μ•„μ΄λ””μž…λ‹ˆλ‹€.
  • nick_name - λ‹‰λ„€μž„μž…λ‹ˆλ‹€.
  • blog - λΈ”λ‘œκ·Έ μ£Όμ†Œμž…λ‹ˆλ‹€.

친ꡬ 뢈러였기 (message κΆŒν•œ ν•„μš”)

μ‚¬μš©μžμ˜ 친ꡬλ₯Ό ν˜ΈμΆœν•©λ‹ˆλ‹€.

GET /?module=devcenter&act=friend

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • page - μ˜΅μ…˜ / νŽ˜μ΄μ§€ νŒŒλΌλ©”ν„°μž…λ‹ˆλ‹€.

Response

{
    "count": 12,
    "current_page": "1",
    "total_page": 2,
    "entries": [
        {
            "member_unique_srl": "6jOJl1LCRuyxA1wyB6GaUAYJrM1EP5FN20fURYzRaK0371Uhn6kfKvG1y5HFes8G7eh9Nx",
            "nick_name": "κΉ€λ˜˜λ˜˜",
            "group_srl": 0,
            "group_title": null,
            "register_at": 1514655325
        },
        ...
    ]
}
  • count - 총 row μˆ˜μž…λ‹ˆλ‹€.
  • current_page - ν˜„μž¬ page μž…λ‹ˆλ‹€.
  • total_page - 총 page 수 μž…λ‹ˆλ‹€.
  • entries - ν˜„μž¬ row κ°€ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • member_unique_srl - κ³ μœ ν•œ κ°œμΈν‚€μž…λ‹ˆλ‹€.
    • nick_name - λ‹‰λ„€μž„μž…λ‹ˆλ‹€.
    • group_srl - 친ꡬ κ·Έλ£Ήν‚€μž…λ‹ˆλ‹€.
    • group_title - 친ꡬ κ·Έλ£Ή μ΄λ¦„μž…λ‹ˆλ‹€.
    • register_at - 등둝일 μž…λ‹ˆλ‹€.

친ꡬ λ“±λ‘ν•˜κΈ° (message κΆŒν•œ ν•„μš”)

친ꡬλ₯Ό λ“±λ‘ν•©λ‹ˆλ‹€.

POST /?module=devcenter&act=friend

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • member_unique_srl - ν•„μˆ˜ / μ‚¬μš©μžμ˜ κ³ μœ ν•œ κ°œμΈν‚€λ₯Ό μž…λ ₯ν•©λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

친ꡬ μ‚­μ œν•˜κΈ° (message κΆŒν•œ ν•„μš”)

친ꡬλ₯Ό μ‚­μ œν•©λ‹ˆλ‹€.

DELETE /?module=devcenter&act=friend

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • member_unique_srl - ν•„μˆ˜ / μ‚¬μš©μžμ˜ κ³ μœ ν•œ κ°œμΈν‚€λ₯Ό μž…λ ₯ν•©λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

메세지 뢈러였기 (message κΆŒν•œ ν•„μš”)

μ‚¬μš©μžμ˜ 메세지λ₯Ό ν˜ΈμΆœν•©λ‹ˆλ‹€.

GET /?module=devcenter&act=message

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • page - μ˜΅μ…˜ / νŽ˜μ΄μ§€ νŒŒλΌλ©”ν„°μž…λ‹ˆλ‹€.
  • message_srl - μ˜΅μ…˜ / 메세지 ν‚€ μž…λ‹ˆλ‹€. μ§€μ •μ‹œ λ‚΄μš©μ„ μ½μ–΄μ˜΅λ‹ˆλ‹€.
  • category - μ˜΅μ…˜ / 메세지 νƒ€μž…μž…λ‹ˆλ‹€. 기본값은 receive (받은 메세지) 이며 send (보낸 메세지) / store (보관 메세지) λ₯Ό 지정이 κ°€λŠ₯ν•©λ‹ˆλ‹€.

Response

{
    "count": 4,
    "current_page": "1",
    "total_page": 1,
    "entries": [
        {
            "message_srl": 3701750,
            "title": "λ‹˜ μž˜μƒκΈ΄λ“―",
            "member_unique_srl": "6jOJl1LDLVnOseVBcMlgx7qy2d6B7lfrKZ4czpHoH62zJoobuQ2QQFLhy0OJpWKkjh1KI5",
            "nick_name": "λ‹˜νŒ¬",
            "is_readed": true,
            "register_at": 1511598698,
            "readed_at": 1511607866
        },
        ...
    ]
}
  • count - 총 row μˆ˜μž…λ‹ˆλ‹€.
  • current_page - ν˜„μž¬ page μž…λ‹ˆλ‹€.
  • total_page - 총 page 수 μž…λ‹ˆλ‹€.
  • entries - ν˜„μž¬ row κ°€ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • message_srl - 메세지 ν‚€ μž…λ‹ˆλ‹€.
    • title - 제λͺ© μž…λ‹ˆλ‹€.
    • member_unique_srl - κ³ μœ ν•œ κ°œμΈν‚€μž…λ‹ˆλ‹€.
    • nick_name - λ‹‰λ„€μž„μž…λ‹ˆλ‹€.
    • is_readed - 메세지 확인 μœ λ¬΄μž…λ‹ˆλ‹€.
    • register_at - 등둝일 μž…λ‹ˆλ‹€.
    • readed_at - 확인일 μž…λ‹ˆλ‹€.

메세지 μ“°κΈ° (message κΆŒν•œ ν•„μš”)

메세지λ₯Ό λ“±λ‘ν•©λ‹ˆλ‹€.

POST /?module=devcenter&act=message&member_unique_srl=[memer_unique_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • member_unique_srl - ν•„μˆ˜ / μ‚¬μš©μžμ˜ κ³ μœ ν•œ κ°œμΈν‚€λ₯Ό μž…λ ₯ν•©λ‹ˆλ‹€.
  • title - ν•„μˆ˜ / 메세지 제λͺ© μž…λ‹ˆλ‹€.
  • content - ν•„μˆ˜ / 메세지 λ‚΄μš© μž…λ‹ˆλ‹€.
  • allow_mail - ν•„μˆ˜ / 메세지λ₯Ό λ©”μΌλ‘œ μˆ˜μ‹ ν—ˆμš©ν•  것인지 선택할 수 μžˆμŠ΅λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

메세지 μ‚­μ œν•˜κΈ° (message κΆŒν•œ ν•„μš”)

메세지λ₯Ό μ‚­μ œν•©λ‹ˆλ‹€.

DELETE /?module=devcenter&act=message&message_srl=[message_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • message_srl - ν•„μˆ˜ / 메세지킀λ₯Ό μž…λ ₯ν•©λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

둜그인 기둝 뢈러였기 (read κΆŒν•œ ν•„μš”)

μ‚¬μš©μžμ˜ 둜그인 기둝을 ν˜ΈμΆœν•©λ‹ˆλ‹€. (loginlog λͺ¨λ“ˆμ΄ μ„€μΉ˜λ˜μ–΄ μžˆμ–΄μ•Ό 호좜이 κ°€λŠ₯ν•©λ‹ˆλ‹€.)

GET /?module=devcenter&act=login_histories

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • page - μ˜΅μ…˜ / νŽ˜μ΄μ§€ νŒŒλΌλ©”ν„°μž…λ‹ˆλ‹€.

Response

{
    "count": 4456,
    "current_page": "1",
    "total_page": 149,
    "entries": [
        {
            "log_srl": 4768094,
            "address": "1.234.4.18",
            "is_success": true,
            "platform": "OAuth2",
            "browser": "ExCF for Smartphone",
            "register_at": 1523947627
        },
        ...
    ]
}
  • count - 총 row μˆ˜μž…λ‹ˆλ‹€.
  • current_page - ν˜„μž¬ page μž…λ‹ˆλ‹€.
  • total_page - 총 page 수 μž…λ‹ˆλ‹€.
  • entries - ν˜„μž¬ row κ°€ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • log_srl - 메세지 ν‚€ μž…λ‹ˆλ‹€.
    • address - 아이피 μ£Όμ†Œμž…λ‹ˆλ‹€.
    • is_success - 둜그인 성곡 μœ λ¬΄μž…λ‹ˆλ‹€.
    • platform - ν”Œλž«νΌ μž…λ‹ˆλ‹€.
    • browser - 브라우져 μž…λ‹ˆλ‹€. (OAuth일 κ²½μš°λŠ” ν—ˆμš©ν•œ μ•± 이름)
    • register_at - 등둝일 μž…λ‹ˆλ‹€.

μ‚¬μ΄νŠΈ 메뉴 뢈러였기 (κΆŒν•œ λΆˆν•„μš”)

ν•΄λ‹Ή μ‚¬μ΄νŠΈμ˜ κ²Œμ‹œνŒ λ¦¬μŠ€νŠΈλ“€μ„ κ°€μ Έμ˜΅λ‹ˆλ‹€.

GET /?module=devcenter&act=sitemap

Response

{
    "menuSrl": 65,
    "title": "메뉴",
    "description": null,
    "items": [
        {
            "text": "자게",
            "url": "freeboard",
            "is_shortcut": "N",
            "module": "board',
            "browser_title": "μžμœ κ²Œμ‹œνŒ",
        },
        ...
    ]
}
  • menuSrl - 메뉴킀 μž…λ‹ˆλ‹€.
  • title - 메뉴λͺ…μž…λ‹ˆλ‹€.
  • description - 메뉴에 λŒ€ν•œ μ„€λͺ…μž…λ‹ˆλ‹€.
  • items - 메뉴 μ•„λž˜ κ²Œμ‹œνŒκ³Ό νŽ˜μ΄μ§€λ“€μ΄ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • text - κ²Œμ‹œνŒ λͺ… μž…λ‹ˆλ‹€.
    • url - κ²Œμ‹œνŒ μ£Όμ†Œμž…λ‹ˆλ‹€.
    • is_shortcut - λ‹¨μˆœ 링크인지 ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • module - κ²Œμ‹œνŒ λͺ¨λ“ˆμΈμ§€ / νŽ˜μ΄μ§€ λͺ¨λ“ˆμΈμ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • browser_title - λΈŒλΌμš°μ € 타이틀에 ν‘œμ‹œλ˜λŠ” λ‚΄μš©μ„ ν‘œκΈ°ν•©λ‹ˆλ‹€.

κ²Œμ‹œλ¬Ό 뢈러였기 (stream κΆŒν•œ ν•„μš”)

κ²Œμ‹œλ¬Όμ„ λ³ΌλŸ¬μ˜΅λ‹ˆλ‹€. 일반적으둜 stream κΆŒν•œμ΄ ν•„μš”ν•˜μ§€λ§Œ, μžμ‹ μ˜ 글을 읽을 κ²½μš°μ—λŠ” read κΆŒν•œμœΌλ‘œ μΆ©λΆ„ν•©λ‹ˆλ‹€.

GET /?module=devcenter&act=article

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • board - μ˜΅μ…˜ / κ²Œμ‹œνŒ μ•„μ΄λ””μž…λ‹ˆλ‹€. (board λ‚˜ article_srl νŒŒλΌλ©”ν„° ν•˜λ‚˜λŠ” ν•„μˆ˜ μž…λ‹ˆλ‹€.)
  • article_srl - μ˜΅μ…˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
  • page - μ˜΅μ…˜ / νŽ˜μ΄μ§€ νŒŒλΌλ©”ν„°μž…λ‹ˆλ‹€.

Response

{
    "count": 202835,
    "current_page": 1,
    "total_page": 10142,
    "grant": {
        "is_site_admin": true,
        "manager": true,
        "access": true,
        "is_admin": true,
        "list": true,
        "view": true,
        "write_document": true,
        "write_comment": true,
        "consultation_read": true
    },
    "entries": [
        {
            "article_srl": 4767813,
            "title": "μ•ˆλ…•ν•˜μ„Έμš”.",
            "nick_name": "이똘똘",
            "member_unique_srl": "6jOJl1LBXmY4mFDgzPmPXDlzXOttUy02z5PtFCTlJHzy60lFttaZMPNTOyyoYPDLxQx9nF",
            "member_profile_image": null,
            "member_signature": null,
            "comment_count": 0,
            "readed_count": 21,
            "voted_count": null,
            "is_notice": true,
            "register_at": 1518520846,
            "updated_at": 1518520858
        },
        ...
    ]
}  
  • count - 총 row μˆ˜μž…λ‹ˆλ‹€.
  • current_page - ν˜„μž¬ page μž…λ‹ˆλ‹€.
  • total_page - 총 page 수 μž…λ‹ˆλ‹€.
  • grant - κΆŒν•œ λ‚΄μš© μž…λ‹ˆλ‹€.
    • is_site_admin - μ‚¬μ΄νŠΈ κ΄€λ¦¬μžμΈμ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • manager - ν•΄λ‹Ή κ²Œμ‹œνŒ 관리 κΆŒν•œμ΄ μžˆλŠ”μ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • access - μ ‘κ·Ό κ°€λŠ₯ν•œμ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • is_admin - κ·Έλ£Ή κ΄€λ¦¬μžμΈμ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • list - 리슀트 보기 κΆŒν•œμ΄ μžˆλŠ”μ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • view - κΈ€ 보기 κΆŒν•œμ΄ μžˆλŠ”μ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • write_document - κΈ€ μ“°κΈ° κΆŒν•œμ΄ μžˆλŠ”μ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • write_comment - λŒ“κΈ€ 달기 κΆŒν•œμ΄ μžˆλŠ”μ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
    • consultation_read - 상담글 읽기 κΆŒν•œμ΄ μžˆλŠ”μ§€ ν‘œκΈ°ν•©λ‹ˆλ‹€.
  • entries - ν˜„μž¬ row κ°€ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • article_srl - κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
    • title - 제λͺ© μž…λ‹ˆλ‹€.
    • nick_name - λ‹‰λ„€μž„μž…λ‹ˆλ‹€.
    • member_unique_srl - κ³ μœ ν•œ κ°œμΈν‚€μž…λ‹ˆλ‹€.
    • member_profile_image - ν”„λ‘œν•„ μ΄λ―Έμ§€μž…λ‹ˆλ‹€.
    • member_signature - νšŒμ› μ„œλͺ…μž…λ‹ˆλ‹€.
    • comment_count - λŒ“κΈ€ 수 μž…λ‹ˆλ‹€.
    • readed_count - 쑰회 수 μž…λ‹ˆλ‹€.
    • voted_count - μΆ”μ²œ 수 μž…λ‹ˆλ‹€.
    • is_notice - 곡지 μœ λ¬΄μž…λ‹ˆλ‹€.
    • register_at - 등둝일 μž…λ‹ˆλ‹€.
    • updated_at - μˆ˜μ •μΌ μž…λ‹ˆλ‹€.

κ²Œμ‹œλ¬Ό μ“°κΈ° (write κΆŒν•œ ν•„μš”)

κ²Œμ‹œλ¬Όμ„ λ“±λ‘ν•©λ‹ˆλ‹€.

POST /?module=devcenter&act=article&board=[board]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • board - ν•„μˆ˜ / κ²Œμ‹œνŒ ID μž…λ‹ˆλ‹€.
  • title - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό 제λͺ© μž…λ‹ˆλ‹€.
  • content - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό λ‚΄μš© μž…λ‹ˆλ‹€.
  • allow_comment - μ˜΅μ…˜ / λŒ“κΈ€ ν—ˆμš© μœ λ¬΄μž…λ‹ˆλ‹€. 기본은 0 μž…λ‹ˆλ‹€.
  • allow_trackback - μ˜΅μ…˜ / νŠΈλž™λ°± ν—ˆμš© μœ λ¬΄μž…λ‹ˆλ‹€. 기본은 0 μž…λ‹ˆλ‹€.
  • allow_notify - μ˜΅μ…˜ / λŒ“κΈ€ μž‘μ„±μ‹œ 메세지 μ•Œλ¦Ό ν—ˆμš© μœ λ¬΄μž…λ‹ˆλ‹€. 기본은 0 μž…λ‹ˆλ‹€.
  • tags - μ˜΅μ…˜ / κ΄€λ ¨ νƒœκ·Έλ₯Ό μž‘μ„±ν•©λ‹ˆλ‹€. ꡬ뢄 κΈ°ν˜ΈλŠ” , μž…λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

κ²Œμ‹œλ¬Ό μˆ˜μ • (write κΆŒν•œ ν•„μš”)

κ²Œμ‹œλ¬Όμ„ μˆ˜μ •ν•©λ‹ˆλ‹€.

PUT /?module=devcenter&act=article&article_srl=[article_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • article_srl - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
  • title - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό 제λͺ© μž…λ‹ˆλ‹€.
  • content - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό λ‚΄μš© μž…λ‹ˆλ‹€.
  • allow_comment - μ˜΅μ…˜ / λŒ“κΈ€ ν—ˆμš© μœ λ¬΄μž…λ‹ˆλ‹€. 기본은 0 μž…λ‹ˆλ‹€.
  • allow_trackback - μ˜΅μ…˜ / νŠΈλž™λ°± ν—ˆμš© μœ λ¬΄μž…λ‹ˆλ‹€. 기본은 0 μž…λ‹ˆλ‹€.
  • allow_notify - μ˜΅μ…˜ / λŒ“κΈ€ μž‘μ„±μ‹œ 메세지 μ•Œλ¦Ό ν—ˆμš© μœ λ¬΄μž…λ‹ˆλ‹€. 기본은 0 μž…λ‹ˆλ‹€.
  • tags - μ˜΅μ…˜ / κ΄€λ ¨ νƒœκ·Έλ₯Ό μž‘μ„±ν•©λ‹ˆλ‹€. ꡬ뢄 κΈ°ν˜ΈλŠ” , μž…λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

κ²Œμ‹œλ¬Ό μ‚­μ œν•˜κΈ° (write κΆŒν•œ ν•„μš”)

κ²Œμ‹œλ¬Όμ„ μ‚­μ œν•©λ‹ˆλ‹€.

DELETE /?module=devcenter&act=article&article_srl=[article_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • article_srl - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

λŒ“κΈ€ 뢈러였기 (stream κΆŒν•œ ν•„μš”)

λŒ“κΈ€μ„ λ³ΌλŸ¬μ˜΅λ‹ˆλ‹€.

GET /?module=devcenter&act=comment

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • article_srl - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
  • page - μ˜΅μ…˜ / νŽ˜μ΄μ§€ νŒŒλΌλ©”ν„°μž…λ‹ˆλ‹€.

Response

{
    "count": 4,
    "current_page": 1,
    "total_page": 1,
    "entries": [
        {
            "comment_srl": 4767853,
            "article_srl": 4767847,
            "nick_name": "λ“œλž˜κ³€λ§ˆμŠ€ν„°",
            "member_unique_srl": "6jOJl1LBY6umrF39uda6LufXfB1ICt7ZYAnHFYnosBQmkGzbtNJLUP3NgN4LIQCUvXKYWX",
            "member_profile_image": null,
            "member_signature": null,
            "content": "<div class="xe_content">λ“œλž˜κ³€μ΄λž‘ κ΄€κ³„μžˆλŠ”κ±° μ•„λ‹κΉŒμš”</div>",
            "depth": 0,
            "voted_count": 0,
            "register_at": 1518521179,
            "updated_at": 1518521179
        },
        ...
    ]
}  
  • count - 총 row μˆ˜μž…λ‹ˆλ‹€.
  • current_page - ν˜„μž¬ page μž…λ‹ˆλ‹€.
  • total_page - 총 page 수 μž…λ‹ˆλ‹€.
  • entries - ν˜„μž¬ row κ°€ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • comment_srl - λŒ“κΈ€ ν‚€ μž…λ‹ˆλ‹€.
    • article_srl - κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
    • nick_name - λ‹‰λ„€μž„μž…λ‹ˆλ‹€.
    • member_unique_srl - κ³ μœ ν•œ κ°œμΈν‚€μž…λ‹ˆλ‹€.
    • member_profile_image - ν”„λ‘œν•„ μ΄λ―Έμ§€μž…λ‹ˆλ‹€.
    • member_signature - νšŒμ› μ„œλͺ…μž…λ‹ˆλ‹€.
    • content - λŒ“κΈ€ λ‚΄μš© μž…λ‹ˆλ‹€.
    • depth - λŒ€λŒ“κΈ€ 깊이 μž…λ‹ˆλ‹€.
    • voted_count - μΆ”μ²œ 수 μž…λ‹ˆλ‹€.
    • register_at - 등둝일 μž…λ‹ˆλ‹€.
    • updated_at - μˆ˜μ •μΌ μž…λ‹ˆλ‹€.

λŒ“κΈ€ μ“°κΈ° (write κΆŒν•œ ν•„μš”)

λŒ“κΈ€μ„ λ“±λ‘ν•©λ‹ˆλ‹€.

POST /?module=devcenter&act=comment&article_srl=[article_srl]&parent_srl=[parent_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • article_srl - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
  • parent_srl - μ˜΅μ…˜ / μƒμœ„ λŒ“κΈ€ (λŒ€λŒ“κΈ€ κΈ°λŠ₯) ν‚€ μž…λ‹ˆλ‹€.
  • content - ν•„μˆ˜ / λŒ“κΈ€ λ‚΄μš© μž…λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

λŒ“κΈ€ μˆ˜μ • (write κΆŒν•œ ν•„μš”)

λŒ“κΈ€μ„ μˆ˜μ •ν•©λ‹ˆλ‹€.

PUT /?module=devcenter&act=comment&article_srl=[article_srl]&comment_srl=[comment_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • article_srl - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
  • comment_srl - ν•„μˆ˜ / λŒ“κΈ€ ν‚€ μž…λ‹ˆλ‹€.
  • content - ν•„μˆ˜ / λŒ“κΈ€ λ‚΄μš© μž…λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

λŒ“κΈ€ μ‚­μ œ (write κΆŒν•œ ν•„μš”)

λŒ“κΈ€μ„ μ‚­μ œν•©λ‹ˆλ‹€.

DELETE /?module=devcenter&act=comment&article_srl=[article_srl]&comment_srl=[comment_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • article_srl - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
  • comment_srl - ν•„μˆ˜ / λŒ“κΈ€ ν‚€ μž…λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

슀크랩 κΈ€ 뢈러였기 (read κΆŒν•œ ν•„μš”)

μŠ€ν¬λž©ν•œ κ²Œμ‹œλ¬Όμ„ λ³ΌλŸ¬μ˜΅λ‹ˆλ‹€.

GET /?module=devcenter&act=scrap

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • page - μ˜΅μ…˜ / νŽ˜μ΄μ§€ νŒŒλΌλ©”ν„°μž…λ‹ˆλ‹€.

Response

{
    "count": 202835,
    "current_page": 1,
    "total_page": 10142,
    "entries": [
        {
            "article_srl": 4767847,
            "title": "백일섭이 λ­‘λ‹ˆκΉŒ",
            "nick_name": "μ•„μ΄μœ ",
            "member_unique_srl": "6jOJl1LBXtOl1lv6MqJBIv6fmf0aGexsvnlvjRPRdmQkyhqAQroaBEIDsUMUA9zUuCNbJ3",
            "member_profile_image": null,
            "member_signature": null,
            "comment_count": null,
            "readed_count": null,
            "voted_count": null,
            "is_notice": null,
            "register_at": 1522649834,
            "updated_at": null
        },
        ...
    ]
}  
  • count - 총 row μˆ˜μž…λ‹ˆλ‹€.
  • current_page - ν˜„μž¬ page μž…λ‹ˆλ‹€.
  • total_page - 총 page 수 μž…λ‹ˆλ‹€.
  • entries - ν˜„μž¬ row κ°€ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • article_srl - κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
    • title - 제λͺ© μž…λ‹ˆλ‹€.
    • nick_name - λ‹‰λ„€μž„μž…λ‹ˆλ‹€.
    • member_unique_srl - κ³ μœ ν•œ κ°œμΈν‚€μž…λ‹ˆλ‹€.
    • member_profile_image - ν”„λ‘œν•„ μ΄λ―Έμ§€μž…λ‹ˆλ‹€.
    • member_signature - νšŒμ› μ„œλͺ…μž…λ‹ˆλ‹€.
    • comment_count - λŒ“κΈ€ 수 μž…λ‹ˆλ‹€.
    • readed_count - 쑰회 수 μž…λ‹ˆλ‹€.
    • voted_count - μΆ”μ²œ 수 μž…λ‹ˆλ‹€.
    • is_notice - 곡지 μœ λ¬΄μž…λ‹ˆλ‹€.
    • register_at - 등둝일 μž…λ‹ˆλ‹€.
    • updated_at - μˆ˜μ •μΌ μž…λ‹ˆλ‹€.

슀크랩 κ²Œμ‹œλ¬Ό λ“±λ‘ν•˜κΈ° (write κΆŒν•œ ν•„μš”)

슀크랩 κ²Œμ‹œλ¬Όμ„ λ“±λ‘ν•©λ‹ˆλ‹€.

POST /?module=devcenter&act=scrap&article_srl=[article_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • article_srl - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

슀크랩 κ²Œμ‹œλ¬Ό μ‚­μ œν•˜κΈ° (write κΆŒν•œ ν•„μš”)

슀크랩 κ²Œμ‹œλ¬Όμ„ μ‚­μ œν•©λ‹ˆλ‹€.

DELETE /?module=devcenter&act=scrap&article_srl=[article_srl]

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • article_srl - ν•„μˆ˜ / κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.

Response

{
    "status": true
}
  • status - μš”μ²­ μ„±κ³΅μ‹œ true 둜 λ¦¬ν„΄λ©λ‹ˆλ‹€.

λ‚΄ κ²Œμ‹œκΈ€ 뢈러였기 (read κΆŒν•œ ν•„μš”)

λ‚΄κ°€ μž‘μ„±ν•œ κ²Œμ‹œλ¬Όμ„ λ³ΌλŸ¬μ˜΅λ‹ˆλ‹€.

GET /?module=devcenter&act=my_article

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • page - μ˜΅μ…˜ / νŽ˜μ΄μ§€ νŒŒλΌλ©”ν„°μž…λ‹ˆλ‹€.

Response

{
    "count": 202835,
    "current_page": 1,
    "total_page": 10142,
    "entries": [
        {
            "article_srl": 4767847,
            "title": "백일섭이 λ­‘λ‹ˆκΉŒ",
            "nick_name": "μ•„μ΄μœ ",
            "member_unique_srl": "6jOJl1LBXtOl1lv6MqJBIv6fmf0aGexsvnlvjRPRdmQkyhqAQroaBEIDsUMUA9zUuCNbJ3",
            "member_profile_image": null,
            "member_signature": null,
            "comment_count": null,
            "readed_count": null,
            "voted_count": null,
            "is_notice": null,
            "register_at": 1522649834,
            "updated_at": null
        },
        ...
    ]
}  
  • count - 총 row μˆ˜μž…λ‹ˆλ‹€.
  • current_page - ν˜„μž¬ page μž…λ‹ˆλ‹€.
  • total_page - 총 page 수 μž…λ‹ˆλ‹€.
  • entries - ν˜„μž¬ row κ°€ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • article_srl - κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
    • title - 제λͺ© μž…λ‹ˆλ‹€.
    • nick_name - λ‹‰λ„€μž„μž…λ‹ˆλ‹€.
    • member_unique_srl - κ³ μœ ν•œ κ°œμΈν‚€μž…λ‹ˆλ‹€.
    • member_profile_image - ν”„λ‘œν•„ μ΄λ―Έμ§€μž…λ‹ˆλ‹€.
    • member_signature - νšŒμ› μ„œλͺ…μž…λ‹ˆλ‹€.
    • comment_count - λŒ“κΈ€ 수 μž…λ‹ˆλ‹€.
    • readed_count - 쑰회 수 μž…λ‹ˆλ‹€.
    • voted_count - μΆ”μ²œ 수 μž…λ‹ˆλ‹€.
    • is_notice - 곡지 μœ λ¬΄μž…λ‹ˆλ‹€.
    • register_at - 등둝일 μž…λ‹ˆλ‹€.
    • updated_at - μˆ˜μ •μΌ μž…λ‹ˆλ‹€.

λ‚΄ λŒ“κΈ€ 뢈러였기 (read κΆŒν•œ ν•„μš”)

λ‚΄κ°€ μž‘μ„±ν•œ λŒ“κΈ€μ„ λ³ΌλŸ¬μ˜΅λ‹ˆλ‹€.

GET /?module=devcenter&act=comment

Request Header

  • Authorization - ν•„μˆ˜ / Bearer [access_token] ν˜•μ‹μœΌλ‘œ λ³΄λƒ…λ‹ˆλ‹€.

Request

  • page - μ˜΅μ…˜ / νŽ˜μ΄μ§€ νŒŒλΌλ©”ν„°μž…λ‹ˆλ‹€.

Response

{
    "count": 4,
    "current_page": 1,
    "total_page": 1,
    "entries": [
        {
            "comment_srl": 4767853,
            "article_srl": 4767847,
            "nick_name": "λ“œλž˜κ³€λ§ˆμŠ€ν„°",
            "member_unique_srl": "6jOJl1LBY6umrF39uda6LufXfB1ICt7ZYAnHFYnosBQmkGzbtNJLUP3NgN4LIQCUvXKYWX",
            "member_profile_image": null,
            "member_signature": null,
            "content": "<div class="xe_content">λ“œλž˜κ³€μ΄λž‘ κ΄€κ³„μžˆλŠ”κ±° μ•„λ‹κΉŒμš”</div>",
            "depth": 0,
            "voted_count": 0,
            "register_at": 1518521179,
            "updated_at": 1518521179
        },
        ...
    ]
}  
  • count - 총 row μˆ˜μž…λ‹ˆλ‹€.
  • current_page - ν˜„μž¬ page μž…λ‹ˆλ‹€.
  • total_page - 총 page 수 μž…λ‹ˆλ‹€.
  • entries - ν˜„μž¬ row κ°€ λ‹΄κΈ΄ λ°°μ—΄μž…λ‹ˆλ‹€.
    • comment_srl - λŒ“κΈ€ ν‚€ μž…λ‹ˆλ‹€.
    • article_srl - κ²Œμ‹œλ¬Ό ν‚€ μž…λ‹ˆλ‹€.
    • nick_name - λ‹‰λ„€μž„μž…λ‹ˆλ‹€.
    • member_unique_srl - κ³ μœ ν•œ κ°œμΈν‚€μž…λ‹ˆλ‹€.
    • member_profile_image - ν”„λ‘œν•„ μ΄λ―Έμ§€μž…λ‹ˆλ‹€.
    • member_signature - νšŒμ› μ„œλͺ…μž…λ‹ˆλ‹€.
    • content - λŒ“κΈ€ λ‚΄μš© μž…λ‹ˆλ‹€.
    • depth - λŒ€λŒ“κΈ€ 깊이 μž…λ‹ˆλ‹€.
    • voted_count - μΆ”μ²œ 수 μž…λ‹ˆλ‹€.
    • register_at - 등둝일 μž…λ‹ˆλ‹€.
    • updated_at - μˆ˜μ •μΌ μž…λ‹ˆλ‹€.

About

support OAuth 2.0 Login & RESTFul API for XpressEngine

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published