---
title: Canny
description: Canny에 연결하고 동기화 동작을 파악하며 기록되는 모든 테이블과 열을 쿼리합니다.
species: reference
---
# Canny

API 키를 사용해 Canny에 연결합니다. 이 소스는 `titan.canny` 아래에 고정 테이블 8개를 기록합니다.
```sql
select
  id,
  name,
  created
from titan.canny.boards
limit 10
```

## Canny 연결

1. **앱**을 열고 **앱 연결**을 선택한 뒤 **Canny** 항목을 선택합니다.
2. API 키를 입력합니다.
3. 테이블을 확인한 뒤 소스를 저장합니다.
4. 첫 실행이 완료될 때까지 **동기화 기록**을 확인합니다.

자격 증명은 비밀 정보로 저장됩니다. 레이크 열이 되거나 쿼리 결과에 나타나지 않습니다.

## 동기화 동작

게시판, 게시물, 투표, 댓글, 사용자, 변경 로그 항목, 태그, 상태 변경을 함께 동기화합니다.

새 소스는 연결할 때 동기화한 다음 설정된 일정을 따릅니다. 기본 반복 간격은 4시간입니다. 실행이 중단되어도 완료한 진행 상황을 유지하며 안전하게 재시도합니다.

모든 레이크 테이블에는 [시스템 열](/docs/concepts/your-lake#시스템-열)인 `_synced_at`과 `_deleted`도 있습니다. 아래 열 참조에는 소스 열만 나열합니다.

## 테이블 참조

### `boards`

`titan.canny.boards`의 소스 열 수는 5개입니다.

```columns table=canny.boards
id                                      string pk           `id` 소스 필드.
name                                    string              `name` 소스 필드.
created                                 datetime            `created` 소스 필드.
url                                     string              `url` 소스 필드.
post_count                              integer             `postCount` 소스 필드.
```

### `posts`

`titan.canny.posts`의 소스 열 수는 9개입니다.

```columns table=canny.posts
id                                      string pk           `id` 소스 필드.
title                                   string              `title` 소스 필드.
details                                 string              `details` 소스 필드.
status                                  string              `status` 소스 필드.
score                                   integer             `score` 소스 필드.
comment_count                           integer             `commentCount` 소스 필드.
author_id                               string              `authorID` 소스 필드.
board_id                                string              `boardID` 소스 필드.
created                                 datetime            `created` 소스 필드.
```

### `votes`

`titan.canny.votes`의 소스 열 수는 4개입니다.

```columns table=canny.votes
id                                      string pk           `id` 소스 필드.
post_id                                 string              `postID` 소스 필드.
voter_id                                string              `voterID` 소스 필드.
created                                 datetime            `created` 소스 필드.
```

### `comments`

`titan.canny.comments`의 소스 열 수는 5개입니다.

```columns table=canny.comments
id                                      string pk           `id` 소스 필드.
post_id                                 string              `postID` 소스 필드.
author_id                               string              `authorID` 소스 필드.
value                                   string              `value` 소스 필드.
created                                 datetime            `created` 소스 필드.
```

### `users`

`titan.canny.users`의 소스 열 수는 5개입니다.

```columns table=canny.users
id                                      string pk           `id` 소스 필드.
name                                    string              `name` 소스 필드.
email                                   string              `email` 소스 필드.
created                                 datetime            `created` 소스 필드.
user_id                                 string              `userID` 소스 필드.
```

### `changelog_entries`

`titan.canny.changelog_entries`의 소스 열 수는 4개입니다.

```columns table=canny.changelog_entries
id                                      string pk           `id` 소스 필드.
title                                   string              `title` 소스 필드.
status                                  string              `status` 소스 필드.
published_at                            datetime            `publishedAt` 소스 필드.
```

### `tags`

`titan.canny.tags`의 소스 열 수는 4개입니다.

```columns table=canny.tags
id                                      string pk           `id` 소스 필드.
name                                    string              `name` 소스 필드.
board_id                                string              `boardID` 소스 필드.
created                                 datetime            `created` 소스 필드.
```

### `status_changes`

`titan.canny.status_changes`의 소스 열 수는 5개입니다.

```columns table=canny.status_changes
id                                      string pk           `id` 소스 필드.
post_id                                 string              `postID` 소스 필드.
status                                  string              `status` 소스 필드.
changer_id                              string              `changerID` 소스 필드.
created                                 datetime            `created` 소스 필드.
```

## 삭제와 이력

행은 소스 키로 병합됩니다. 소스에서 행 삭제를 입증할 수 있으면 Supernova는 행을 유지하고 `_deleted`를 설정합니다. 따라서 쿼리에서 이력을 포함할지 선택할 수 있습니다. 현재 상태를 조회하는 쿼리에는 `where not _deleted` 필터를 사용하세요.
