ICE의 API 유형은 다음과 같이 구분한다.
...
▪ service
FrontOffice에서 사용하는 API
Path : svc
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/svc/{{apiCategory}}/{{api}}?_siteId=dxp |
_siteId 항상 필수
자동 생성 API
사용 불가능. 설정 API
만 사용 가능.
인증 : Customer의 세션을 사용한다.
Note |
---|
GET {{protocol}}://{{hostname}}:{{port}}/auth/svc/jwt?_siteId=dxp |
...
▪ admin
Admin 사용자용 BackOffice를 위한 API
Path : adm
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/adm/{{nodeType}}/{{event}} |
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/adm/{{apiCategory}}/{{api}} |
인증 : 반드시 로그인된 Admin 사용자만 사용 가능
...
Note |
---|
POST {{protocol}}://{{hostname}}:{{port}}/adm/signIn |
...
▪ manager
Manger 사용자용 BackOffice를 위한 API
Path : mng
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/mng/{{nodeType}}/{{event}} |
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/mng/{{apiCategory}}/{{api}} |
인증 : 반드시 로그인된 Manager 사용자만 사용 가능
...
Note |
---|
POST {{protocol}}://{{hostname}}:{{port}}/mng/signIn |
...
▪ external
외부 또는 레거시 시스템과 연동을 위해서 사용하는 API
Path : ext
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/ext/{{nodeType}}/{{event}} |
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/ext/{{apiCategory}}/{{api}} |
...
▪ internal
ICE 내부 서비스간 연동을 위해서 사용하는 API
Path : int
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/int/{{nodeType}}/{{event}} |
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/int/{{apiCategory}}/{{api}} |
인증 : 클러스터에 등록된 서버들만 통신 가능
...
▪ open
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/api/{{nodeType}}/{{event}} |
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/api/{{apiCategory}}/{{api}} |
자동 생성 API
사용 불가능. 설정 API
만 사용 가능.
인증 : API Key를 이용한 인증 사용, 요구사항에 따라서 인증 방식 확장이 가능(OAuth 등)
...
Expand |
---|
title | [apiCategory] apiType : null, [api] apiType : service |
---|
|
Code Block |
---|
| {
"typeId": "apiCategory",
"id": "product",
"categoryName": "product API",
"dateFormat": "yyyy-MM-dd HH:mm:ss",
"fileUrlFormat": {
"default": "{{:getEnvValue('core.cluster.api-url-prefix')}}"
},
"commonParameters": [
],
"commonResponse": [
]
} |
Code Block |
---|
{
"typeId": "api",
"category": "product",
"apiId": "list",
"apiName": "Product List",
"apiType": "service",
"method": "GET",
"parameters": [
],
"config": {
...
}
} |
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/svc/product/list?_siteId=dxp |
|
Expand |
---|
title | [apiCategory] apiType : service, [api] apiType : null |
---|
|
Code Block |
---|
| {
"typeId": "apiCategory",
"id": "product",
"categoryName": "product API",
"apiType": "service",
"dateFormat": "yyyy-MM-dd HH:mm:ss",
"fileUrlFormat": {
"default": "{{:getEnvValue('core.cluster.api-url-prefix')}}"
},
"commonParameters": [
],
"commonResponse": [
]
}
|
Code Block |
---|
| {
"typeId": "api",
"category": "product",
"apiId": "list",
"apiName": "Product List",
"apiType": "",
"method": "GET",
"parameters": [
],
"config": {
...
}
} |
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/svc/product/list?_siteId=dxp |
|
Expand |
---|
title | [apiCategory] apiType : service, [api] apiType : admin |
---|
|
Code Block |
---|
| {
"typeId": "apiCategory",
"id": "product",
"categoryName": "product API",
"apiType": "service",
"dateFormat": "yyyy-MM-dd HH:mm:ss",
"fileUrlFormat": {
"default": "{{:getEnvValue('core.cluster.api-url-prefix')}}"
},
"commonParameters": [
],
"commonResponse": [
]
}
|
Code Block |
---|
| {
"typeId": "api",
"category": "product",
"apiId": "list",
"apiName": "Product List",
"apiType": "admin",
"method": "GET",
"parameters": [
],
"config": {
...
}
} |
Info |
---|
{{protocol}}://{{hostname}}:{{port}}/adm/product/list |
|