Reinstate "namespace" support within "stream" object in public API (was somehow dropped in transition from server api)
- Ngôn ngữ chính
- Python
- Star
- 22.1k
- Fork
- 5.4k
- Merge trung bình
- 5 giờ
- Pull request đã merge (30 ngày)
- 671
Mô tả
### Topic
Add "Namespace" definition to "Stream"
### Relevant information
I have a scenario where I have multiple (around 100) Postgres sources of identical schemas, similar to:
```
- postgres_db
- schema_1
- table_1
- table_2
- schema_2
- table_1
- table_2
- etc.
```
I have transitioned from **octavia** to **terraform** and can see that in that shift support for **namespace** within a **stream** has been removed from the new **public-api**, but was supported in the old **server-api** and continues to be supported in the UI. This is a limitation of **public-api**.
Additional Details:
The [deprecated](https://docs.airbyte.com/api-documentation#configuration-api-deprecated) Configuration API (server-api) has the field "namespace" included in the "stream" object:
https://airbyte-public-api-docs.s3.us-east-2.amazonaws.com/rapidoc-api-docs.html#post-/v1/connections/create
```
{
...
"syncCatalog": {
"streams": [
{
"stream": {
"name": "...",
"jsonSchema": {...},
...,
"namespace": "string",
},
"config": {
...
},
...
}
```
and you're able to send it to the backend. For example, in the browser, I can see that the POST payload to the:
http://AIRBYTE_WEBAPP/api/v1/web_backend/connections/create looks like this:

At the same time, the public API has no same parameters for that:
https://reference.airbyte.com/reference/createconnection
The object "configurations[].streams[]" has "name", "syncMode", "cursorField", "primaryKey" and selectedFields parameters only. Have no idea why the public-api is cut compared with server-api. The public API should really support the same features as the UI.
Hướng dẫn đóng góp
Đánh giá
Issue này chưa được đánh giá.