REST API

OpenAPI 문서, OAuth 2.1 인증, 세분화된 권한 부여를 제공하는 개발자 우선 REST API입니다. 대시보드에서 수행할 수 있는 모든 작업을 API를 통해 수행할 수 있습니다.

OpenAPI 문서화

완전한 OpenAPI 3.1 사양을 기반으로 Scalar를 통한 대화형 문서를 제공합니다. 하나의 사양 파일에서 엔드포인트를 살펴보고, 요청을 시험하며, 클라이언트 코드를 생성할 수 있습니다.

PKCE를 적용한 OAuth 2.1

동적 클라이언트 등록, PKCE를 적용한 인증 코드 흐름, 토큰 검사 및 폐기를 지원합니다. 서드 파티 클라이언트는 비밀 정보를 공유하지 않고도 안전하게 인증할 수 있습니다.

페이지 매김 및 필터링

모든 목록 엔드포인트는 기본적으로 페이지 기반 페이지 매김, 필드 필터링 및 정렬을 지원합니다. 예측 가능한 응답 메타데이터를 통해 클라이언트를 간편하게 구축할 수 있습니다.

개발자 우선

REST API는 Glossia의 핵심 기반입니다. 대시보드, CLI, MCP 서버는 모두 동일한 엔드포인트를 사용합니다. 기능을 추가하면 먼저 API에 반영되고, 이를 기반으로 다른 모든 영역에 제공됩니다.

따라서 UI의 제약을 받지 않습니다. CI/CD 통합부터 사용자 지정 대시보드까지 구상할 수 있는 모든 워크플로를 안정적이고 문서화된 동일한 인터페이스를 기반으로 구축할 수 있습니다.

인증

Glossia는 모든 API 인증에 PKCE를 적용한 OAuth 2.1을 사용합니다. 이 흐름은 자사 클라이언트와 서드 파티 클라이언트를 모두 지원합니다. 전체 절차는 인증 및 권한 부여 문서를 참조하십시오.

동적 클라이언트 등록 -- 클라이언트는 리디렉션 URI 및 권한 부여 유형과 함께 /oauth/register에서 프로그래밍 방식으로 등록됩니다. 수동 승인 단계나 별도의 포털 조작은 필요하지 않습니다.

PKCE를 적용한 인증 코드 -- 사용자는 브라우저 기반 동의 화면에서 클라이언트를 승인합니다. PKCE 확장 기능은 비밀 정보를 저장할 수 없는 공개 클라이언트에서도 토큰을 안전하게 보호합니다.

토큰 수명 주기 -- 표준 OAuth 엔드포인트를 통해 액세스 토큰을 교환하고, 검사하고, 취소할 수 있습니다. 토큰 엔드포인트의 속도 제한은 무차별 대입 공격을 방지합니다.

권한 부여

액세스 제어에는 두 가지 계층이 사용됩니다. 범위, 역할 및 전체 권한 매트릭스에 대한 자세한 내용은 인증 문서를 참조하십시오.

범위는 토큰이 액세스할 수 있는 리소스 범주를 정의합니다. voice:read 범위가 있는 토큰은 보이스 설정을 읽을 수 있지만 수정할 수는 없습니다. 범위는 resource:action 패턴을 따릅니다. 예를 들어 용어 관리를 위한 account:read, organization:write, glossary:admin 등이 있습니다.

정책은 사용자와 특정 리소스 간의 관계를 확인합니다. 올바른 범위를 가진 유효한 토큰이라도 사용자가 속하지 않은 조직에는 액세스할 수 없습니다. 모든 요청은 두 계층에서 모두 검사됩니다.

페이지네이션, 필터링 및 정렬

모든 목록 엔드포인트는 일관된 메타데이터와 함께 페이지네이션된 결과를 반환합니다.

모든 응답에는 total_count, total_pages, current_page, page_size, has_next_page?, has_previous_page?이 포함되므로 클라이언트는 값을 추측하지 않고 페이지네이션 컨트롤을 구축할 수 있습니다.

filters[field]=value 쿼리 매개변수를 사용하여 인덱싱된 모든 필드를 기준으로 필터링할 수 있습니다. order_by[] 매개변수를 사용하여 오름차순 또는 내림차순으로 정렬할 수 있습니다. 모든 리소스에서 동일한 인터페이스가 제공됩니다.

OpenAPI 및 대화형 문서

전체 OpenAPI 3.1 명세는 /api/openapi.json에서 확인할 수 있습니다. Scalar 기반의 대화형 API 참조 문서에서 엔드포인트를 탐색하고, 스키마를 검토하며, 브라우저에서 직접 테스트 요청을 보낼 수 있습니다.

명세를 기반으로 모든 언어의 클라이언트 라이브러리를 생성할 수 있습니다. 계약은 버전이 관리되며 안정적으로 유지되므로 새로운 기능이 출시되어도 기존 통합이 중단되지 않습니다.

시작할 준비가 되셨나요?

코드를 배포할 때와 동일한 자신감으로 콘텐츠를 배포하는 팀들과 함께하세요.

시작하기