---
title: 소스 API
description: 권한 범위가 지정된 엔드포인트로 데이터 소스를 조회, 생성, 변경, 테스트, 일시 중지, 삭제합니다.
species: reference
---
# 소스 API

소스 읽기에는 `data:read`가 필요합니다. 생성, 변경, 테스트, 일시 중지 상태 변경, 삭제에는 `apps:manage`가 필요합니다.

## 목록 조회와 생성

```endpoint
GET /sources
```

삭제되지 않은 소스를 최신순으로, 최신 동기화 요약과 함께 반환합니다.

```endpoint
POST /sources
```

키로 설정하는 소스를 만들고 `Location`과 함께 `201`을 반환합니다. OAuth 커넥터는 이 본문에서 OAuth 비밀 값을 받는 대신 중개된 인가 흐름을 사용합니다. 직원 전용, 레거시 별칭, 동기화하지 않는 커넥터는 거부합니다.

JSON 본문에는 `connector`, 커넥터 `config`, 해당 커넥터가 허용하는 비밀 필드를 지정합니다. 유효하지 않은 필드는 `param`과 함께 `400 invalid_source_parameters`를 반환합니다.

## 조회와 변경

```endpoint
GET /sources/{id}
```

소스 세부 정보, 최신 동기화, 현재 테이블 설정을 반환합니다.

```endpoint
PATCH /sources/{id}
```

지원하는 설정 또는 `paused`를 변경합니다. 업데이트가 충돌하면 `409 source_config_unavailable` 또는 `409 source_pause_failed`를 반환합니다.

```endpoint
DELETE /sources/{id}
```

소스를 논리 삭제하고 `{"object":"source_deletion","deleted":true,"data_retained":true}`를 반환합니다. 기존 레이크 데이터는 유지되며, 삭제하면 이후 소스 활동이 중단됩니다.

## 연결 테스트

```endpoint
POST /sources/{id}/test
```

`supported`, `ok`, 의도적으로 일반화한 오류를 반환합니다. PostgreSQL은 실제 연결 테스트를 지원합니다. 다른 커넥터는 `supported: false`를 반환할 수 있습니다. 자격 증명의 호스트 이름, 사용자 이름, 대상 메시지는 응답에 반영하지 않습니다.

접근할 수 없는 ID는 항상 `404 source_not_found`를 반환합니다.
