Apidog에서 API 엔드포인트를 설계하고 설정하는 것은 견고하고 효과적인 API를 만드는 데 있어 기초적인 단계입니다.OpenAPI 생태계 내의 다양한 도구 및 서비스와 원활한 호환성을 보장하기 위해 OpenAPI Specification (OAS)를 준수하여 엔드포인트를 설계하는 것이 권장됩니다. OAS를 벗어나면 OpenAPI 호환 도구 및 서비스를 사용할 때 호환성 문제가 발생할 수 있습니다.
APIs 모듈 내에서 새 엔드포인트를 생성하려면 New Endpoint 버튼을 클릭하십시오.
명확하고 완전한 엔드포인트에는 다음 요소가 포함되어야 합니다.
1.
엔드포인트 경로
2.
요청 메서드
3.
엔드포인트 메타데이터
4.
요청
5.
응답 및 예시
설계 우선 모드
요청 우선 모드
인터페이스 모드
Apidog의 엔드포인트 인터페이스에는 API 설계 우선 접근 방식을 위한 설계 우선 모드와 코드 우선 접근 방식을 위한 요청 우선 모드의 두 가지 모드가 있습니다. 인터페이스의 왼쪽 하단 모서리에서 모드를 전환할 수 있습니다. 설계 우선 모드/요청 우선 모드에 대해 자세히 알아보십시오.
엔드포인트 경로는 API가 외부 애플리케이션과 상호작용할 수 있는 특정 주소 역할을 합니다. 이는 클라이언트가 API 서비스에 액세스하는 데 사용하는 것입니다.
Apidog는 OpenAPI Specification 방식을 따릅니다. 각 엔드포인트에 대해 전체 URL을 작성하는 대신 경로만 입력하면 됩니다(예: /users). 기본 URL은 환경에서 설정되며, Apidog는 엔드포 인트에 요청을 보낼 때 이를 자동으로 추가합니다.
OpenAPI 표준과 일관성을 유지하기 위해 Apidog는 모든 경로를 /로 시작할 것도 권장합니다. 이렇게 하면 API 설계가 깔끔하고 체계적으로 유지되며 Apidog 기능의 이점을 온전히 활용할 수 있습니다.
경로를 /로 시작해야 하는 이유
경로를 /로 시작하는 것은 OAS를 준수하기 위해 권장됩니다. 경로를 /로 시작하지 않으면 OpenAPI 생태계 내의 도구를 사용할 때 다양한 호환성 문제가 발생할 수 있습니다.
또한 경로 시작 부분에 /를 사용하면 Apidog에서 테스트 및 검증 목적에 필수적인 URL 패턴 목 기능을 활용할 수 있습니다.
경로 매개변수는 엔드포인트 URL 자체의 일부이며 API 내의 특정 리소스 또는 엔터티를 식별하는 데 사용됩니다.Apidog에서 경로 매개변수는 콜론이 아니라 중괄호를 사용하여 표시됩니다. 올바른 예시: /pets/{id}, 잘못된 예시: /pets/:id.경로 매개변수에서 변수를 사용해야 하는 경우, 권장되는 접근 방식은 URL에 {parameter}로 정의한 다음 매개변수 값에 {{variable}}을 사용하는 것입니다. 예를 들면 다음과 같습니다.
권장: 변수를 경로 매개변수 값에 넣으십시오.
권장하지 않음: 변수를 URL에 직접 넣지 마십시오.
{parameter}와 {{variable}}를 혼동하지 마십시오
{parameter}: 단일 중괄호는 Apidog에서 경로 매개변수를 나타냅니다. 경로 매개변수 는 API 엔드포인트에 액세스할 때 특정 값으로 동적으로 변경되는 URL 경로의 자리 표시자입니다.
{{variable}}: 이중 중괄호는 요청 내의 변수를 포함합니다. 이러한 변수는 요청이 전송될 때 실제 값으로 대체될 수 있어 API 상호작용에서 동적이고 사용자 지정 가능한 입력을 허용합니다.
경로에서 {{variable}}를 사용하지 말아야 하는 이유
{{variable}}를 사용하는 것은 OAS를 준수하지 않습니다. OAS를 따르면 OpenAPI 생태계 내 다양한 도구와 원활하게 통합할 수 있습니다.
경로에서 {{variable}}를 사용하면 Apidog에서 URL 패턴 목 기능을 사용할 수 없습니다.
API에 요청을 보낸 후 서버는 응답을 반환합니다. 예상 응답을 정의하고 설명용 예시를 제공하는 것은 API와 연동하는 개발자의 이해도와 사용성을 높이는 중요한 단계입니다.
반환되는 응답의 정의에는 주로 다음 부분이 포함됩니다.
구성 요소
설명
HTTP Status Code
엔드포인트가 반환할 수 있는 모든 잠재적 응답 상태를 결정합니다. 여기에는 200 (OK), 404 (Not Found), 500 (Server Error)와 같은 표준 응답이 포함됩니다.
Data Format
API가 각 상태 코드에 대해 반환할 응답 형식을 정의합니다. 이는 JSON, XML, HTML, Raw, Binary 또는 기타 적합한 형식일 수 있습니다.
Schema
데이터를 전달하는 응답(주로 200 상태)의 경우 응답 페이로드의 구조를 자세히 설명합니다. 여기에는 유형, 중첩 객체, 선택 필드 및 배열 지정이 포함됩니다. 명확한 정의는 클라이언트 개발자가 어떤 데이터를 예상해야 하는지, 그리고 이를 어떻게 파싱해야 하는지 이해하는 데 도움이 됩니다. JSON 및 XML만 스키마를 구성할 수 있습니다. 자세한 정보는 Schemas를 참조하십시오.
Example
예시 응답을 제공하는 것은 실제 시나리오에서 API가 어떻게 동작하는지 보여주는 데 필수적입니다. 예시는 미리 정의된 요청으로 엔드포인트를 호출했을 때 서버가 반환하는 샘플 데이터 세트인 것이 이상적입니다. 이는 응답 스키마에 정의된 구조, 데이터 형식 및 유형을 반영해야 합니다.
일반적으로 API 문서의 각 엔드포인트에 대해 최소 하나의 성공 응답과 하나의 오류 응답을 정의하는 것이 권장됩니다. 이러한 관행은 다양한 잠재적 결과를 포괄적으로 다루도록 보장하며, 개발자가 서로 다른 시나리오에서 API가 어떻게 동작하는지 명확하게 이해할 수 있도록 합니다.응답을 추가하려면 Responses 모듈의 오른쪽 상단 모서리에 있는 + Add 버튼을 클릭하십시오.
일반적인 API 설계에서 성공적인 200 OK 응답은 고유한 출력 데이터 요구 사항으로 인해 다양한 엔드포인트마다 다른 경우가 많지만, 400 Bad Request 및 404 Not Found와 같은 오류 응답은 서로 다른 엔드포인트 전반에서 일관된 경향이 있습니다. Apidog는 사전 정의된 오류 응답을 재사용할 수 있는 Response Component 기능으로 이러한 공통성을 스마트하게 처리하여 API 문서화 프로세스를 더 효율적으로 만들고 API 동작을 더 일관되게 합니다.