Page History
...
REST API를 사용하기 위해서는 먼저 인증 절차를 거쳐야 하며, 별도의 swagger 페이지를 통해 각 API를 테스트 하실 수 있습니다.
Authentication
모든 REST API 호출 시 헤더에 api_token을 포함하여야 하며, 그렇지 않은 경우 '401 Unauthorized.' 에러를 받게 됩니다.
...
Service Name | API Call | Call Type | Call Description |
---|---|---|---|
Authentication | /auth | POST | 사용자 아이디와 비밀번호 정보로 토큰을 생성합니다. |
REST API
매직인포 서버 REST API는 여러가지 기능을 제공하며 기능별 구성은 아래와 같습니다.
Category | Controller | Description |
---|---|---|
Authetication | authentication-controller | 인증 관련 |
Content | content-controller | 콘텐츠 관리 |
content-group-controller | 콘텐츠 그룹 관리 | |
Playlist | playlist-controller | 플레이리스트 관리 |
playlist-group-controller | 플레이리스트 그룹 관리 | |
Schedule | content-schedule-controller | 콘텐츠 스케줄 관리 |
content-schedule-group-controller | 콘텐츠 스케줄 그룹 관리 | |
message-schedule-controller | 메시지 스케줄 관리 | |
message-schedule-group-controller | 메시지 스케줄 그룹 관리 | |
Device | device-controller | 장치 관리 |
device-group-controller | 장치 그룹 관리 | |
User | user-controller | 사용자 관리 |
user-group-controller | 사용자 그룹 관리 | |
Etc | environment-controller | 환경 설정 |
Authentication
각 REST API를 호출하기 전, 인증을 위한 토큰을 발급 받아야 합니다. 각 토큰을 관리하는 서비스는 아래와 같습니다.
Service Name | API call | Call Type | Description |
---|---|---|---|
authenticationRequest | /auth | POST | 사용자 ID 및 비밀번호를 이용하여 인증을 위한 토큰 값을 가져옵니다. |
authenticationRequest | /auth/refresh | GET | 토큰을 새로 생성하여 만료시간을 연장합니다. 재 로그인 없이 계속해서 REST API를 호출할 수 있습니다. |
Content
업로드, 승인, 삭제, 리스트 관리 등 콘텐츠를 관리할 수 있습니다. 콘텐츠를 관리하는 서비스는 아래와 같습니다.
Service Name | API call | Call Type | Description |
---|---|---|---|
listAllContent | /restapi/v1.0/cms/contents | GET | 모든 콘텐츠 목록을 가져옵니다. |
listDashboardContentInfo | /restapi/v1.0/cms/contents/dashboard | GET | 대쉬보드에서 필요한 콘텐츠 관련 정보를 가져옵니다. |
listContent | /restapi/v1.0/cms/contents/filter | POST | 여러 조건으로 필터링된 콘텐츠 리스트를 가져옵니다. |
forceDeleteContent | /restapi/v1.0/cms/contents/force/{contentId} | DELETE | 콘텐츠의 사용여부에 상관없이 콘텐츠를 삭제합니다. |
deleteContent | /restapi/v1.0/cms/contents/{contentId} | DELETE | 삭제 가능한 콘텐츠인지 확인 후 콘텐츠를 삭제합니다. |
getActiveContentInfo | /restapi/v1.0/cms/contents/{contentId} | GET | 활성화된 버전의 콘텐츠 상세 정보를 가져옵니다. |
approveContents | /restapi/v1.0/cms/contents/{contentId}/approval | PUT | 미승인 상태의 콘텐츠를 승인/반려합니다. |
uploadContent | /restapi/v1.0/cms/contents/{groupId} | POST | 새 콘텐츠를 업로드합니다. |
listDefaultGroup | /restapi/v1.0/cms/contents/groups | GET | 콘텐츠 기본 그룹 목록을 가져옵니다. |
getGroup | /restapi/v1.0/cms/contents/groups/{groupId} | GET | {groupId} 그룹의 상세 정보를 가져옵니다. |
listChildGroup | /restapi/v1.0/cms/contents/groups/{groupId}/child | GET | {groupId} 그룹의 하위 그룹 목록을 가져옵니다. |
Playlist
콘텐츠를 이용하여 플레이리스트를 만들고, 수정 및 삭제 등 관리 할 수 있습니다. 플레이리스트를 관리하는 서비스는 아래와 같습니다.
Service Name | API call | Call Type | Description |
---|---|---|---|
listAllPlaylist | /restapi/v1.0/cms/playlists | GET | 모든 플레이리스트 목록을 가져옵니다. |
createPlaylist | /restapi/v1.0/cms/playlists | POST | 새 플레이리스트를 생성합니다. |
getDashboardPlaylistInfo | /restapi/v1.0/cms/playlists/dashboard | GET | 대쉬보드에 필요한 플레이리스트 정보를 가져옵니다. |
listPlaylist | /restapi/v1.0/cms/playlists/filter | POST | 여러 조건으로 필터링된 플레이리스트 목록을 가져옵니다. |
deletePlaylist | /restapi/v1.0/cms/playlists/{playlistId} | DELETE | 선택된 플레이리스트를 삭제합니다. |
getActivePlaylistInfo | /restapi/v1.0/cms/playlists/{playlistId} | GET | 활성화된 버전으로 플레이리스트의 상세 정보를 가져옵니다. |
editPlaylist | /restapi/v1.0/cms/playlists/{playlistId} | PUT | 플레이리스트를 수정합니다. |
copyPlaylist | /restapi/v1.0/cms/playlists/{playlistId}/copy | PUT | 플레이리스트를 복사합니다. |
listDefaultGroup | /restapi/v1.0/cms/playlists/groups | GET | 플레이리스트 기본 그룹 목록을 가져옵니다. |
getGroup | /restapi/v1.0/cms/playlists/groups/{groupId} | GET | {groupId} 그룹의 상세 정보를 가져옵니다. |
listChildGroup | /restapi/v1.0/cms/playlists/groups/{groupId}/child | GET | {groupId} 그룹의 하위 그룹 목록을 가져옵니다. |
Schedule
새 콘텐츠/메시지 스케줄을 만들고, 장치에 배포하여 재생 할 수 있습니다. 또한 스케줄을 수정하거나 삭제 하는 등 관리 할 수 있습니다.
...
Service Name | API call | Call Type | Description |
---|---|---|---|
listContentScheduleAll | /restapi/v1.0/dms/schedule/contents | GET | 모든 콘텐츠 스케줄 목록을 가져옵니다. |
createContentSchedule | /restapi/v1.0/dms/schedule/contents | POST | 새 콘텐츠 스케줄을 생성합니다. |
listDashboardScheduleInfo | /restapi/v1.0/dms/schedule/contents/dashboard | GET | 대쉬보드에서 필요한 콘텐츠 스케줄 정보를 가져옵니다. |
listContentScheduleByGroup | /restapi/v1.0/dms/schedule/contents/filter | POST | 여러 조건으로 필터링된 콘텐츠 스케줄 목록을 가져옵니다. |
deleteContentSchedule | /restapi/v1.0/dms/schedule/contents/{programId} | DELETE | 콘텐츠 스케줄을 삭제합니다. |
getProgramInfo | /restapi/v1.0/dms/schedule/contents/{programId} | GET | 선택된 스케줄의 상세 정보를 가져옵니다. |
editContentSchedule | /restapi/v1.0/dms/schedule/contents/{programId} | PUT | 콘텐츠 스케줄을 수정합니다. |
copyContentSchedule | /restapi/v1.0/dms/schedule/contents/{programId}/copy | PUT | 콘텐츠 스케줄을 복사합니다. |
deployContentSchedule | /restapi/v1.0/dms/schedule/contents/{programId}/deploy | PUT | 콘텐츠 스케줄을 원하는 장치 그룹에 배포합니다. |
getPublishStatus | /restapi/v1.0/dms/schedule/contents/{programId}/publishStatus | GET | 장치에서 콘텐츠 스케줄을 다운로드 받는 상태를 실시간으로 가져옵니다. |
getRootGroups | /restapi/v1.0/dms/schedule/contents/groups | GET | 콘텐츠 스케줄의 루트 그룹 리스트를 가져옵니다. |
listContentScheduleGroupInfo | /restapi/v1.0/dms/schedule/contents/groups/{groupId} | GET | {groupId} 그룹에 대한 상세 정보를 가져옵니다. |
listAllMessageSchedule | /restapi/v1.0/dms/schedule/messages | GET | 모든 메시지 스케줄 목록을 가져옵니다. |
createMessageSchedule | /restapi/v1.0/dms/schedule/messages | POST | 새 메시지 스케줄을 생성합니다. |
getRootGroups | /restapi/v1.0/dms/schedule/messages/groups | GET | 콘텐츠 스케줄의 루트 그룹 리스트를 가져옵니다. |
listMessageScheduleGroupInfo | /restapi/v1.0/dms/schedule/messages/groups/{groupId} | GET | {groupId} 그룹에 대한 상세 정보를 가져옵니다. |
Device
각 장치를 제어하고 관리 할 수있습니다. 장치를 관리하는 서비스는 아래와 같습니다.
Service Name | API call | Call Type | Description |
---|---|---|---|
listAllDevice | /restapi/v1.0/rms/devices | GET | 모든 장치 목록을 가져옵니다. |
getDashboardDeviceInfo | /restapi/v1.0/rms/devices/dashboard | GET | 대쉬보드에서 필요한 장치 정보를 가져옵니다. |
listDeviceGroupOrgan | /restapi/v1.0/rms/devices/groups | GET | 소속의 리스트를 가져옵니다. |
listDeviceGroupInfo | /restapi/v1.0/rms/devices/groups/{groupId} | GET | {groupId} 그룹에 대한 상세 정보를 가져옵니다. |
User
새 사용자를 추가하고, 사용자의 정보를 관리할 수 있습니다. 사용자를 관리하는 서비스는 아래와 같습니다.
Service Name | API call | Call Type | Description |
---|---|---|---|
createUser | /restapi/v1.0/ums/users | POST | 새 사용자를 추가합니다. |
listDashboardUserInfo | /restapi/v1.0/ums/users/dashboard | GET | 대쉬보드에 필요한 사용자의 정보를 가져옵니다. |
listUserGroupOrgan | /restapi/v1.0/ums/users/groups | GET | 소속 목록을 가져옵니다. |
listUserGroupInfo | /restapi/v1.0/ums/users/groups/{groupId} | GET | {groupId} 그룹에 대한 상세 정보를 가져옵니다. |
getCategoryInfo | /restapi/v1.0/ems/category/{categoryId} | GET | 카테고리 목록을 가져옵니다. |
deleteDashboard | /restapi/v1.0/ems/dashboard | DELETE | 특정 대쉬보드 정보를 삭제합니다. |
Etc
주요 기능 이외에도 태그, 카테고리를 생성, 관리하고 대시보드를 수정하는 등 다양한 기능을 구현할 수 있습니다.
Service Name | API call | Call Type | Description |
---|---|---|---|
getCategoryInfo | /restapi/v1.0/ems/category/{categoryId} | GET | 카테고리 목록을 가져옵니다. |
deleteDashboard | /restapi/v1.0/ems/dashboard | DELETE | 특정 대쉬보드 정보를 삭제합니다. |
REST API Details
Open API Documentation | ||||||
---|---|---|---|---|---|---|
| ||||||
...