Open-API

자동차 테크맵 Open-API
자동차 테크맵 Open-API는 자동차 분야에서 활용되는 다양한 오픈소스 정보를 수집하고 정리하여
민간 기업 및 연구기관에서 자료를 편리하게 활용할 수 있도록 공개한 인터페이스 입니다.
사용자는 이를 활용하여 소프트웨어 개발 및 연구 등에 활용할 수 있습니다.
Open-API 사용대상
자동차 테크맵 자료 활용을 원하는 모든 사용자
Open-API Key 발급
자동차 테크맵 Open-API 서비스를 이용하시려면 'Open-API Key 발급 신청' 버튼을 눌러서 키 발급을 받으셔야 합니다.
해당 양식을 작성 후 '신청하기' 버튼을 누르시면 신청이 완료됩니다.
신청 후 관리자 승인이 완료되면, 입력하신 이메일로 키가 발송됩니다.
Open-API 사용 제한
자동차 테크맵 프로젝트의 사용자 API는 다음과 같은 사용 제한이 있습니다.
한 시간당 최대 5,000번 이상의 API 호출 시, 'Too Many Requests' 예외가 발생합니다.
컴포넌트 조회
GET /api/v1/component
등록된 컴포넌트 정보를 조회할 수 있는 API입니다.

Query 파라미터

파라미터 설명 타입 필수여부 예시
componentName 컴포넌트명 string N zlib
licenseName 라이선스명 string N MIT License
security 보안취약점
- None
- Low
- Medium
- High
- Critical
string N Low
equalFlag 검색결과 대상을 지정할 때 사용합니다.
-'Y': 정확 일치
-'N': 포함 검색(기본값)
string N Y
page 시작 page 숫자(필수값)
- 기본값: 0
int Y 0
size 페이지당 결과 수(필수값)
- 기본값: 10
int Y 10
sort 정렬 기준 항목(필수값)
정렬 기준에 사용할 수 있는 항목은 아래와 같습니다.
- componentName
- licenseName
string Y name
direction 정렬 방향
- ASC: 오름차순 (기본값)
- DESC: 내림차순
string N DESC
사용 예제
curl --location --request GET 'https://techmap.kr/api/v1/component?componentName=zlib&licenseName=MIT' ^ --header "Authorization: Bearer krhxnqw3jPMkdqYsbVQQMVKZ85p2RWWqa8KFlfmZA80"
응답 Header
Content-Type: application/json
응답 Body
{
  "code": "200",
  "components": [
    {
      "component_name": "zlib",
      "description": "Compression library used in many systems",
      "versions": [
        {
          "version": "1.2.11",
          "homepage": "https://github.com/madler/zlib",
          "security_vuln": "low",
          "licenses":  [
            {
            "name": "zlib License",
            "license_risk": "Permissive",
            }
           ],
        },
        {
          "version": "1.2.10",
          "homepage": "https://github.com/madler/zlib",
          "security_vuln": "High",
          "licenses":  [
            {
            "license_name": "zlib License",
            "license_risk": "Permissive",
            }
           ],
        }
      ]
    }
  ],
  "equalFlag": "Y",
  "page": 0,
  "size": 10,
  "sort": "name",
  "direction": "ASC"
}
                        
응답 필드 설명
Depth 1 Depth 2 Depth 3 Depth 4 타입 설명 비고
code string 응답 상태 코드 예: "200"
components array 컴포넌트 목록
component_name string 컴포넌트 이름 예: "zlib"
description string 컴포넌트 설명 예: "Compression library used in many systems"
versions array 버전 리스트
version string 버전명 예: "1.2.11"
homepage string 홈페이지 URL 예: "https://github.com/..."
security_vuln string 보안 취약점 수준 예: "low", "High"
licenses array 해당 버전의 라이선스 리스트
license_name string 라이선스 이름 예: "zlib License"
license_risk string 라이선스 위험도 예: "Permissive"
equalFlag string 정확 일치 여부 예: "Y"
page int 페이지 번호 0부터 시작
size int 페이지당 결과 수 예: 10
sort string 정렬 기준 필드 예: "name"
direction string 정렬 방향 예: "ASC" 또는 "DESC"