çæ§ããã«ã¡ã¯ã12/3æ åœã®å»£æ©ã§ãã
Â
Mistã®ç¹åŸŽã®äžã€ãšããŠãAPIã䜿çšããŠå€éšã·ã¹ãã ããããŒã¿ãååŸã远å ã倿Žãåé€ãšãã£ãæäœãå¯èœã§ããã€ãŸããçæ§ãMistã®GUIãéããŠæåã§è¡ãªã£ãŠããæäœããå€éšã·ã¹ãã ãéããŠèªååããããèªå奜ã¿ã«è¡šç€ºãè¡ãããšãå¯èœãšãªããŸãã
äžæ¹ã§ä»ãŸã§çµéšããAPIã«éŠŽæã¿ããªããèå³ãããã©ã©ãããããããããããªãïŒãšããã声ãèãããšãããããŸãã®ã§ããã®éãããã°å ¥éã§ããïŒãç®æããŠæžããŠã¿ãããšæããŸãã
Â
æ¬èšäºã¯ä»¥äžã®ç°å¢ã§å®æœããŠããŸãã
ã»MacBook Sonoma 14.6
ã»Postman for Mac 11.21.0 / Free plan
Â
# Step1: PostmanãããŠã³ããŒã&ã€ã³ã¹ããŒã«
æ¬èšäºã§ã¯ Postman ãšããAPIã®éçºããã¹ããè¡ãéã«ããçšããããæåãªããŒã«ãçšããŸãã倧倿ãé£ãããšã«ç¡æçã§ãååã«å©çšå¯èœã§ãã
Â
Postman ã«ã¯Webçãšãã¹ã¯ãããçããããæ¬èšäºã§ã¯ãã¹ã¯ãããçãå©çšããŸãã®ã§ããææã¡ã®ç°å¢ã«åãããŠããŠã³ããŒã&ã€ã³ã¹ããŒã«ããŠãã ããã
https://www.postman.com/downloads/
Â
Postman ãèµ·åãããšã¢ã«ãŠã³ãäœæãä¿ãããŸãã®ã§ãç»é²ããŠã¢ããªãèµ·åããŸããããå€å°ã®å·®ã¯ããã©ä»¥äžã®ãããªç»é¢ã確èªã§ãããæºåOKã§ãã
Â
# Step2: APIãªã¯ãšã¹ãã®äœæç»é¢ãéããïŒ
åãã«ãAPIãªã¯ãšã¹ãã®äœæãè¡ãããã«ç®¡çããã°ã«ãŒã Collections ãäœæããŸãã
å·ŠåŽã®ç»é¢ãã Collestions ãéžæããŸãã
Â
次ã«ã + -> Create New Collection ãéžæããŸãããã
Â
次ã«ãBlank Collection ãéžæããŸãã
Â
ãããããšã New CollectionãäœæãããŸããïŒæ¬¡ã«ãAdd a request ãéžæããŸãããã
Â
ãããšãå³åŽã«APIãªã¯ãšã¹ãã®èšå®ç»é¢ã衚瀺ãããŸããïŒããã§APIãªã¯ãšã¹ããäœæããæºåãæŽããŸããã
Â
# Step3: APIãªã¯ãšã¹ããããŠã¿ããïŒ
APIãšãã£ãŠãé£ããèããå¿ èŠã¯ãããŸãããURLã«ã¢ã¯ã»ã¹ãããšèŠæ±ã«åŸã£ãåŠçãè¡ã£ãŠããããã ãªããããã«èããŠã¿ãŠãã ãããæ¬ã¹ãããã§ã¯ããã®æäœã«å¿ èŠãªæäœéã®å 容ãèšèŒããŸãã
Â
3-1: URLãèšå®ãããïŒ
APIãªã¯ãšã¹ãã®èŠæ±ã瀺ããã®ãšããŠãHTTPãªã¯ãšã¹ãã®ã¡ãœãããçšããŸãããã®ãããæ
å ±ãååŸãããªã GET ã¡ãœããã䜿ããšãã£ã圢ã§ããAPIã§ã¯äž»ã«ä»¥äžã®ïŒçš®é¡ãçšããããŸãã
â»POST, DELETE, PUTã¯ããŒã¿ã«å€æŽã䌎ãäœæ¥ã®ããå©çšã«ã¯æ³šæããŠãã ãããæ
£ãããŸã§ã¯GETã ãã§è©Šãã®ãè¯ãããšæããŸãã
- POST (Create, ããŒã¿ã®äœæ)
- GET (Read, ããŒã¿ã®ååŸ)
- PUT (Update, ããŒã¿ã®æŽæ°)
- DELETE (Delete, ããŒã¿ã®åé€)
次ã«å®å ãšãªãMistã®APIãšã³ããã€ã³ãã®URLã¯ãæ¬¡ã®æ§é ãšãªã£ãŠããŸãã
https://{HOST}{URI}
HOST ãšã¯APIã®ãªã¯ãšã¹ããè¡ããµãŒããŒã®ã¢ãã¬ã¹ã§ãMist Cloudã®ãªãŒãžã§ã³ã«ãã£ãŠç°ãªããŸãã®ã§ãã䜿ãã®ç°å¢ã確èªããŠãã ããã
| GLOABL01 | Â api.mist.com |
| GLOABL03 | Â api.ac2.mist.com |
| GLOBAL05 | Â api.ac5.mist.com |
Â
ãªãŒãžã§ã³ãããããªããããšããæ¹ã¯ããå©çšã®Organizationã«ãã°ã€ã³ããŠãURLãã確èªããã ãããšãã§ããŸãã
| GLOABL01 | Â manage.mist.com |
| GLOABL03 | Â manage.ac2.mist.com |
| GLOBAL05 | Â manage.ac5.mist.com |
Â
URI ã¯ãAPIã®ãšã³ããã€ã³ããç¹å®ããããã®ã¢ãã¬ã¹ã§ããä»çŸåšã¯version 1ã®APIãšãªããããæ¬¡ã®ãããªåœ¢ãšãªããŸãã
/api/v1/{å®å }
ããšãã°æ¬¡ã®ãããªURIããããŸãã
| /api/v1/self | èªåã®ã¢ã«ãŠã³ãæ å ±ãç¢ºèª |
| /api/v1/sites/{site_id}/stats/client | ã¯ã©ã€ã¢ã³ãæ å ±ã®ååŸ |
| /api/v1/sites/{site_id}/devices | 管çããŠããããã€ã¹æ å ±ã®ååŸ |
{site_id} ãšããæ°ã«ãªãçšèªãåºãŠããŸããããåŸåã«è§£èª¬ããŸãã®ã§ãå®å¿ãã ããïŒ
Â
ãããŸã§ã®è©±ãæŽçãããšãGLOBAL03ã§èªåã®ã¢ã«ãŠã³ãæ å ±ã確èªãããå Žåã¯æ¬¡ã®ããã«ãªããŸãã
GETÂ Â https://manage.ac2.mist.com/api/v1/self
Â
ããã§ã¯Postmanã«æ©éå ¥åããŠã¿ãŸãããïŒ
å·ŠåŽã® GET ãã¯ãªãã¯ãããšã¡ãœãããéžæã§ããŸããä»å㯠GET ã§ããå³åŽã®ç©ºæ¬ã«ãAPIã®ãšã³ããã€ã³ãã§ãã URL ãå ¥åããŸãããã
Â
3-2: èªèšŒãèšå®ãããïŒ
ã¿ãªããããšäžæ¯ã§ãïŒ
次ã«èªèšŒæ å ±ãå ¥åããŸããããMistã«ã¯ããã€ãèªèšŒæ¹æ³ãçšæãããŠããŸãããäžçªã·ã³ãã«ãªæ¹æ³ã Basic Authentication(API Token) ãå©çšããæ¹æ³ã§ã(API Authentication Options)ã
ããã¯HTTPã®AuthorizationããããŒã«ãŠèªèšŒæ å ±ãéãæ¹æ³ãšãªããŸãã

API Tokenã¯2çš®é¡ãOrganization Token ãš User Token ãçšæãããŠãããçšéã«ãã£ãŠéžæããŠãã ãã(APIããŒã¯ã³ã®äœæ)ãä»å㯠User Token ã䜿ã£ãŠè©ŠããŠã¿ãŸãããã
Â
Mist Cloudã«ãã°ã€ã³ããå³äžã®äººç©ã¢ã€ã³ã³ãã My Account ãéžæããŸãã
Â
API Token ã®ãã£ãŒã«ãããããããæé ã«åŸã£ãŠ User Token ãäœæããŠãã ãããæåŸã« Key ã衚瀺ããããã³ããŒãã¿ã³ãæŒããã»ãã¥ã¢ãªå Žæã«æ§ããŠãããŠãã ãããDone ã§éãããšãå確èªããããšã¯ã§ããŸãããå¿ããŠããŸã£ãå Žåã¯ãåãæé ã§æ°ãã User Token ãäœæããŸãããã
ããã§ã¯ãPostman ã§èšå®ããŸããå ã»ã© URL ãèšèŒããèšå®ç»é¢ã«ãŠãäžæ®µãã Headers ãéžæãã以äžã®ããã«å ¥åããŸããããããã«ããAPIã«ãªã¯ãšã¹ãããéã«ãHTTPãããã«èªèšŒæ å ±ãä»å ããããšãã§ããŸãã
- Key: Authorization
- Value: Token {API Token}
- Tokenã "abcd1234" ã ãšãããã "Token abc1234" ãšãªããŸã
3-3: APIãªã¯ãšã¹ããå®è¡ãããïŒ
ãã£ãã Send ãã¿ã³ãæŒããŠã¿ãŸãããïŒãããšäžåŽã«å¿ççµæãè¿ã£ãŠããŸããã
â»å®è¡åã«å¿ ãURLã https:// ã§ããããšã確èªããŠãã ããã
Â
ç°¡åã§ããããïŒæ¬¡ã¯APIã®ãšã³ããã€ã³ãã«ã€ããŠæ·±æãããŠãããŸãã
Â
# Step4: ãã£ãšAPIãè§Šã£ãŠã¿ããïŒ
ã§ã¯æ¬¡ã®APIãšã³ããã€ã³ãã«GETããŠã¿ãŸãããã
/api/v1/sites/{site_id}/clients/count
Â
{site_id} ãšããæ°ããèŠçŽ ãåºãŠããŸãããããã¯ã©ã®ãµã€ãã®æ å ±ãå¿ èŠãªã®ãïŒIDãæå®ããŠããšãã倿°ã瀺ããŠããŸããçæ§ã® {site_id} ã¯ãããã確èªå¯èœã§ãã
ä»ã«ã代衚çãªå€æ°ãšã㊠{org_id} ããããããã¯ãããã確èªããããšãã§ããŸãã
å®ã¯ãããã¯Mist Cloudã«ãã°ã€ã³ããURLãèŠãŠç¢ºèªããããšãã§ããŸãã
Â
ã§ã¯ç¢ºèªããçµæãå ã«ãAPIã®ãªã¯ãšã¹ããè¡ã£ãŠã¿ãŸãããã
æ¬¡ã®æäœã«ããPostmanã§æ°ãããªã¯ãšã¹ããäœæããŸããååã倿Žãããšããããããã§ããã
次ã«å¿ èŠãªæ å ±ãå ¥åããŠå®è¡ããŠã¿ãŸãããïŒ
ãŠãŒã¶ãŒ(hostname) ãlabã ãæ¥ç¶ããŠããããšã確èªã§ããŸãã
Mistã®GUIããã¯ã©ã€ã¢ã³ãæ å ±ãšæ¯èŒãããšãåãããŠãŒã¶ãŒ(hostname) ãlabã ãæ¥ç¶ããŠããããšã確èªã§ããŸããã
# ãŸãšã
APIå ¥éãããã§ãããïŒä»åã¯å®å šæ§ãèããŠGETã®ã¿ã§è§£èª¬ããŠã¿ãŸããããã®ããã«ãè€éãªæäœããªãAPIæäœãè¡ãããšãã§ããŸãã®ã§ããã²è§Šã£ãŠã¿ãŠãã ãããæ £ãããŸã§ã¯ä»¥äžã確èªããŠããå®è¡ããŠããããã°å®å¿ã§ãã
- ã¡ãœããã GET ã§ããããš
- APIãšã³ããã€ã³ãã®URLã https:// ãšãªã£ãŠããããš
Â
# è£è¶³1: APIãæ¢ããŠã¿ããïŒ
Mistã«ã¯ä»ã«ãããããã®APIãçšæãããŠãããŸãããã¡ãã®ããã¥ã¢ã«ããç¥ãããæ å ±ãæ¢ããŠããã ãããšãã§ããŸãã
å ¥éç·šã§ãæ°ã¥ãããšæããŸãããèªèšŒæ å ±ã¯ãã§ã«èšå®æžã¿ã§ãã®ã§ã"ã¡ãœãã"ãš"URI"ã倿Žããã ãã§æ§ã ãªAPIã«ãªã¯ãšã¹ããéãããšãã§ããŸãã
Â
æ¬èšäºã§ã¯ Mist API Reference ã䜿ã£ãŠAPIãæ¢ããŠã¿ãŸããããããŒãžãéããå·ŠåŽã®APIã®é ç®ããä»å㯠API > Self > Get Selfãã¯ãªãã¯ãããšæ¬¡ã®ãããªããŒãžã«ãªããŸããResponses ãåç §ããŠãã¿ããæ å ±ãååŸã§ããã®ã確èªããããšãã§ããŸãã
- å³åŽã®ããŒãžã«ã¡ãœãããšãã®URI(äžå³ã§ã¯ãGETã¡ãœãã ãš /api/v1/self)
- äžåŽã«ãããå®è¡ããéã«HTTPã¹ããŒã¿ã¹ã«å¿ããã¬ã¹ãã³ã¹ã®ãµã³ãã«
Â
ãã®ä»ã«ãæ€çŽ¢æ©èœãããããŸããå·Šäžã® Search ãã¿ã³ããæ€çŽ¢å 容ãå ¥åãã API Endpoints ã®ã¿ããéžæãæ¬äŸã§ã¯ Get Self ãã¯ãªãã¯ãããšå ã»ã©ãšåãããŒãžã«é·ç§»ããŸãã
Â
Chromeã®æ¡åŒµæ©èœã䜿ã£ãŠMistã®DahboardãèŠãªããæ¢ãæ¹æ³ããããŸãããä»åŸã®èšäºã§å¥ã®ã¡ã³ããŒãæžãäºå®ã§ãã®ã§ã楜ãã¿ã«ïŒ
Â
# è£è¶³2: APIã¬ãŒããªããã
äžæ£ãªã¢ã¿ãã¯ãé²ãããã«Mist Cloud㯠5000 API call/hour ã®å¶éãšãªããŸããåºæ¬çã«ã¯åé¡ãªãå¶éããšæããŸãããããã«å¿ èŠãªå Žåã¯ãµããŒãã«äœ¿çšäºäŸãšåãããŠãåãåãããã ãã(Rate Limit)ã
Â
# é¢é£ããã¥ã¡ã³ã
- RESTful APIã®æŠèŠ
- APIãšã³ããã€ã³ããšã°ããŒãã«ãªãŒãžã§ã³
- Mist API Reference
- API Documentation
Â
Â
Â
Â
Â