Social login

You can find every API used by the social login product on a single page.
It walks through prerequisites, app information management, login authentication, user lookup, token expiry, and the Kakao Sync-only features, in that order.

Prerequisites

You must register a Redirect URI when you create an app in the provider's developer console.

  • Kakao: https://mars-verify-cb.ibapi.kr/api/callback/kakao
  • Naver: https://mars-verify-cb.ibapi.kr/api/callback/naver

If you use the Kakao Sync feature, you also need to set up Kakao Login, simple sign-up, consent items, and the primary channel in advance in Kakao Developers.
For Naver, register your application and finish issuing the clientId and clientSecret beforehand.

Register app information

POST/api/verify/v1/social/app-config/regist

Registers the app information needed for the social login integration. It stores the clientId, clientSecret, and redirectUrl issued during setup.

Body Parameters

{}JSON

appId

RequiredString

The service appId.

provider

RequiredString

The social provider. example: kakao, naver, google.

clientId

RequiredString

The provider's clientId.

clientSecret

String

The provider's clientSecret. Required when using Naver.

redirectUrl

RequiredString

The redirect URL that receives the callback after login completes.

userRef

String

The reference value you supplied.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/verify/v1/social/app-config/regist" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "appId": "BIZ",
6 "provider": "kakao",
7 "clientId": "KAKAO_CLIENT_ID",
8 "clientSecret": "KAKAO_CLIENT_SECRET",
9 "redirectUrl": "https://service.example.com/oauth/callback",
10 "userRef": "social-app-regist-001"
11 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "userRef":"social-app-regist-001"
12 }
13}

Look up app information

POST/api/verify/v1/social/app-config

Looks up registered social app information. If you omit appId, all apps are returned.

Body Parameters

{}JSON

appId

String

The appId to look up.

userRef

String

The reference value you supplied.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/verify/v1/social/app-config" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "appId": "BIZ",
6 "userRef": "social-app-list-001"
7 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "userRef":"social-app-list-001",
12 "list": [
13 {
14 "appId":"BIZ",
15 "provider":"kakao",
16 "clientId":"KAKAO_CLIENT_ID",
17 "clientSecret":"KAKAO_CLIENT_SECRET",
18 "redirectUrl":"https://service.example.com/oauth/callback",
19 "regDate":"2026-03-31 11:12:45"
20 }
21 ]
22 }
23}

Delete app information

POST/api/verify/v1/social/app-config/delete

Deletes registered app information. If you also send provider, you can delete only that provider.

Body Parameters

{}JSON

appId

RequiredString

The appId to delete.

provider

String

The social provider to delete.

userRef

String

The reference value you supplied.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/verify/v1/social/app-config/delete" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "appId": "BIZ",
6 "provider": "kakao",
7 "userRef": "social-app-delete-001"
8 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "userRef":"social-app-delete-001"
12 }
13}

Request login authentication

GET/api/verify/v1/social/authorize

The social login authentication request API. The request redirects to the social login page, and the result is delivered to redirectUrl after login completes.

Query Parameters

provider

RequiredString

The social login provider. example: naver, kakao, google.

appId

RequiredString

The service appId you registered in advance.

state

RequiredString

A CSRF protection string used to validate the request and response.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -G "https://mars.ibapi.kr/api/verify/v1/social/authorize" \
2 -H "Authorization: {ApiKey}" \
3 --data-urlencode "provider=naver" \
4 --data-urlencode "appId=BIZ" \
5 --data-urlencode "state=20260331153000001"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "state":"20260331153000001",
12 "provider":"naver",
13 "token":"58f5edaf-0fc1-3ac7-8fe0-c4453abf0ba1"
14 }
15}

Look up user information

POST/api/verify/v1/social/user/me

Looks up user information with the token issued after social login completes.

Body Parameters

{}JSON

provider

RequiredString

The social login provider.

token

RequiredString

The token issued during the login authentication request step.

userRef

String

The reference value you supplied.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/verify/v1/social/user/me" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "provider": "kakao",
6 "token": "58f5edaf-0fc1-3ac7-8fe0-c4453abf0ba1",
7 "userRef": "social-user-me-001"
8 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "provider":"kakao",
12 "token":"58f5edaf-0fc1-3ac7-8fe0-c4453abf0ba1",
13 "kakao": {
14 "id": 111111,
15 "kakaoAccount": {
16 "email":"sample@domain.com",
17 "profile": {
18 "nickname":"bizgo"
19 }
20 }
21 }
22 }
23}

Request token expiry

POST/api/verify/v1/social/token

Expires a social login token. Kakao may apply an all-app/all-device logout policy, and Naver restricts external logout APIs by policy.

Body Parameters

{}JSON

provider

RequiredString

The social login provider.

token

RequiredString

The token to expire.

userRef

String

The reference value you supplied.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/verify/v1/social/token" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "provider": "kakao",
6 "token": "58f5edaf-0fc1-3ac7-8fe0-c4453abf0ba1",
7 "userRef": "social-token-expire-001"
8 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "provider":"kakao",
12 "userRef":"social-token-expire-001"
13 }
14}

Kakao Sync only

These features are available only to services that have adopted Kakao Sync.
Use them to look up, revoke, or grant service terms consent โ€” you manage the actual terms operation policy in your own service.

POST/api/verify/v1/social/user/kakao/service-terms

Looks up a Kakao Sync user's service terms consent history.

Body Parameters

{}JSON

token

RequiredString

The user identification token.

result

String

The lookup list type. example: agreed_service_terms, app_service_terms.

tags

String

The list of service terms tags to look up. Separate them with commas (,).

userRef

String

The reference value you supplied.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/verify/v1/social/user/kakao/service-terms" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "token": "58f5edaf-0fc1-3ac7-8fe0-c4453abf0ba1",
6 "result": "agreed_service_terms",
7 "tags": "service_2020_0218,optional_20200616",
8 "userRef": "social-kakao-terms-001"
9 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "provider":"kakao",
12 "userRef":"social-kakao-terms-001",
13 "kakao": {
14 "id": 111111,
15 "serviceTerms": [
16 { "tag":"service_2020_0218", "required": true, "agreed": true, "revocable": false },
17 { "tag":"optional_20200616", "required": false, "agreed": false, "revocable": true }
18 ]
19 }
20 }
21}
POST/api/verify/v1/social/user/kakao/service-terms

Withdraws consent to Kakao Sync service terms. Only items with revocable=true can be withdrawn.

Body Parameters

{}JSON

token

RequiredString

The user identification token.

tags

RequiredString

The list of service terms tags to withdraw. Separate them with commas (,).

userRef

String

The reference value you supplied.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/verify/v1/social/user/kakao/service-terms" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "token": "58f5edaf-0fc1-3ac7-8fe0-c4453abf0ba1",
6 "result": "agreed_service_terms",
7 "tags": "optional_20200616",
8 "userRef": "social-kakao-revoke-001"
9 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "provider":"kakao",
12 "userRef":"social-kakao-revoke-001",
13 "kakao": {
14 "id": 111111,
15 "revokedServiceTerms": [
16 { "tag":"optional_20200616", "agreed": false }
17 ]
18 }
19 }
20}
POST/api/verify/v1/social/user/kakao/service-terms

The API that records consent to Kakao Sync service terms. Use it to reflect your own service's consent result on the Kakao API platform.

Body Parameters

{}JSON

token

RequiredString

The user identification token.

tags

RequiredString

The list of service terms tags to agree to. Separate them with commas (,).

userRef

String

The reference value you supplied.

Returns

common

Object

The common response section.

data

Object

The product response data section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/verify/v1/social/user/kakao/service-terms" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "token": "58f5edaf-0fc1-3ac7-8fe0-c4453abf0ba1",
6 "result": "agreed_service_terms",
7 "tags": "term01,term02",
8 "userRef": "social-kakao-agree-001"
9 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"SUCCESS",
10 "resultMsg":"์„ฑ๊ณต",
11 "provider":"kakao",
12 "userRef":"social-kakao-agree-001",
13 "kakao": {
14 "id": 111111,
15 "agreedServiceTerms": [
16 { "tag":"term01", "agreed": true, "agreedAt":"2026-03-31T08:33:25Z", "agreedBy":"KAPI" },
17 { "tag":"term02", "agreed": true, "agreedAt":"2026-03-31T08:33:25Z", "agreedBy":"KAPI" }
18 ]
19 }
20 }
21}