핵심 개념
핵심 개념
API 구조
Frame.io API는 속도 제한, 리소스 컬렉션에 대한 페이지 매김, 버전 관리, 오류 등의 일반적인 개념을 지원합니다. 이 섹션에서는 각각의 세부 사항을 설명합니다.
구성 및 스타일
API는 일반적인 REST 원칙을 중심으로 구성되어 있습니다. 모든 요청은 SSL을 통해 이루어져야 합니다. 오류를 포함한 모든 요청 및 응답 본문은 JSON으로 인코딩됩니다.
달리 명시되지 않는 한, API 메서드는 다음을 준수합니다.
- 값이 없는 속성은 undefined 대신
null을 사용합니다. * 속성 이름에는 “스네이크 케이스”가 사용됩니다(예:first_name). * 타임스탬프는 ISO-8601 형식으로 렌더링됩니다(예:2016-02-03T16:38:46.985Z).
경로 규칙
계정 > 팀 > 프로젝트 > 에셋 > 코멘트
일반적으로 Frame.io API의 리소스 경로는 하나의 상위 레벨 내에서 위의 계층 모델을 따릅니다. 직관적인 경우, API는 논리적으로 엄격하게 종속된 오브젝트에 대해 독립 실행형 리소스 경로를 지원합니다.
예를 들어 Frame.io API는 다음 두 경로를 모두 지원합니다.
GET /accounts/:id/teams— 계정의 모든 팀을 반환합니다. *GET /teams— 호출하는 사용자의 모든 팀을 반환합니다. *GET /teams/:id— 특정 팀에 대한 세부 정보를 반환합니다.
또 다른 예: 코멘트는 에셋 컨텍스트를 벗어나면 큰 의미가 없으므로, 코멘트 수집 및 생성 메서드는 에셋 권한 내에 위치합니다. 하지만 코멘트를 업데이트하거나 삭제하는 경우 에셋 컨텍스트는 큰 의미가 없으므로 리소스 경로에서 생략됩니다.
GET /assets/:id/comments*POST /assets/:id/comments*PUT /comments/:id*DELETE /comments/:id
범위
OAuth 2.0을 통해 토큰을 발급받든 Developer Portal을 통해 직접 발급받든, 모든 API 토큰은 명시적인 “권한(scopes)” 목록과 연결되어야 합니다. 이는 리소스(예: Asset)와 작업(예: create)의 조합을 의미하며 점 표기법으로 표현됩니다. 예를 들어 asset.create 권한을 가진 토큰은 새 에셋을 생성할 수 있습니다.
개발자 토큰을 사용하여 구현하는 경우, 권한이 설정되어 액세스 토큰 자체에 할당됩니다. OAuth 애플리케이션을 사용하는 경우 애플리케이션에 대해 권한이 정의되며, 사용자가 애플리케이션과 처음 상호 작용할 때 요청된 권한으로 작동하도록 애플리케이션에 권한을 부여하는 데 동의하게 됩니다.
개발자 토큰 및 애플리케이션에서 사용할 수 있는 권한은 다음과 같습니다(일부 권한은 모든 사용자가 사용할 수 없으며, 문제가 발생할 때 호출됩니다).
페이지 매김
결과 컬렉션을 반환하는 API 메서드는 항상 페이지가 매겨집니다. 페이지가 매겨진 결과를 예상하는 모든 메서드는 다음 쿼리 매개변수에 응답하고 다음 헤더 속성을 반환합니다.
next— 해당 URL은 다음 페이지로 연결되는 링크입니다.prev— 해당 URL은 이전 페이지로 연결되는 링크입니다.last— 해당 URL은 마지막 페이지로 연결되는 링크입니다.
참고:next 링크나 prev 링크가 모두 존재하지 않을 경우, 반환된 첫 페이지가 유일한 페이지임을 나타냅니다.