airbytehq / airbytehq/airbyte

source-shortio: Clicks stream broken, api-v2.short.cm domain decommissioned, needs migration to statistics.short.io

未關閉 適合新手
#82,681 2 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
area/connectors autoteam community connectors/source/shortio hyd-review needs-triage team/extensibility team/use type/bug
主要語言
Python
星號
22.1k
分支
5.4k
平均合併
5 小時
30 天內合併 PR
671

描述

### Connector Name

source-shortio

### Connector Version

0.3.57

### What step the error happened?

Configuring a new connector

### Relevant information

## Description

The `clicks` stream in `source-shortio` is broken. The `api-v2.short.cm` host has been decommissioned by Short.io, returning a `404 Domain not found` HTML page instead of JSON.

The `links` stream still works because it already uses `api.short.io`.

## Error

GET request to `https://api-v2.short.cm/statistics/domain//link_clicks` failed with status code '404' and error message: 'Domain not found'

## Root Cause

The old `link_clicks` GET endpoint no longer returns raw click data. The equivalent endpoint is now [`last_clicks`](https://developers.short.io/reference/postdomaindomainidlast_clicks) (POST) and `https://api-v2.short.cm/statistics/` is now `https://statistics.short.io/statistics/`

## Proposed Fix

Three changes in `manifest.yaml` for the clicks stream requester:

| Field | Current (broken) | Fix |
|---|---|---|
| `url_base` | `https://api-v2.short.cm/statistics/` | `https://statistics.short.io/statistics/` |
| `path` | `domain/{{ config['domain_id'] }}/link_clicks` | `domain/{{ config['domain_id'] }}/last_clicks` |
| `http_method` | `GET` | `POST` |

The `last_clicks` endpoint returns the same raw click record schema (`dt`, `host`, `path`, `ip`, `browser`, `country`, `os`, `ua`, `utm_source`, etc.) and in addition the following new fields: `geoname_id`, `utm_term`, `utm_content`, `lcpath`.

### Relevant log output

```shell
source ERROR 'GET' request to 'https://api-v2.short.cm/statistics/domain/XXXX/link_clicks' failed with status code '404'
```

### Contribute

- [x] Yes, I want to contribute

---
**Internal Tracking:** airbytehq/oncall#13132

貢獻指南

開啟貢獻指南

研究方向

Locate source-shortio's manifest.yaml and inspect the clicks stream requester first. Compare its requester settings with the Short.io last_clicks API described in the issue, then run the connector's existing checks if available. Done when the clicks stream uses the supported endpoint and retains the documented raw click records.

由索引模型根據 Issue 內容生成。

評估

技術堆疊
yaml
領域
api
Issue 類型
缺陷
難度
2/5
預估耗時
1-3 小時
活躍度
冷清
描述清晰度
描述清楚
新手友好度
76/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。