board-github
POST /v1/board-github/links
Connect a GitHub Project to this organisation.
توثيقِ شناخت
ایک API کلید بطور بیر ٹوکن (bearer token) ارسال کریں۔ یہ اینڈ پوائنٹ اسپیسیفیکیشن میں کسی مخصوص اجازت کا ذکر نہیں کرتا، اس لیے فرض کرنے کے بجائے اپنی کلید کو کم از کم درکار اجازت دیں اور رسپانس چیک کریں۔
جہاں آپ کی تنظیم کی آئی ڈی آتی ہے
یہ اینڈ پوائنٹ JSON باڈی میں ایک فیلڈ کے طور پر org_id لیتا ہے۔
آپ کی تنظیم کی آئی ڈی آپ کے ڈیش بورڈ پر 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 پر درخواست چلاتا ہے تاکہ آپ اصل ردعمل دیکھ سکیں۔ اس اینڈ پوائنٹ کو 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_id | string | ہاں | — |
project_number | integer | ہاں | — |
owner_login | string | ہاں | — |
owner_type | string<organization, user> | نہیں | — |
auth_kind | GitHubAuthKind | نہیں | `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_id | string | نہیں | — |
token | string | نہیں | — |
board_id | string | نہیں | Optional. A project may be connected purely for the roll-up and never attached to client work. |
title | string | نہیں | — |
org_id | string | نہیں | — |
جواب
| نام | قسم | لازمی | یہ کیا ہے |
|---|---|---|---|
id | string | نہیں | — |
board_id | string | نہیں | — |
auth_kind | GitHubAuthKind | نہیں | `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_id | string | نہیں | 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_token | boolean | نہیں | Whether a token is held in Vault for this connection. The token itself is never returned. |
project_node_id | string | نہیں | — |
project_number | integer | نہیں | — |
owner_login | string | نہیں | — |
owner_type | string | نہیں | — |
title | string | نہیں | — |
short_description | string | نہیں | — |
closed | boolean | نہیں | — |
public | boolean | نہیں | — |
direction | GitHubSyncDirection | نہیں | `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_delivery | GitHubNoticeDelivery | نہیں | 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… |
views | object[] | نہیں | 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… |
url | string | نہیں | — |
webhook_state | GitHubWebhookState | نہیں | 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_at | string | نہیں | When a sync last SUCCEEDED. What the staleness alarm fires off. |
last_attempted_at | string | نہیں | 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_error | string | نہیں | — |
created_at | string | نہیں | — |
fields | GitHubProjectField[] | نہیں | 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