# (유즈케이스) API 데이터 적재 자동화 (⭐⭐⭐)

## 전제조건

![Image](https://upload.cafenono.com/image/slashpageHome/20250422/094248_QcQoNEUu2DGKBipoVY?q=80&s=1280x180&t=outside&f=webp)

### 활용예시

- DB를 생성 후 AWS Athena로 조회 → BI 대시보드에 연결.

![Image](https://upload.cafenono.com/image/slashpageHome/20250422/094249_slPI6qzG1erw7vMV7u?q=80&s=1280x180&t=outside&f=webp)

![Image](https://upload.cafenono.com/image/slashpageHome/20250422/094249_HTfPOJjH7wIpXE30vJ?q=80&s=1280x180&t=outside&f=webp)

## 시나리오

> 한줄 요약 : “응급실 API”를 이용하여 응급실 관련 데이터를 가져오고, 해당 데이터를 가공한 후 Google Sheets와 AWS S3에 저장하는 프로세스를 자동화하는 작업.

[Source: 국립중앙의료원_전국 응급의료기관 정보 조회 서비스](https://www.data.go.kr/data/15000563/openapi.do)

1. 위 Source에서 API가이드 확인 & API_KEY 발급받기.

2. 워크플로우에서 API Key 노드에 API_KEY 입력하기.

3. API Call 노드 설정을 통해 입력 파라미터 조정하기.

4. 결과를 구글 스프레드 시트 혹은 AWS S3에 업로드하기.

---

1.**Schedule Trigger**: 정해진 시간 간격으로 워크플로우를 실행합니다.

2.**API Key 설정**: SERVICE_KEY라는 변수에 사용자의 응급실 API 키를 저장하여 이후의 API 호출에 사용됩니다.

3.**API Call(Get Data)**: 대한민국 응급실 정보를 제공하는 공개 API를 호출하여 서울특별시의 응급실 데이터 목록을 가져옵니다.

4.**Split Out**: 응급실 데이터를 하나씩 분리하여 가공 및 저장하기 쉽게 처리합니다.

5.**Cast Type**: 데이터를 가공하는 코드 노드로, 특정 컬럼인 hvidate의 값을 숫자에서 문자열로 변환합니다.

6.**Convert to File**: 데이터를 파일로 변환합니다.

7.**AWS S3 업로드**: 변환된 파일을 지정된 AWS S3 버킷에 업로드하며, 파일명은 현재 날짜 및 시간(yyyyMMddHH)을 기반으로 저장됩니다.

8.**Google Sheets와 연결**: 워크플로우는 가져온 응급실 데이터를 Google Sheets에 업로드합니다. 먼저 시트의 기존 데이터를 “Clear Sheet” 노드를 통해 지운 후 “Append Sheet” 노드를 통해 새로운 데이터를 추가합니다.

9.**Sticky Notes**: 워크플로우 사용 시 주의사항이나 설정 방법을 설명하는 메모들이 포함되어 있습니다.

이 워크플로우는 주기적으로 응급실 관련 데이터를 가져와 가공하고, 이를 Google Sheets 및 AWS S3에 자동으로 저장하는 역할을 수행합니다.

For the site tree, see the [root Markdown](https://slashpage.com/n8n-guide.md).
