board-github
POST /v1/board-github/links
Connect a GitHub Project to this organisation.
Πισtoποίηση
Στείλτε ένα κλειδί API ως διακριτικό φορέα (bearer token). Αυτό το τελικό σημείο δεν ορίζει μια συγκεκριμένη άδεια στην προδιαγραφή, οπότε δώστε στο κλειδί σας τα ελάχιστα δυνατά δικαιώματα και ελέγξτε την απόκριση αντί να κάνετε υποθέσεις.
Πού μπαίνει το αναγνωριστικό του οργανισμού σας
Αυτό το endpoint δέχεται το πεδίο org_id στο σώμα JSON.
Το αναγνωριστικό του οργανισμού σας βρίσκεται στην οθόνη των κλειδιών API στον πίνακα ελέγχου σας, δίπλα στο ίδιο το κλειδί. Είναι το ίδιο αναγνωριστικό σε κάθε κλήση που πραγματοποιείτε.
Δοκιμάστε το
Ατικatastήstε ό,τι βρίskεtai μέσα σe γώniaδeς μe τis δikές sas timές, kai to placeholder klεidioύ μe éna klεidi apó ton pinaka ελέgchou sas.
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.
Σώμα αίτησης
| Όνομα | Τύpος | Υποχρεωτικό | Τι είναι |
|---|---|---|---|
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 | Όχι | — |
Απάντηση
| Όνομα | Τύpος | Υποχρεωτικό | Τι είναι |
|---|---|---|---|
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