board-github

POST /v1/board-github/links

Connect a GitHub Project to this organisation.

Всички крайни точки в board-github

Упълномощаване

Изпратете API ключ като носител (bearer token). Тази точка за достъп не указва конкретно разрешение в спецификацията, затова дайте на ключа си най-малкото необходимо и проверете отговора, вместо да правите предположения.

Където отива идентификаторът на вашата организация

Този краен пункт приема org_id като поле в JSON тялото.

ИД на вашата организация се намира на екрана с API ключове във вашето табло за управление, до самия ключ. Това е същият ИД във всяко заявка, която правите.

Опитайте

Заменете всичко в квадратни скоби със собствени стойности, а ключовия заместващ символ – с ключ от вашето табло за управление.

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 конзолата във вашето табло за управление попълва действителното идентификационно число на вашата организация и вашия собствен ключ и изпълнява заявката спрямо реалното API, за да можете да видите действителния отговор. Отворете този крайpoint в 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…

Грешки, които този крайpoint може да върне

401 · 403 · 422