身份验证
请将 API 密钥作为 bearer 令牌发送。该密钥必须具有 billing.view 权限;缺少该权限的密钥将被拒绝并返回 403 状态码,而非 404。
此端点不需要组织 ID。您的密钥已用于识别其所属的组织,且响应范围也仅限于该组织。
免费试用
将尖括号中的内容替换为您自己的值,并将键占位符替换为您仪表板中的一个键。
curl -X GET https://api.zinndigital.com/v1/accounting/xero \
-H "Authorization: Bearer zdk_live_…"已登录?您仪表板中的 API 控制台会自动填入您真实的组织 ID 和您自己的密钥,并针对实时 API 运行请求,以便您查看实际的响应。 在 API 控制台中打开此端点
详细信息
Whether this organization has connected its own Xero, which Xero organization it is pointed at, and how many of its invoices are waiting, synced or failed. ⛔ `status` distinguishes three states and they are **not** interchangeable. `not_connected` means they have never connected (or disconnected on purpose); `needs_reconnect` means the link existed and **died** — Xero ends a refresh token after 60 days of inactivity, and it also ends when someone removes our access in Xero. Rendering the second as the first tells a paying customer their connection never existed, and hides the fact that invoices are queuing behind it. `entitled` is reported whether or not it is true, so the screen can draw an honest upgrade prompt rather than an empty panel. Requires `billing.view`.
响应
| 名称 | 类型 | 必填 | 内容简介 |
|---|---|---|---|
id | Uuid | 否 | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
status | string<not_connected, connected, needs_reconnect, disconnected> | 是 | `connected` is healthy. `needs_reconnect` means the link died (Xero expires a refresh token after 60 days of inactivity, and access can be revoked in Xero) — invoices raised mea… |
tenantName | string | 否 | The Xero organization's own name. ⭐ The single most useful field on the screen: connecting the wrong company is the mistake that hurts, and the name is what lets a customer see… |
includeSubclientInvoices | boolean | 否 | Reseller option — also push the invoices this organization raised to its OWN clients. Never includes invoices Zinn® raised directly to those clients. |
entitled | boolean | 否 | Whether the plan includes accounting sync (or it has been bought as an add-on). Reported even when false so the screen can explain rather than show nothing. |
connectedAt | string | 否 | — |
lastSyncAt | string | 否 | When a push last SUCCEEDED. Null means never — not "broken". |
brokenSince | string | 否 | When it first stopped working, so "down for three weeks" is answerable. |
lastError | string | 否 | A reason written for the customer. Never the vendor's error verbatim. |
counts | XeroSyncCounts | 是 | How this organization's invoices stand with Xero. |
此端点可能返回的错误
401 · 403 · 429