VIGI NVR의 OpenAPI 기능을 사용하는 방법
목차
요구 사항
- VIGI NVR (펌웨어는 openAPI를 지원해야 함)
- VIGI NVR Open API 문서
- 노트북 및 Postman
소개
VIGI NVR OpenAPI를 사용하면 타사 소프트웨어 플랫폼이 표준화된 NVR API 인터페이스를 통해 VIGI NVR과 연동할 수 있습니다. 이 가이드에서는 OpenAPI 문서를 사용하여 NVR에 인증하고, access_token을 획득하며, Postman을 사용하여 API 인터페이스를 호출하는 방법을 배웁니다. 이 튜토리얼은 개발자가 VIGI NVR을 외부 관리 및 애플리케이션 플랫폼과 통합할 수 있도록 단계별 지침과 API 요청 예제를 제공합니다.
설정
Digest 인증 및 access_token 획득
1단계. NVR의 IP 주소를 사용하여 NVR 웹 인터페이스에 로그인합니다. 사용자 이름과 비밀번호를 입력한 후 로그인을 클릭합니다.

2단계. 설정 > 네트워크 > OpenAPI로 이동합니다. OpenAPI 기능을 활성화합니다.

참고: 기본 OpenAPI 포트는 20443입니다. 포트를 변경하거나 원격 액세스를 위해 포트 포워딩을 설정한 경우, 요청 시 OpenAPI 포트가 실제로 사용 중인 OpenAPI 포트와 일치하도록 업데이트되었는지 확인합니다.
3단계. Postman을 실행합니다. 문서를 참고하여 GET 메서드를 선택한 후 다음 url(https://192.168.68.100:20443/openapi/token)을 입력합니다. No Auth 방식으로 요청을 전송하여 응답 헤더에서 nonce 및 기타 매개변수를 가져옵니다.

4단계. 문서를 참조하여 다이제스트 인증(Digest Authentication)에 대한 요청 헤더의 응답을 계산합니다. 이 응답은 사용자 이름, 비밀번호 및 NVR에서 반환한 인증 정보를 바탕으로 도출됩니다. NVR이 알고리즘으로 SHA-256을 지정하는 경우, 계산은 다음과 같이 수행됩니다:
- A1 = SHA256(admin:realm:password)
- A2 = SHA256(method:url)
- response = SHA256(A1:nonce:A2)
이전 단계의 응답 헤더에서 얻은 정보와 위에서 설명한 계산 방법을 함께 사용하여 응답을 생성합니다.
참고: NVR OpenAPI 인증의 경우, A2를 계산하는 데 사용되는 메서드 값은 GET입니다.
5단계. OpenAPI 문서를 참조하십시오. 요청 헤더에 Authorization을 추가하고, 값으로 Digest username="admin", nonce="", realm="TP-LINK NVR", response=" "를 입력하십시오. 보내기를 클릭합니다.
그러면 access_token을 받게 됩니다.

API 호출
1단계. access_token은 URL로 퍼센트 인코딩되어 있으므로, 헤더 필드에 origin 문자열이 필요하므로 디코딩해야 합니다. https://url-decode.com/와 같은 온라인 도구를 사용하여 디코딩할 수 있습니다.

2단계. Authorization에서 Bearer Token을 선택하고, 디코딩된 access_token을 입력합니다. 문서를 참조하십시오. API 메서드를 선택하고 Request 및 Request Body를 입력합니다(일부 API 메서드는 Body가 필요합니다).
이 문서는 요청 본문이 포함되는지 여부에 따라 특정 API를 호출하는 방법에 대한 자세한 지침을 제공합니다.
- added_devices. 이 API는 추가된 장치를 조회하는 데 사용됩니다.
OpenAPI 문서를 참조하십시오. GET 메서드를 선택하고, 요청을 입력한 후 ‘Send’를 클릭하십시오. 응답 본문에는 추가된 장치의 정보가 포함됩니다.

- sound. 이 API는 출력 사운드를 설정하는 데 사용됩니다.
OpenAPI 문서를 참조하십시오. POST 메서드를 선택하고 요청을 입력하십시오. 요청 본문에서 raw 및 JSON 형식을 선택하십시오. 본문을 입력하고, 채널 1의 카메라 음소거 기능을 해제하고, 카메라 볼륨을 43으로, 시스템 볼륨을 76으로 설정한 다음 ‘보내기’를 클릭하십시오.

- 이벤트 서버. 이 API는 이벤트 서버를 추가하는 데 사용됩니다.
OpenAPI 문서를 참조하여 POST 메서드를 선택하고 요청 URL을 입력합니다. 요청 본문에서 raw 및 JSON 형식을 선택한 다음, 알람 서버를 추가하기 위해 다음 예제 본문을 입력합니다. 이 예제에서는 도메인으로 webhook.site를, 포트로 80을, 프로토콜로 HTTP를, 지정된 URL을 사용하며, 이미지 첨부 기능을 비활성화합니다. 'Send'를 클릭합니다. 요청이 성공하면 응답 본문에 error_code: 0이 반환됩니다.
참고: 알람 서버 설정 방법을 참조하십시오.

결과 확인
1단계. 정보 > 시스템 메시지 > 채널 정보로 이동합니다. 추가된 카메라의 정보를 확인합니다. 반환된 응답 본문의 장치 정보와 비교하여 일관성을 등록합니다.

2단계. 설정 > 카메라 > 스트림 > 오디오로 이동합니다. 채널 1의 카메라 음소거 기능이 비활성화되어 있고, 카메라 볼륨이 43으로, 시스템 볼륨이 76으로 설정되어 있는지 확인합니다.

3단계. 설정 > 이벤트 > 알람 서버로 이동하여 webhook.site를 사용하는 새로운 알람 서버가 성공적으로 추가되었는지 확인합니다.

결론
VIGI NVR OpenAPI를 사용하여 added_devices, sound 및 event_server API를 성공적으로 호출했습니다. 이 예제는 장치 정보를 조회하고, 카메라 오디오 설정을 구성하며, 알람 서버를 추가하는 방법을 보여 주며, 다른 API 인터페이스를 호출할 때 참고 자료로 활용할 수 있습니다.
각 기능 및 설정에 대해 더 자세히 알아보려면 지원 홈페이지를 방문하여 해당 제품의 설명서를 다운로드하거나 확인해 주십시오.
이 문서에는 기계 번역이 적용되었으며, 정확한 내용을 확인하려면 원본 영문 문서를 참고하시기 바랍니다.
더 알아보기
해당 FAQ가 유용했나요?
여러분의 의견은 사이트 개선을 위해 소중하게 사용됩니다.
TP-Link Community
Still need help? Search for answers, ask questions, and get help from TP-Link experts and other users around the world.