airbytehq / airbytehq/airbyte-api-python-sdk

Add SDK support for Cloud source execution

未关闭
#210 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Python
星标
61
派生
27
平均合并
4 分钟
30 天内合并 PR
2

描述

Track SDK support for the new Cloud source action endpoint, `POST /v1/sources/{sourceId}/execute`, once its platform specification is published.

The endpoint supports registry-declared JSON-only direct `get`, `list` and `api_search` operations across connectors/entities. Describe, writes, downloads, streaming, Context Store and unclassified operations are excluded.

Required `entity` and `action` are nonempty strings. `params` is an arbitrary JSON object, defaulting to `{}` when omitted. Optional `select_fields`/`exclude_fields` are nullable string arrays; `skip_truncation` is a strict boolean defaulting to `true`; `intent` is nullable with a 512-character maximum. Unknown root fields and invalid option types reject.

```json
{"entity":"repositories","action":"list","params":{"owner":"example","first":10},"skip_truncation":true}
```

The response requires `data` containing any JSON value, including objects, arrays, scalars or explicit null. Optional `meta` is a JSON object containing connector/pagination metadata. SDK serialization must preserve unknown/nested properties, numeric values, null-valued properties, empty objects/arrays, and required `data:null`; absent metadata stays absent. Explicit null is invalid for `params`, `skip_truncation` and `meta`.

Acceptance:

- Regenerate the Sources operation from the platform `api_sdk.yaml` using this repository's Speakeasy workflow.
- Verify request defaults/options and response wire contracts against the generated schema, including pagination, large numbers, nested nulls, empty `meta:{}`, and required `data:null`.
- Document Cloud authentication, workspace reader access, controlled availability, and the disabled/unavailable 503 response.
- Coordinate the SDK release with publication of the platform specification and endpoint activation.

The implementation ships disabled. The paired platform and Sonar changes passed 88/88 local E2E cases plus cleanup on their current unmerged revisions. See the [platform draft PR](https://github.com/airbytehq/airbyte-platform-internal/pull/19452) and its [paired premerge verification](https://github.com/airbytehq/airbyte-platform-internal/pull/19452#paired-premerge-proof). SDK regeneration and release remain pending.

Workspace discovery and describe/documentation/skill-discovery endpoints remain deferred. No SDK regeneration, release or production activation is claimed by this tracking update.

贡献指南

打开贡献指南

调研方向

Wait for publication of the platform specification, then inspect api_sdk.yaml and this repository's Speakeasy workflow before regenerating the Sources operation. Verify the generated request and response contracts against the listed edge cases, document authentication and availability behavior, and confirm release coordination; done means regeneration, verification, documentation, and release are complete without production activation.

由索引模型根据 Issue 内容生成。

评估

技术栈
python
领域
api, developer-experience, documentation, release
Issue 类型
功能
难度
4/5
预计耗时
3-5 天
活跃度
活跃
描述清晰度
基本清楚
新手友好度
42/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。