이 문서는 카카오 API 플랫폼 사용자를 위한 공통 편의 기능의 사용 방법을 안내합니다.
메서드 | URL | 인증 방식 |
---|---|---|
GET |
https://kapi.kakao.com/v1/system/ips |
네이티브 앱 키 REST API key JavaScript 키 어드민 키 |
권한 | 사전 설정 | 카카오 로그인 | 사용자 동의 |
---|---|---|---|
- | - | - | - |
카카오 API 플랫폼을 이용하기 위해 필요한 카카오 IP 목록을 가져옵니다. 서비스 서버에 방화벽 등 접근 제한을 적용한 경우, 카카오 서비스별 IP 목록을 인바운드(Inbound)와 아웃바운드(Outbound) 각각 등록해야 합니다.
유형 | 설명 |
---|---|
인바운드 | 카카오로부터의 요청을 받기 위한 IP 요청 유형을 나타내며, 다음 중 하나 callback : 콜백scrap : 서비스 웹 페이지 스크랩 요청 |
아웃바운드 | 카카오 API 사용을 위한 IP 각 카카오 서비스 도메인이며, 다음 중 하나 https://kauth.kakao.com : 카카오 로그인 APIhttps://kapi.kakao.com : 카카오 APIhttps://accounts.kakao.com : 카카오계정https://auth.kakao.com : 카카오계정(모바일)https://dapi.kakao.com : 검색, 로컬 APIhttps://apps.kakao.com : 카카오톡 메시지 APIhttps://talk-apps.kakao.com : 카카오톡 유니버설 링크 |
서비스 앱 키 중 한 가지를 헤더에 담아 GET
으로 요청합니다. 인바운드와 아웃바운드 중 한 가지 IP 목록만 가져오려면 rule_type
을 사용합니다.
요청 성공 시 응답은 카카오 인바운드 및 아웃바운드 IP 목록을 포함합니다. 요청 실패 시 에러 코드로 원인을 확인합니다.
이름 | 설명 | 필수 |
---|---|---|
Authorization | Authorization: KakaoAK ${SERVICE_APP_KEY} 인증 방식, 서비스 앱 키로 인증 요청 다음 중 한 가지 앱 키 사용 네이티브 앱 키 REST API key JavaScript 키 어드민 키 |
O |
이름 | 타입 | 설명 | 필수 |
---|---|---|---|
rule_type | String |
조회할 카카오 IP 유형inbound 또는 outbound 중 하나 |
X |
이름 | 타입 | 설명 | 필수 |
---|---|---|---|
inbound | ServiceIp[] |
카카오 서비스별 인바운드 IP 목록 | X |
outbound | ServiceIp[] |
카카오 서비스별 아웃바운드 IP 목록 | X |
updatedDate | String |
최종 변경일, YYYY-MM-DD (ISO 8601) 형식 |
O |
이름 | 타입 | 설명 | 필수 |
---|---|---|---|
service | String |
서비스 이름 또는 도메인 카카오 서비스 정보 참고 |
O |
ips | String[] |
서비스별 서버의 IP 목록 RFC1519 CIDR 형식 |
O |
ports | Int[] |
서비스별 포트 목록 | O |
addition | IpChange |
서비스별 추가 IP 목록 및 일정 | X |
exclusion | IpChange |
서비스별 제외 IP 목록 및 일정 | X |
updatedDate | String |
최종 변경일, YYYY-MM-DD (ISO 8601) 형식 |
O |
이름 | 타입 | 설명 | 필수 |
---|---|---|---|
ips | String[] |
추가 또는 제외될 IP 목록 RFC1519 CIDR 형식 |
O |
date | String |
추가 또는 제외 일정 | O |
curl -v -X GET "https://kapi.kakao.com/v1/system/ips" \
-H "Authorization: KakaoAK ${REST_API_KEY}"
curl -v -G GET "https://kapi.kakao.com/v1/system/ips" \
-H "Authorization: KakaoAK ${REST_API_KEY}" \
-d "rule_type=inbound"
HTTP/1.1 200 OK
{
"inbound": [
{
"service": "callback",
"ips": [
"211.249.203.104/24",
"220.64.110.190/25",
"220.64.111.158/25",
"220.64.109.84/31",
"203.217.230.3/26"
],
"ports": [
443
],
"updatedDate": "2023-06-28"
},
...
],
"outbound": [
{
"service": "https://kauth.kakao.com", // 추가, 변경 예정인 IP 목록이 없는 경우
"ips": [
"203.133.166.32/32",
"27.0.237.15/32"
],
"ports": [
443
],
"updatedDate": "2023-06-28"
},
{
"service": "https://kapi.kakao.com", // 추가, 변경 예정인 IP 목록이 있는 경우
"ips": [
"203.133.166.33/32",
"211.249.200.134/32"
],
"ports": [
443
],
"updatedDate": "2023-06-28",
"addition": {
"ips": [
"111.111.111.0/32",
"111.111.111.1/32"
],
"date": "2023-06-30"
},
"exclusion": {
"ips": [
"203.133.166.33/32",
"211.249.200.134/32"
],
"date": "2023-07-01"
}
},
{
"service": "https://accounts.kakao.com", // 추가 예정인 ip 목록이 있는 경우
"ips": [
"211.231.99.67/32",
"110.76.142.110/32"
],
"ports": [
443
],
"updatedDate": "2023-06-28",
"addition": {
"ips": [
"111.111.111.2/32",
"111.111.111.3/32"
],
"date": "2023-06-30"
}
},
{
"service": "https://auth.kakao.com", // 변경 예정인 ip 목록이 있는 경우
"ips": [
"219.249.227.143/32",
"210.103.240.15/32",
"110.76.141.64/32"
],
"ports": [
443
],
"updatedDate": "2023-06-28",
"exclusion": {
"ips": [
"219.249.227.143/32",
"210.103.240.15/32"
],
"date": "2023-07-01"
}
},
...
],
"updatedDate": "2023-06-28"
}
HTTP/1.1 200 OK
{
"inbound": [
{
"service": "callback",
"ips": [
"211.249.203.104/24", "220.64.110.190/25", "220.64.111.158/25", "220.64.109.84/31", "203.217.230.3/26"
],
"ports": [443],
"updatedDate": "2023-06-28"
}, {
"service": "scrap",
"ips": [
"211.231.96.0/20", "27.0.236.0/22"
],
"ports": [
80, 443
],
"updatedDate": "2023-06-28"
}
],
"updatedDate": "2023-06-28"
}