아티클 관련 제품: SparklingSoDA
들어가며
- 일반적으로 스파클랑소다 API 사용시 로그인이 되어 있지 않으면 인증 토큰 및 키를 요구하게 됩니다.
- 인증키를 발급받지 않으면 스파클링소다에서 기본적으로 제공하는 API기능을 외부에서 호출 시 denay 되게 됩니다.
인증 API key 생성 후 사용하기
만약 아래와 같은 화면의 출력 결과를 데이터만 API로 호출하고 싶다면 아래와 같은 방법으로 호출 가능합니다.
호출하는 주소는 getAllPodStatus인 것을 확인할 수 있습니다
API 기능을 이용하여 호출해보겠습니다.
curl -X GET "https://www.sparklingsoda.ai/api/project/getAllPodStatus" -H "accept: application/json" --insecure {"messages":{"code":-9,"message":"No User information"}}
↑ 위와 같이 message":"No User information" 에러가 발생합니다.
먼저 관리자 페이지의 key 메뉴에서 토큰을 발급받습니다.
- Open API메뉴의 key메뉴로 이동합니다
Client 명 추가 버튼을 누릅니다.
사용할 이름을 입력 후 API Key를 생성합니다.
아래와 같이 API Key가 생성 된 것을 확인할 수 있습니다.
해당 Key를 이용하여 다시 한번 getAllPodStatus 데이터를 호출해보겠습니다.
curl -X GET "https://www.sparklingsoda.ai/v1/dockerimage/getAllList" -H "accept: application/json" -H "SPSD-API-KEY: YjY2NmQ0MWItMjU4NS0zOGViLWFiNDQtNmM1ZTZiMGViZjA1" --insecure {"messages":{"code":1,"message":"succ"},"datasets":{"ds_dockerimage":[{"id":1,"name":"jupyterhub-mmocr","docker_image_name":"jupyterhub-py37-mmocr-1-0-7","docker_image_repo":"jupyterhub-py37-mmocr","docker_image_version":"1.0","description":"","analytic_language":"PYTHON","lang_version":"3.7.9","os_desc":null,"gpu_desc":"CUDA 10.1","tool_name":"JupyterHub","tool_path":"/external-api/loginJupyterHub","repository_id":2,"os_name":"ubuntu 18.04"},{"id":2,"name":"jupyterhub-1.2","docker_image_name":"jupyterhub-1-2-7","docker_image_repo":"jupyterhub","docker_image_version":"1.2","description":"","analytic_language":"PYTHON","lang_version":"","os_desc":null,"gpu_desc":"","tool_name":"JupyterHub","tool_path":"/external-api/loginJupyterHub","repository_id":1,"os_name":"ubuntu 16.04"},{"id":3,"name":"rstudio1_4","docker_image_name":"rstudio-1-4-1","docker_image_repo":"rstudio","docker_image_version":"1.4","description":"","analytic_language":"R","lang_version":"","os_desc":null,"gpu_desc":"","tool_name":"RStudio Server","tool_path":"/external-api/loginRStudio","repository_id":1,"os_name":"ubuntu 16.04"},{"id":4,"name":"jupyterhub-hanwha","docker_image_name":"jupyterhub-hanwha-7","docker_image_repo":"jupyterhub","docker_image_version":"hanwha","description":"","analytic_language":"PYTHON","lang_version":"3.7.10","os_desc":null,"gpu_desc":"CUDA 11.1","tool_name":"JupyterHub","tool_path":"/external-api/loginJupyterHub","repository_id":1,"os_name":"ubuntu 16.04"},{"id":9,"name":"test","docker_image_name":"jupyterhub-hanwha-7","docker_image_repo":"jupyterhub","docker_image_version":"hanwha","description":"","analytic_language":"PYTHON","lang_version":"3.7.10","os_desc":null,"gpu_desc":"CUDA 11.1","tool_name":"JupyterHub","tool_path":"/external-api/loginJupyterHub","repository_id":1,"os_name":"ubuntu 16.04"},{"id":11,"name":"hanwha","docker_image_name":"jupyterhub-hanhwa-ned-7","docker_image_repo":"jupyterhub","docker_image_version":"hanhwa_ned","description":"","analytic_language":"PYTHON","lang_version":"","os_desc":null,"gpu_desc":"","tool_name":"JupyterHub","tool_path":"/external-api/loginJupyterHub","repository_id":2,"os_name":"ubuntu 18.04"},{"id":12,"name":"jupyterhub-hanwha-lab","docker_image_name":"jupyterhub-hanwha2-7","docker_image_repo":"jupyterhub","docker_image_version":"hanwha2","description":"","analytic_language":"PYTHON","lang_version":"3.7","os_desc":null,"gpu_desc":"CUDA 11.1","tool_name":"JupyterHub","tool_path":"/external-api/loginJupyterHub","repository_id":2,"os_name":"ubuntu 18.04"},{"id":13,"name":"jupyter_test","docker_image_name":"jupyter-latest-6","docker_image_repo":"jupyter","docker_image_version":"latest","description":"","analytic_language":"PYTHON","lang_version":"3.6.9?","os_desc":null,"gpu_desc":"","tool_name":"Jupyter","tool_path":"/external-api/loginJupyterSingle","repository_id":1,"os_name":"ubuntu 16.04"},{"id":14,"name":"ned_image_build_test","docker_image_name":"ned-image-build-test-1-0-7","docker_image_repo":"ned_image_build_test","docker_image_version":"1.0","description":"docker build test image","analytic_language":"PYTHON","lang_version":"","os_desc":null,"gpu_desc":"","tool_name":"JupyterHub","tool_path":"/external-api/loginJupyterHub","repository_id":1,"os_name":"ubuntu 16.04"}]}}
마무리
- 이제 로그인이 되어있지 않아 호출이 불가하였던 인증 과정이 성공하여 외부에서 정상적으로 호출이 가능합니다.
아티클이 유용했나요?
훌륭합니다!
피드백을 제공해 주셔서 감사합니다.
도움이 되지 못해 죄송합니다!
피드백을 제공해 주셔서 감사합니다.
피드백 전송
소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.