최근 블로그 글 발행 프로세스를 자동화하려고 GAS(Google Apps Script)와 Notion을 연동하는 작업을 진행했습니다. 목표는 Notion 데이터베이스에 글을 작성하고, 특정 상태로 변경하면 자동으로 Blogger에 발행되도록 하는 것이었죠. 특히 글의 SEO 핵심 요소인 퍼머링크와 검색 설명을 Notion에서 미리 설정하고 싶었습니다.
노션 DB 설계: 완벽한 자동화를 꿈꾸며
글 발행 자동화를 위해 Notion 데이터베이스에 "추천 퍼머링크"와 "검색 설명" 필드를 추가했습니다. 제 계획은 글 발행 전에 이 필드들을 미리 채워두면, GAS 스크립트가 Blogger로 글을 보낼 때 이 값들이 자동으로 반영되도록 하는 것이었습니다. Notion에서 모든 것을 통제할 수 있다면 얼마나 편리할까 상상했습니다. Notion DB 설계는 나름대로 완벽하다고 생각했죠.
초기 자동화 스크립트(seed 스크립트)는 글 내용을 비롯한 모든 메타데이터를 Notion에서 가져와 Blogger에 업로드하는 역할을 했습니다. 퍼머링크도 예외는 아니었습니다. Notion에서 생성한 영문 슬러그가 Blogger에도 그대로 적용될 것이라고 굳게 믿었습니다. 발행 전 준비를 철저히 하면 아무 문제가 없을 거라고 확신했죠.
Blogger 퍼머링크 자동화의 치명적인 오류 발견
하지만 현실은 제 기대와 달랐습니다. 처음으로 자동 발행된 글을 확인했을 때, Blogger 퍼머링크가 제가 Notion에 입력했던 "추천 퍼머링크"와는 전혀 다르게 생성되어 있었습니다. Blogger는 글 제목을 기반으로 자체적인 퍼머링크를 생성했고, 제가 아무리 Notion에서 값을 넣어두었어도 이를 무시했습니다. 설상가상으로 발행된 글의 퍼머링크는 변경할 수 없었습니다.
Blogger의 정책은 한 번 발행된 글의 퍼머링크는 변경 불가하다는 것이었습니다. 이 사실을 깨닫고 정말 당황했습니다. 심지어 seed 스크립트가 아무리 퍼머링크 값을 넘겨도 Blogger API는 이를 받아들이지 않는다는 것도 확인했습니다. Blogger 퍼머링크 변경이 불가능하다는 건 제 GAS 블로그 자동화의 핵심 설계가 틀렸다는 의미였습니다.
새로운 Blogger 퍼머링크 관리 전략: 수동 반영의 필요성
결국 제 Blogger 자동화 설계 실수를 인정하고 새로운 방향을 모색해야 했습니다. Blogger 퍼머링크 자동화는 현 시점에서는 불가능하다는 결론에 도달했습니다. 그래서 발행 후 처리에 대한 프로세스를 변경하기로 결정했습니다. 이제는 글을 발행한 후, Blogger에서 실제 생성된 퍼머링크와 검색 설명을 확인해야 합니다.
이후 updateNotionStatus 스크립트를 통해 Blogger에서 실제 생성된 퍼머링크와 검색 설명 값을 Notion DB에 다시 가져와 업데이트합니다. 이렇게 Notion DB가 실제 발행된 값으로 채워지면, 이 값을 보고 수동으로 Blogger의 해당 필드를 업데이트하는 방식을 채택했습니다. 자동화는 아니지만, 적어도 Notion DB가 최신 정보를 담고 있어 일관성을 유지할 수 있게 되었습니다.
이번 Blogger 퍼머링크 자동화 시도를 통해 완벽한 자동화에 대한 환상보다는 현실적인 접근이 중요하다는 것을 깨달았습니다. 모든 플랫폼이 동일한 유연성을 제공하는 것은 아니며, 때로는 수동 작업이 불가피할 때도 있다는 것을요. 덕분에 Notion DB 설계 과정에서 API의 한계를 미리 파악하고 워크플로우를 유연하게 설계하는 경험을 얻었습니다. 다음 번에는 좀 더 꼼꼼하게 플랫폼별 특성을 고려한 자동화 시스템을 구축할 수 있을 것 같습니다.