board-github

POST /v1/board-github/links

Connect a GitHub Project to this organisation.

모든 board-github 엔드포인트

인증

Bearer 토큰으로 API 키를 전송하세요. 이 엔드포인트는 명세에 특정 권한을 명시하지 않으므로, 가정하기보다는 키에 필요한 최소한의 권한을 부여하고 응답을 확인하세요.

조직 ID가 들어가는 위치

이 엔드포인트는 JSON 본문의 필드로 org_id을(를) 받습니다.

조직 ID는 대시보드의 API 키 화면에서 키 바로 옆에 있습니다. 이는 실행하는 모든 호출에서 동일한 ID입니다.

무료 체험하기

대괄호 안에 있는 모든 내용을 사용자 지정 값으로 바꾸고, 키 플레이스홀더는 대시보드의 키로 바꾸세요.

curl -X POST https://api.zinndigital.com/v1/board-github/links \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "project_node_id": <string>, "project_number": <integer>, "owner_login": <string> }'

로그인하셨나요? 대시보드의 API 콘솔이 실제 조직 ID와 본인의 키를 자동으로 채우고 라이브 API를 대상으로 요청을 실행하므로 실제 응답을 확인할 수 있습니다. API 콘솔에서 이 엔드포인트를 여세요

상세 정보

Two-way from the moment it is connected (owner ruling, 2026-09-03). The first sync runs inside this request, so the 201 already carries the project's fields — a connect that returned an empty board and left the customer waiting for the sweep would read as a broken connection. `auth_kind: app` stores only the **installation id**, which is public and appears in the customer's own install URL; nothing long-lived is at rest and an hour-long token is minted per use. `auth_kind: pat` writes the token straight to Vault and never echoes it.

요청 본문

이름유형필수설명
project_node_idstring
project_numberinteger
owner_loginstring
owner_typestring<organization, user>아니요
auth_kindGitHubAuthKind아니요`app` is the Zinn® GitHub App installation — per-repository scope the customer chooses on GitHub's own screen, revocable by them in one click, belonging to their organisation ra…
installation_idstring아니요
tokenstring아니요
board_idstring아니요Optional. A project may be connected purely for the roll-up and never attached to client work.
titlestring아니요
org_idstring아니요

응답

이름유형필수설명
idstring아니요
board_idstring아니요
auth_kindGitHubAuthKind아니요`app` is the Zinn® GitHub App installation — per-repository scope the customer chooses on GitHub's own screen, revocable by them in one click, belonging to their organisation ra…
installation_idstring아니요Public — it appears in the customer's own install URL — and showing it is what lets them confirm on GitHub that they are looking at the right installation.
has_stored_tokenboolean아니요Whether a token is held in Vault for this connection. The token itself is never returned.
project_node_idstring아니요
project_numberinteger아니요
owner_loginstring아니요
owner_typestring아니요
titlestring아니요
short_descriptionstring아니요
closedboolean아니요
publicboolean아니요
directionGitHubSyncDirection아니요`both` is the default (owner ruling, 2026-09-03: a new connection is read-write immediately). `pull` is the honest remedy when a push keeps being refused.
notice_deliveryGitHubNoticeDelivery아니요Where a connection's overdue / gone-quiet / over-WIP notices are allowed to go. Both values raise the same notices and both render them on the board — the difference is delivery…
viewsobject[]아니요The project's saved views on GitHub, replaced whole on every read so a view deleted there disappears here rather than lingering as a link GitHub answers with a 404. Rendered as…
urlstring아니요
webhook_stateGitHubWebhookState아니요Whether GitHub pushes changes at us, and if not, whose move it is. **Three outcomes and not a boolean.** `automatic` — we created the organisation webhook. `manual` — GitHub wou…
last_synced_atstring아니요When a sync last SUCCEEDED. What the staleness alarm fires off.
last_attempted_atstring아니요When a sync was last ATTEMPTED, stamped for every connection the sweep reaches before the result is read. Two columns rather than one: a cursor only a successful pass advanced w…
last_errorstring아니요
created_atstring아니요
fieldsGitHubProjectField[]아니요The project's fields, with their single-select options and any work-in-progress limits set on them. Returned with the connection rather than fetched separately, because a board…

이 엔드포인트가 반환할 수 있는 오류

401 · 403 · 422