Skip to content

API overview

Overview

STATS API는 STATS의 모든 스포츠 데이터에 대한 RESTful 인터페이스를 제공합니다. 데이터는 GET 요청을 통해 제공되며, JSON 또는 XML 형식으로 반환됩니다. 모든 요청은 인증 절차를 거쳐야 하며 , 사용자 지정 도메인을 통해 API에 접근하는 요청도 포함됩니다.

RESTful API

각 API는 REST 원칙을 기반으로 합니다 . 표준 GET 요청을 통해 HTTP 또는 HTTPS를 사용하여 UTF-8 형식으로 API 엔드포인트에 데이터를 전송하고, 지정된 형식으로 데이터를 반환받을 수 있습니다. 또한 쿼리 매개변수를 추가하여 피드에서 검색 및 제어 가능한 결과를 얻을 수 있습니다. API는 요청에 지정된 쿼리 기준에 따라 해당 아울렛에서 접근 가능한 자산만 반환합니다. 대부분의 피드는 최소한 XML과 JSON 형식을 지원합니다. 주요 차이점은 JSON, RSS, RSS 2.0 또는 MRSS 지원 여부입니다. 지원되는 형식 및 기술 사양에 대한 자세한 내용은 각 피드의 사용자 가이드 및 통합 가이드에서 확인할 수 있습니다.

기본 URL

API의 기본 주소는 다음과 같습니다.

https://api.statsperform.com/statsapi/v1

Lauguage

STATS API는 제공하는 데이터에 대해 다국어를 지원합니다. 지원하는 언어 목록은 다음의 주소를 호출하여 확인할 수 있습니다.

* 참고

현재 모든 스포츠에 대하여 언어를 지원하는 것이 아니며 모든 피드에 대해 번역을 제공하는 것은 아니니 참고해 주세요.

URL 구조

본 가이드의 모든 예시는 REST 형식을 사용하며, URL 요청은 일반적으로 다음과 같은 구조를 따릅니다. 쿼리 매개변수 목록은 해당 피드의 API 엔드포인트 참조 및 쿼리 매개변수 색인을 참조하세요.

GET

{protocol}://{requestDomain}/{apiName}/{versionNumber}/{sportName}/{leagueAbbreviation}/{resource/endpoint}/

Example
https://api.statsperform.com/statsapi/v1/baseball/mlb/coaches/

요소정의
{requestDomain}api.statsperform.com (기본 도메인)
{apiName}/statsapi
{versionNumber}API 버전을 지정합니다 . 이 경우 API 버전 1이 사용됩니다.
{sportName}데이터를 요청하는 스포츠 종목입니다. 예: 야구
{leagueAbbreviation}리그의 약자, 예: 메이저 리그 야구(Major League Baseball) 의 경우 mlb .
{resource} & {method}요청하는 데이터 유형(예: 이벤트 , 통계 등).

요청 형식

사용자 가이드에서 각 API 엔드포인트에 대해 지원되는 응답 형식을 확인하십시오. 대부분 XML과 JSON 형식이 일반적으로 지원됩니다.

응답 형식을 지정하려면 URL에서 accept 쿼리 매개변수와 원하는 형식 값을 전달하세요. 허용되는 형식 목록은 API 사용 방법 및 시작에 필요한 주요 개념을 설명하는 API 튜토리얼을 참조하세요.

응답 코드 및 에러

요청이 성공적으로 처리되면 HTTP 응답 코드 200(OK)가 반환됩니다. 오류가 발생하면 응답 본문에 오류 코드가 포함됩니다. 오류는 표준 HTTP 오류 코드 구문을 사용하여 반환됩니다. JSONP 형식의 경우 HTTP 상태 코드는 200(OK)입니다. 오류가 발생하면 응답 본문에 Perform Feeds의 특정 오류 코드와 고유한 오류 토큰이 함께 반환됩니다. 응답 상태 및 오류 코드를 참조하세요.

주의

유효하지 않은 응답 형식을 요청하면 HTTP 상태 코드 415와 STATS API 피드 오류 코드 10210 (지원되지 않는 형식)이 반환됩니다. 오류 코드 10501은 "지원되지 않는 미디어 형식" 오류를 나타냅니다.

기본 API Request

http://api.statsperform.com/:apiName/:versionNumber/:sportName/:leagueAbbreviation/:resource/:method?

STATS API 호출 구성 방법

API는 소량씩 사용할 때 가장 효과적이며, 의도적으로 그렇게 설계되었습니다. 애플리케이션에서 전체 시즌 일정이나 모든 참가자 목록과 같은 대용량 데이터를 요청할 수 있지만, 정기적으로 요청해서는 안 됩니다. API 호출 시 응답 시간은 밀리초가 아닌 초 단위로 예상해야 합니다. 또한, 사용자와 API 호출 사이에 중간 계층의 보안 조치를 구축하는 것이 좋습니다.

API 개요 및 통합 가이드를 참조하세요. 효율적인 API 호출 방법과 특정 데이터 포인트를 대상으로 지정하는 방법에 대한 정보를 찾을 수 있습니다. 예를 들어, 업데이트된 게임을 확인하려면 각 게임(이벤트 ID 기준)에 대해 개별적으로 API를 호출하는 대신, /statsapi/{sport}/{leaguePath}/eventDataConfirmed/엔드포인트를 호출하고 적절한 매개변수를 지정하여 당일, 특정 날짜 또는 특정 날짜 및 시간에 업데이트된 모든 게임을 확인하는 것이 좋습니다.

시간 및 날짜 형식 (Timestamp)

응답의 타임스탬프는 UTC(GMT)로 반환되며 형식에 따라 다릅니다. JSON의 경우 타임스탬프는 기준 시간(1970년 1월 1일 자정 GMT) 이후 밀리초 단위입니다. XML의 경우 타임스탬프는 UTC(GMT)로 반환되며 오프셋은 0입니다 YYYY-MM-DDThh:mm:ssZ.

예시: 2025-01-01T00:00:00Z 는 2025년 1월 1일 00:00:00 GMT를 나타냅니다.

쿼리 매개변수를 사용하여 데이터를 검색하거나 데이터에 대한 날짜 및 시간 정보를 반환할 수 있습니다.

응답 상태 및 에러 코드

성공적으로 처리된 모든 요청에 ​​대해서는 HTTP 응답 코드 200(OK)가 반환됩니다. 오류가 발생하면 응답 본문에 오류 코드가 포함됩니다. 오류는 표준 HTTP 오류 코드 구문을 사용하여 반환됩니다.

하지만 JSONP 형식의 경우 HTTP 상태 코드는 항상 200(OK)입니다. 오류가 발생하면 응답 본문에 Perform Feeds의 특정 오류 코드와 고유한 오류 토큰이 반환됩니다.

다음과 같은 유형의 메시지를 받게 될 것으로 예상됩니다.

   · Success - API에 성공적으로 요청을 보냈습니다.
   · Request Errors - 제공한 정보가 올바르지 않습니다.
   · Authentication Error - 본인 확인에 문제가 발생했습니다.

* 참고

에러와 관련하여 문의할 경우, 받은 고유 오류 내역을 기록 후 Support 신청 시 함께 제공해 주시기 바랍니다.

에러가 발생하는 경우, 자세한 설명과 안내를 위해 응답 및 에러 코드 색인을 참조하시기 바랍니다.
다음은 발생할 수 있는 에러 코드와 그 일반적인 원인에 대한 요약입니다.

에러 유형이유HTTP 상태 코드
n/a (OK)성공 - API에 성공적으로 요청을 보냈습니다.200
Request or authentication error제공한 정보가 잘못되었거나, 요청한 데이터가 존재하지 않거나, 본인 확인에 문제가 있습니다. 일반적으로 400/4xx 오류는 연동 설정과 관련이 있을 수 있으므로, 접속 URL 및 도메인/IP 주소(허용 목록) 설정이 올바른지 확인하시기 바랍니다.400/4xx
User not Authorized/ Not allowed to Consume Service요청에 인증 정보가 누락되었거나 정보가 올바르지 않거나 해당 사용자가 이 API를 사용할 권한이 없습니다.403
Too Many Calls설정된 속도 제한에 도달했습니다.429
Feed or unexpected error이 에러는 현재 해당 피드를 사용할 수 없거나 요청을 처리할 수 없음을 의미합니다. 요청을 다시 보내실 수 있으며, 오류가 계속 발생하는 경우 저희에게 문의해 주세요.500
Unknown request parameterAPI에 정의되지 않은 매개변수를 이용하여 호출한 경우입니다. 피드의 API 엔드포인트 참조 및 쿼리 매개변수 색인에서 해당 매개변수를 확인하십시오.562