Juniper Mist API는 Django REST(Representational State Transfer) 프레임워크를 기반으로 합니다. 이 아키텍처를 사용하면 탐색 가능한 API를 사용할 수 있습니다. 이 API를 사용하면 사용자 및 다른 사용자가 API 내에서 CRUD 작업을 수행할 수 있으므로 유용성과 유연성이 향상됩니다. 어떤 의미에서 Django 인터페이스는 RESTful 클라이언트와 같은 역할을 합니다. 이 함수는 단일 API 개체에서 CRUD 작업을 실행하는 데 유용합니다.
구성 개체를 변경하려면 Juniper Mist 포털에 로그인해야 하며 개체의 URL API 경로를 알고 있어야 합니다. 객체 변경에 대한 세부 정보 및 매개 변수는 API 설명서를 참조하십시오. 사용 가능한 모든 개체에 대한 URL API 경로를 찾을 수 있습니다.
이 작업에서는 액세스 포인트(AP)에서 디바이스 정보를 가져오고 Django 인터페이스에서 직접 AP 이름을 바꾸는 방법을 안내합니다.
Django 웹 인터페이스를 사용하여 API를 변경하는 방법은 다음과 같습니다.
- Juniper Mist 포털에 로그인합니다.
- 특정 디바이스에 대한 API URL(https://<api-endpoint>/api/v1/sites/<site_id>/devices?name=<device name>을 엽니다. 장치 이름은 대소문자를 구분합니다.
메모:
코드 블록을 재사용하는 경우 자리 표시자 값을 API 토큰, 조직 ID, 사이트 ID, AP 이름 등과 같은 실제 값으로 바꿉니다.
이 경우 URL은 다음과 같습니다(site_id의 일부는 생략됨).
https://{api-host}/api/v1/sites/c1947558-268d-4d31-xxxx-xxxxxxxxxxxx/devices?name=TEST-rename
브라우저는 Django 인터페이스를 통해 다음 명령을 실행합니다.
GET /api/v1/sites/c1947558-268d-4d31-xxxx-xxxxxxxxxxxx/devices?name=TEST-rename
Juniper Mist 모든 디바이스에 고유한 식별자를 할당하며, 이 식별자는 일반적으로 MAC 주소(00000000-0000-0000-1000-<device_mac>)를 기반으로 합니다. 장치 API의 컨텍스트에서는 라고 합니다 id
. API가 이름을 바꿀 특정 디바이스를 알 수 있도록 를 사용하여 id
AP를 참조해야 합니다.
- 변경하려면 디바이스 ID(
id
)를 API 호출에 삽입하고 브라우저에 표시합니다.
새 호출은 다음과 같습니다.
https://api.mist.com/api/v1/sites/c1947558-268d-4d31-xxxx-xxxxxxxxxxxx/devices/00000000-0000-0000-1000-5c5b3xxxxxxx
출력은 이전 요청과 동일합니다. 그러나 이제 API 컨텍스트를 사용하여 이름이 아닌 을(를
id
) 기반으로 특정 디바이스를 변경할 수 있습니다. "[ ]" 대괄호가 없습니다.
- 원하는 AP 이름 바꾸기 호출에 대한 콘텐츠 입력 상자에 JSON(JavaScript Object Notation) 형식의 텍스트를 입력합니다. URL에 컨텍스트가
id
있으므로 고유한 디바이스 ID(id
)를 포함할 필요가 없습니다.
- 완료되면 을 눌러
PUT
요청을 Juniper Mist로 푸시합니다. 결과는 다음과 같아야 하며, 이는 AP의 이름이 변경되었음을 나타냅니다.
{
"id": "00000000-0000-0000-1000-5c5b3xxxxxx",
"name": "RENAMED",
"site_id": "c1947558-268d-4d31-xxxx-xxxxxxxxxxxx",
"org_id": "3f12cb79-fb5e-4d4b-xxxx-xxxxxxxxxxxx",
"created_time": 1685989351,
"modified_time": 1686321430,
"map_id": null,
"mac": "5c5b3xxxxxxxx",
"serial": "A07451xxxxxxx",
"model": "AP43",
"hw_rev": "C02",
"type": "ap",
"tag_uuid": "3f12cb79-fb5e-4d4b-xxxx-xxxxxxxxxxxxxx",
"tag_id": 3056xxx,
"evpntopo_id": null,
"deviceprofile_id": null
}
자세한 내용은 API 설명서 사이트의 사이트 섹션을 참조하세요.