원문 캡처 · classicalbot.com
원문 캡처 · classicalbot.com

ClassicalBot이 계정이나 API 키 없이 클래식 공연을 검색할 수 있는 공개 API를 제공한다. 국가·도시·연주자·공연장으로 공연을 찾고, 날짜와 장소, 프로그램, 가격, 예매 정보 등을 JSON으로 받을 수 있다.

요청 주소는 https://classicalbot.com/api/v1이다. 공연 검색에는 필터를 하나 이상 지정해야 하며, 입력한 필터를 모두 만족하는 결과를 반환한다. 예를 들어 국가 코드와 페이지당 결과 수를 지정할 수 있다.

curl 'https://classicalbot.com/api/v1/concerts?country_code=CZ&page_size=2'

도시·연주자·공연장 검색에서 받은 ID는 각각 city_id, performer_id, venue_id 필터에 사용한다. 이름 검색은 대소문자와 악센트를 구분하지 않으며, has_upcoming=true를 지정하면 예정된 공연이 있는 결과만 찾는다. 빠른 시작과 API 문서에서 공연 검색, 도시, 연주자, 공연장 검색 방법을 확인할 수 있다.

공연 결과에는 날짜·현지 시작 시각·장소·공연 상태·프로그램·출연자·가격과 예매 정보 등이 포함될 수 있다. 값이 없으면 null이나 빈 배열로 표시하며, 가격 정보가 없다고 무료 공연이라는 뜻은 아니다. 공연은 UTC 기준 오늘부터 표시되고, 일정 변경이나 취소 여부는 event_status에서 확인해야 한다.

페이지당 결과는 공연 검색 기본 50건, 도시·연주자·공연장 검색 기본 20건이며 최대 100건까지 요청할 수 있다. all=true로 전체 결과를 요청할 수도 있지만, 한 응답은 공연 10,000건과 20MiB로 제한된다. 더 많은 결과에는 페이지네이션을 사용한다. IP당 분당 요청 한도는 60회이며, 이 가운데 all=true 요청은 최대 5회다. HTTP 429를 받으면 Retry-After에 표시된 초만큼 기다려야 한다. 결과는 최대 2분간 캐시되며 generated_at은 데이터가 응답에 적재된 시각을 나타낸다. 자세한 내용은 응답 필드, 페이지네이션, 요청 제한, 데이터 동작 방식을 참고하면 된다.