> For the complete documentation index, see [llms.txt](https://help.xpert.lever.me/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.xpert.lever.me/undefined/influencer_center/partnership_data/auto_ops.md).

# Google Sheets 자동 운영

Google Sheets 자동 운영은 시트에 광고 정보를 정리해 두면, Xpert가 동기화할 때 광고를 만들고 시트에 적은 시각에 맞게 광고를 활성화하고 비활성화하는 기능입니다. 수백 건을 한 번 세팅해 두고 운영할 때 활용할 수 있습니다.

## 1. 시트 연동하기

Google 계정 인증(OAuth 2.0)을 거치면 사용자의 Google Sheets와 양방향으로 동기화할 수 있습니다.

<figure><img src="https://3711033526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FpqoSMIt3zkckXcCoNG4M%2Fuploads%2FCTRZMvNsNMnXytuTbbWn%2Fslack_gsheet.jpg?alt=media" alt="파트너십 데이터 화면에서 Google Sheet 연동을 선택한 화면입니다. 지금 동기화, 자동 동기화 설정, Google Sheet 바로가기, Google Sheet 연동 해제 메뉴가 있습니다."><figcaption></figcaption></figure>

1. `Google Sheet 연동` 버튼을 누르면 Google 로그인과 동의 화면으로 이동하며, 시트 읽기·쓰기 권한을 요청합니다.
2. 접근 가능한 시트 목록에서 연동할 시트를 선택합니다. Xpert는 시트를 새로 생성하지 않으므로, 연동할 시트를 미리 만들어 두어야 합니다.
3. 연동이 끝나면 버튼 메뉴가 `지금 동기화` / `자동 동기화 설정` / `Google Sheet 바로가기` / `Google Sheet 연동 해제`로 변경됩니다. 시트는 1개만 연동할 수 있습니다.

## 2. 자동 생성 탭

연동하면 시트에 아래 탭이 자동으로 생성됩니다. 사용자가 직접 입력하는 탭은 `xpert-partnership-data-list` 하나이며, 나머지는 Xpert가 채우는 읽기 전용 탭입니다.

| 탭 이름                          | 내용                                                              |
| ----------------------------- | --------------------------------------------------------------- |
| `xpert-partnership-data-list` | 사용자가 입력하고 관리하는 탭입니다                                             |
| `xpert-campaign-list`         | Xpert가 수집한 인스타그램 계정, 광고계정, 캠페인, 광고세트 목록입니다. 입력값 검증과 드롭다운의 원본입니다 |
| `xpert-catalog-list`          | 카탈로그 광고용 카탈로그와 상품 세트 목록입니다                                      |
| `xpert-adset-filter`          | 연쇄 드롭다운을 만들기 위한 숨김 탭입니다. 화면에 보이지 않는 것이 정상입니다                    |

## 3. 입력 탭 컬럼 구조

| 이름                                  | 설명                                                    | 필수                          |
| ----------------------------------- | ----------------------------------------------------- | --------------------------- |
| `username`                          | 인플루언서 인스타그램 아이디                                       | 필수                          |
| `influencer_name`                   | 인플루언서 이름                                              | 필수                          |
| `permalink`                         | 인플루언서 게시물 URL. `https://`로 시작합니다                      | 필수                          |
| `contract_start_date`               | 계약 시작일 (YYYY-MM-DD)                                   | 선택                          |
| `contract_end_date`                 | 계약 종료일. 시작일 이후여야 합니다                                  | 선택                          |
| `ad_start_date`                     | 광고가 활성화되는 시각입니다. 분 단위까지 입력합니다(예: `2026-06-01 09:00`)  | 선택. 입력하면 해당 시각에 광고가 활성화됩니다  |
| `ad_end_date`                       | 광고가 비활성화되는 시각입니다. 분 단위까지 입력합니다(예: `2026-06-30 23:00`) | 선택. 입력하면 해당 시각에 광고가 비활성화됩니다 |
| `ad_account` / `campaign` / `adset` | 광고계정 / 캠페인 / 광고세트입니다. `이름 (ID)` 형식으로 드롭다운에서 선택합니다     | 광고 생성 시 필수                  |
| `ad`                                | 광고명입니다. 비워 두면 그 행은 광고를 만들지 않고 건너뜁니다                   | 광고 생성 시 필수                  |
| `landing_url`                       | 광고 랜딩 URL                                             | 광고 생성 시 필수                  |
| `cta`                               | 행동유도버튼입니다. 드롭다운에서 선택합니다                               | 광고 생성 시 필수                  |
| `catalog` / `product_set`           | 카탈로그 광고용 카탈로그와 상품 세트                                  | 선택                          |
| `memo`                              | 비고                                                    | 선택                          |
| `sync_message`                      | 동기화 결과 메시지입니다. Xpert가 기록하며 사용자가 고칠 수 없습니다             | -                           |

`ad_account` / `campaign` / `adset` 칸에는 `xpert-campaign-list` 탭을 참조하는 드롭다운이 적용되어 있어, 캠페인을 먼저 선택하면 그 아래 광고세트만 확인할 수 있습니다. 메타에서는 같은 이름의 캠페인과 광고세트를 여러 개 만들 수 있어서 이름 뒤에 ID를 붙여(`이름 (ID)`) 그 ID로 찾습니다. 드롭다운에서 선택하면 형식이 자동으로 입력되니, 셀 내용을 직접 수정하지 말아 주세요.

## 4. 광고 자동 생성 조건

동기화가 끝나면 Xpert가 중복 여부를 검사한 뒤, 광고를 일시중지 상태로 변경합니다. 광고가 활성화되는 시점은 `ad_start_date`를 기준으로 합니다.

* 이미 광고를 만든 행은 다시 만들지 않습니다.
* `ad`(광고명)가 비어 있는 행은 광고를 만들지 않고 건너뜁니다. 광고를 만들려면 `ad`를 반드시 입력해야 합니다.
* `ad_start_date`를 적으면 운영센터에 ON 규칙이 등록되어, 광고계정의 타임존을 기준으로 그 시각에 광고가 활성화됩니다.
* `ad_end_date`를 적으면 OFF 규칙도 함께 등록됩니다.
* 결과는 시트의 행 배경색과 `sync_message` 컬럼, 알림센터로 확인할 수 있습니다.

{% hint style="warning" %}
`ad_start_date`가 이미 지난 행의 광고는 비활성화 상태로 만들어지며, 알림이 발송됩니다. 이미 지나간 시각에는 자동 ON/OFF 규칙이 적용되지 않으니, 성과 테이블의 `일괄 운영`으로 활성화를 설정해야 합니다.
{% endhint %}

중복 판별 기준은 [광고 생성 규칙](/undefined/influencer_center/branded_dashboard/ad_rules.md)의 중복 항목과 같아서, 랜딩 URL이나 광고명만 다른 행은 각각 별개 광고로 생성됩니다. 한 번에 자동 생성되는 건수의 상한은 아래 9번에서 확인할 수 있습니다.

## 5. 시트 행 삭제 시 광고 비활성화

동기화할 때 Xpert는 시트에 입력된 내용을 기준으로 삼기 때문에, 시트에서 지운 행은 Xpert 목록에서도 삭제됩니다.

* 광고계정, 캠페인, 광고세트, 광고명이 모두 같은 행이 시트에 더 이상 없으면 이 센터에서 만든 그 광고가 메타에서 일시중지되고 예약해 둔 자동 ON/OFF도 취소됩니다.
* 메타 광고관리자 등 센터 밖에서 만든 광고에는 적용되지 않습니다.
* 직전 동기화가 실패한 경우에는 광고를 일시중지하지 않습니다. 시트를 잘못 읽어 정상 광고를 비활성화하는 일이 없도록 하기 위한 조치입니다.

{% hint style="danger" %}
광고를 잠깐만 멈추려는 경우에는 행을 지우지 말고 성과 테이블의 `일괄 중지`를 사용해 주세요.
{% endhint %}

## 6. 수집되지 않은 게시물 입력 시

시트에 적은 `permalink`의 콘텐츠가 아직 수집되지 않았다면 그 행은 "생성 실패"로 표시되고 시트에 그대로 유지됩니다. 콘텐츠가 수집된 뒤 다시 동기화하면 정상 처리되며, 수집이 계속 되지 않는다면 [시작 전 확인사항](/undefined/influencer_center/setup.md)의 권한과 자산 연결을 확인해 주세요.

## 7. 양방향 동기화

Xpert [파트너십 데이터](/undefined/influencer_center/partnership_data.md) 화면, 광고 생성 사이드패널, Google Sheets 중 어디에서 항목을 추가하거나 수정·삭제해도, 동기화가 진행되는 시점에 양쪽에 반영됩니다.

* 광고 생성 사이드패널에서 광고를 만들면 사용한 콘텐츠가 파트너십 데이터에 자동으로 등록됩니다.
* 동기화는 대기열로 관리되므로 일시적인 네트워크 장애가 있어도 복구되면 밀린 변경분이 자동으로 반영됩니다.

## 8. 동기화 주기와 이력

자동 동기화는 하루 1회 실행되며, 00시부터 23시 사이에서 5분 단위로 시각을 지정할 수 있습니다. 기본값은 매일 09:00(워크스페이스 타임존)입니다. `지금 동기화`를 누르면 주기와 관계없이 즉시 동기화와 검증이 진행됩니다.

* `동기화 이력` : 최근 30건의 기록을 확인할 수 있습니다. 시각, 상태, 변경 건수, 실패 건수가 표시되며, 실패한 경우 사유(토큰 만료, 시트 접근 불가, 형식 오류 등)도 함께 표시됩니다.
* `Google Sheet 연동 해제` : 저장된 토큰이 삭제되고 자동 동기화가 중단됩니다. 이미 동기화된 데이터는 삭제되지 않고 마지막 상태로 유지됩니다.

{% hint style="warning" %}
Google 토큰이 만료되면 동기화가 중단됩니다. `Google Sheet 연동`에서 다시 인증하면 중단된 지점부터 동기화가 이어집니다.
{% endhint %}

## 9. 대량 광고 생성

한 번에 최대 1,000건까지 생성을 요청할 수 있습니다. 1,000건을 초과하면 "최대 1,000건까지 생성 가능합니다. 광고 생성 범위를 나눠주세요." 안내가 표시됩니다.

* 100건 단위로 나눠 차례대로 처리하며 진행 상황은 Progress Bar로 확인할 수 있습니다.
* `중단`을 누르면 처리 중인 단위까지 완료한 후 중단됩니다. 이미 처리된 건은 그대로 유지됩니다.
* 모든 생성은 백그라운드로 처리됩니다. 완료되면 알림센터로 "총 N건 중 X건 성공, Y건 실패" 요약과 실패 목록이 발송됩니다.
