{
  "id": "052b886a-e095-409a-ae89-c71efb5483d2",
  "slug": "ref/manual/bizspring-google-oauth-연동-api-google-연동-요청",
  "doc_type": "ref",
  "title": "Google 연동 요청 — BizSpring Google OAuth 연동 API",
  "title_en": null,
  "one_liner": " description: 클라이언트 계정으로 발급 받은 인증 토큰을 사용해 API 를 호출합니다. Google 연동 요청 연동고객사 플랫폼과 Google 간의 연동 절차에 대해 설명합니다. 이 과정은 연동 시작을 위한 자사 URL 호출부터 연동 완료 후 UI 업데이트까지 단계별로 진행됩",
  "summary_bullets": [
    "고객사 플랫폼과 Google 간 OAuth 연동 절차를 4단계로 설명하는 API 문서입니다.",
    "먼저 자사 API(/media/oauth2/{MEDIA_CODE})를 GET 호출해 Google 인증 URL을 발급받습니다.",
    "발급받은 인증 URL을 팝업 창으로 열어 클라이언트가 로그인·권한 승인을 직접 진행합니다.",
    "인증 완료 후 팝업이 postMessage로 부모창에 연동 결과(status, code)를 전달하고 닫힙니다.",
    "부모창은 수신한 메시지를 바탕으로 연동 상태를 확인하고 UI 업데이트 등 후속 작업을 수행합니다."
  ],
  "body_md": "---\ndescription: 클라이언트 계정으로 발급 받은 인증 토큰을 사용해 API 를 호출합니다.\n---\n\n# Google 연동 요청\n\n연동고객사 플랫폼과 Google 간의 연동 절차에 대해 설명합니다. 이 과정은 연동 시작을  위한 자사 URL 호출부터 연동 완료 후 UI 업데이트까지 단계별로 진행됩니다.\n\n\n\n## Google 연동 프로세스\n\nGoogle 연동은 다음과 같은 단계로 진행됩니다.\n\n\n\n### 1. 자사 URL 호출\n\n연동을 시작하기 위한 첫 단계로, Google의 인증을 위해 필요한 **인증 URL** 을 반환받기 위해 자사 API URL을 호출합니다.\n\n{% hint style=\"info\" %}\nMEDIA\\_CODE\n\n* GOOGLE : 구글\n{% endhint %}\n\n\n\n#### 요청URL\n\n<pre class=\"language-http\"><code class=\"lang-http\"><strong>https://growthplatform.ai/media/oauth2/{MEDIA_CODE}\n</strong></code></pre>\n\n\n\n#### 프로토콜\n\nHTTPS\n\n\n\n#### **HTTP 메서드**\n\nGET\n\n\n\n#### 헤더\n\n<table><thead><tr><th width=\"173\">필드</th><th>설명</th></tr></thead><tbody><tr><td>Content-type</td><td>요청 데이터 타입. application/json 으로 고정</td></tr><tr><td>x-authorization</td><td>사용자 인증 수단, 인증 토큰.   Bearer <a data-footnote-ref href=\"#user-content-fn-1\">{</a><a data-footnote-ref href=\"#user-content-fn-2\">AUTH TOKEN</a>}</td></tr></tbody></table>\n\n* 요청 예시\n\n```http\nGET /media/oauth2/GOOGLE\nHEADER\nContent-Type: application/json\nx-authorization: BEARER {AUTH TOKEN}\n```\n\n* 응답 결과 예시\n\n<pre class=\"language-http\"><code class=\"lang-http\"><strong>HTTP/1.1 200 OK\n</strong>Content-Type: application/json;charset=UTF-8\n\n{\n    \"status\": \"OK\",\n    \"message\": \"https://accounts.google.com/o/oauth2/v2/auth?acce......2111003%22%7D\"\n}\n</code></pre>\n\n\n\n### 2. 팝업 창을 통한 인증 URL 호출\n\n고객사 플랫폼은 자사 서버로부터 반환 받은 인증 URL을 팝업 창 형식으로 호출합니다. 이 팝업 창은 클라이언트가 매체사와의 연동 절차(예: 로그인, 권한 승인 등)을 직접 수행할 수 있는 환경을 제공합니다.\n\n\n\n### 3. 연동 완료 후 메시지 송신 및 팝업 창 닫기\n\n클라이언트가 매체사의 인증 절차를 완료하면, 팝업 창에 연동 결과와 함께 닫기 버튼이 표시됩니다.  클라이언트가 닫기 버튼을 클릭하면, 팝업 창이 닫히면서 부모창(고객사 플랫폼)으로 연동 결과 메시지를 송신합니다.\n\n\n\n응답 데이터 항목\n\n<table><thead><tr><th width=\"169\" align=\"center\">파라미터</th><th width=\"153\" align=\"center\">타입</th><th>설명</th></tr></thead><tbody><tr><td align=\"center\">status</td><td align=\"center\">string</td><td><p>매체 연동 결과</p><ul><li>authorized  :  연동 성공</li><li>unauthorized : 연동 실패 </li></ul></td></tr><tr><td align=\"center\">code</td><td align=\"center\">string</td><td>사용자 고유 식별 키</td></tr></tbody></table>\n\n* 서버 측 코드 예시\n\n```html\n// 매체 연동 로직 처리\n// 매체 토큰 발생 (callback)\n\n.....\n    \n// 연동 완료 후 부모창에 메시지 송신 및 팝업창 닫기\n<script>\n   window.opener.postMessage('authorized', location.origin);  // 성공, 실패 시 unauthorized\n   window.close();\n   \n   $(document).ready(function() {\n     // 확인 클릭 시 부모 창에 연동 결과를 메시지로 보내고 팝업을 닫음\n     $('#confirmLink').click(function(e) {\n       e.preventDefault();\n        \n       // 부모 창에 메시지 전송       \n       // 연동 성공\n       window.opener.postMessage('{\"status\": \"authorized\", \"code\": \"10135....90241\"}', '*');\n       // 연동 실패\n       window.opener.postMessage('{\"status\": \"unauthorized\"}', '*');\n        \n       // 팝업 창 닫기\n       window.close();\n     });\n   });\n  \n</script>\n```\n\n\n\n### 4. 연동 상태에 따른 UI 업데이트 (verified 속성 참고)\n\n부모창(고객사 플랫폼)은 수신 된 메시지를 바탕으로 연동 상태를 확인하고, 필요한 후속 작업(예: UI 업데이트, 데이터 동기화 등)을 수행할 수 있습니다.\n\n&#x20;\n\n\n\n[^1]: 인증 토큰\n\n[^2]: 인증 토크ㄴ\n",
  "related_slugs": [],
  "faq": [
    {
      "a": "https://growthplatform.ai/media/oauth2/{MEDIA_CODE} 를 HTTPS GET 방식으로 호출합니다. MEDIA_CODE는 구글의 경우 GOOGLE로 지정합니다.",
      "q": "Google 연동을 시작하려면 어떤 API를 호출해야 하나요?"
    },
    {
      "a": "헤더의 x-authorization 필드에 Bearer {AUTH TOKEN} 형식으로 인증 토큰을 담아 전달해야 합니다. Content-Type은 application/json으로 고정합니다.",
      "q": "API 호출 시 인증은 어떻게 처리하나요?"
    },
    {
      "a": "팝업 창에서 인증이 완료되면 window.opener.postMessage를 통해 status 값(authorized 또는 unauthorized)과 code가 부모창으로 전달됩니다. 부모창은 이 메시지를 바탕으로 연동 성공 여부를 판단할 수 있습니다.",
      "q": "연동 성공 여부는 어떻게 확인할 수 있나요?"
    },
    {
      "a": "클라이언트가 인증 절차를 완료하면 팝업 창에 결과와 닫기 버튼이 표시되며, 닫기 버튼을 클릭하면 팝업이 닫히면서 부모창으로 결과 메시지가 전송됩니다.",
      "q": "연동 완료 후 팝업 창은 자동으로 닫히나요?"
    },
    {
      "a": "수신한 메시지의 연동 상태를 확인하여 UI 업데이트나 데이터 동기화 같은 필요한 후속 작업을 수행하면 됩니다.",
      "q": "연동 결과를 받은 후 고객사 플랫폼에서 해야 할 작업은 무엇인가요?"
    }
  ],
  "jsonld": null,
  "keywords": [],
  "source_id": "gitbook:KjNKRIcLeTVGxV3acKb4:CnnBLFiDKKY9ky63wYHe",
  "video_url": null,
  "duration_sec": null,
  "thumbnail_url": null,
  "image_url": null,
  "caption": null,
  "solution_slug": null,
  "captured_at": null,
  "width": null,
  "height": null,
  "created_at": "2026-08-23T14:32:38.444294+00:00",
  "updated_at": "2026-08-28T09:46:33.982+00:00",
  "visibility": "public",
  "source_stage": "1",
  "anonymized": true,
  "source_key": "gitbook-manuals",
  "origin": "ingest",
  "locked": false,
  "locked_by": null,
  "locked_at": null,
  "gate_state": {
    "g1": {
      "hits": [],
      "pass": true
    },
    "g2": {
      "pass": false,
      "total": 16,
      "issues": [
        "숫자·규격 같은 검증 가능한 구체가 부족합니다",
        "다른 문서와 겹치는 말이 대부분입니다",
        "핵심 요약 불릿이 3개 미만입니다",
        "Q&A 쌍이 3개 미만입니다"
      ],
      "applies": true
    },
    "g3": {
      "pass": true,
      "required": false
    },
    "stage": "1",
    "decided_at": "2026-08-23T14:32:37.773Z"
  },
  "raw_id": "37515d25-279c-4276-a0f9-07b29ec45f89",
  "search_text": "Google 연동 요청 — BizSpring Google OAuth 연동 API   description: 클라이언트 계정으로 발급 받은 인증 토큰을 사용해 API 를 호출합니다. Google 연동 요청 연동고객사 플랫폼과 Google 간의 연동 절차에 대해 설명합니다. 이 과정은 연동 시작을 위한 자사 URL 호출부터 연동 완료 후 UI 업데이트까지 단계별로 진행됩  ---\ndescription: 클라이언트 계정으로 발급 받은 인증 토큰을 사용해 API 를 호출합니다.\n---\n\n# Google 연동 요청\n\n연동고객사 플랫폼과 Google 간의 연동 절차에 대해 설명합니다. 이 과정은 연동 시작을  위한 자사 URL 호출부터 연동 완료 후 UI 업데이트까지 단계별로 진행됩니다.\n\n\n\n## Google 연동 프로세스\n\nGoogle 연동은 다음과 같은 단계로 진행됩니다.\n\n\n\n### 1. 자사 URL 호출\n\n연동을 시작하기 위한 첫 단계로, Google의 인증을 위해 필요한 **인증 URL** 을 반환받기 위해 자사 API URL을 호출합니다.\n\n{% hint style=\"info\" %}\nMEDIA\\_CODE\n\n* GOOGLE : 구글\n{% endhint %}\n\n\n\n#### 요청URL\n\n<pre class=\"language-http\"><code class=\"lang-http\"><strong>https://growthplatform.ai/media/oauth2/{MEDIA_CODE}\n</strong></code></pre>\n\n\n\n#### 프로토콜\n\nHTTPS\n\n\n\n#### **HTTP 메서드**\n\nGET\n\n\n\n#### 헤더\n\n<table><thead><tr><th width=\"173\">필드</th><th>설명</th></tr></thead><tbody><tr><td>Content-type</td><td>요청 데이터 타입. application/json 으로 고정</td></tr><tr><td>x-authorization</td><td>사용자 인증 수단, 인증 토큰.   Bearer <a data-footnote-ref href=\"#user-content-fn-1\">{</a><a data-footnote-ref href=\"#user-content-fn-2\">AUTH TOKEN</a>}</td></tr></tbody></table>\n\n* 요청 예시\n\n```http\nGET /media/oauth2/GOOGLE\nHEADER\nContent-Type: application/json\nx-authorization: BEARER {AUTH TOKEN}\n```\n\n* 응답 결과 예시\n\n<pre class=\"language-http\"><code class=\"lang-http\"><strong>HTTP/1.1 200 OK\n</strong>Content-Type: application/json;charset=UTF-8\n\n{\n    \"status\": \"OK\",\n    \"message\": \"https://accounts.google.com/o/oauth2/v2/auth?acce......2111003%22%7D\"\n}\n</code></pre>\n\n\n\n### 2. 팝업 창을 통한 인증 URL 호출\n\n고객사 플랫폼은 자사 서버로부터 반환 받은 인증 URL을 팝업 창 형식으로 호출합니다. 이 팝업 창은 클라이언트가 매체사와의 연동 절차(예: 로그인, 권한 승인 등)을 직접 수행할 수 있는 환경을 제공합니다.\n\n\n\n### 3. 연동 완료 후 메시지 송신 및 팝업 창 닫기\n\n클라이언트가 매체사의 인증 절차를 완료하면, 팝업 창에 연동 결과와 함께 닫기 버튼이 표시됩니다.  클라이언트가 닫기 버튼을 클릭하면, 팝업 창이 닫히면서 부모창(고객사 플랫폼)으로 연동 결과 메시지를 송신합니다.\n\n\n\n응답 데이터 항목\n\n<table><thead><tr><th width=\"169\" align=\"center\">파라미터</th><th width=\"153\" align=\"center\">타입</th><th>설명</th></tr></thead><tbody><tr><td align=\"center\">status</td><td align=\"center\">string</td><td><p>매체 연동 결과</p><ul><li>authorized  :  연동 성공</li><li>unauthorized : 연동 실패 </li></ul></td></tr><tr><td align=\"center\">code</td><td align=\"center\">string</td><td>사용자 고유 식별 키</td></tr></tbody></table>\n\n* 서버 측 코드 예시\n\n```html\n// 매체 연동 로직 처리\n// 매체 토큰 발생 (callback)\n\n.....\n    \n// 연동 완료 후 부모창에 메시지 송신 및 팝업창 닫기\n<script>\n   window.opener.postMessage('authorized', location.origin);  // 성공, 실패 시 unauthorized\n   window.close();\n   \n   $(document).ready(function() {\n     // 확인 클릭 시 부모 창에 연동 결과를 메시지로 보내고 팝업을 닫음\n     $('#confirmLink').click(function(e) {\n       e.preventDefault();\n        \n       // 부모 창에 메시지 전송       \n       // 연동 성공\n       window.opener.postMessage('{\"status\": \"authorized\", \"code\": \"10135....90241\"}', '*');\n       // 연동 실패\n       window.opener.postMessage('{\"status\": \"unauthorized\"}', '*');\n        \n       // 팝업 창 닫기\n       window.close();\n     });\n   });\n  \n</script>\n```\n\n\n\n### 4. 연동 상태에 따른 UI 업데이트 (verified 속성 참고)\n\n부모창(고객사 플랫폼)은 수신 된 메시지를 바탕으로 연동 상태를 확인하고, 필요한 후속 작업(예: UI 업데이트, 데이터 동기화 등)을 수행할 수 있습니다.\n\n&#x20;\n\n\n\n[^1]: 인증 토큰\n\n[^2]: 인증 토크ㄴ\n",
  "embedding": null,
  "embedded_at": null,
  "embedding_hash": null,
  "map_x": null,
  "map_y": null,
  "backlinks": [],
  "html_url": "https://bizspring.ai/kb/ref/manual/bizspring-google-oauth-연동-api-google-연동-요청",
  "markdown_url": "https://bizspring.ai/kb/ref/manual/bizspring-google-oauth-연동-api-google-연동-요청.md"
}