@leaflow/sdk 0.5.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/dist/generated/assistant/index.d.ts +8 -7
  2. package/dist/generated/assistant/index.js +6 -5
  3. package/dist/generated/assistant/models/bindingCodeResponseBody.d.ts +34 -0
  4. package/dist/generated/assistant/models/bindingCodeResponseBody.js +31 -0
  5. package/dist/generated/assistant/models/bindingResource.d.ts +4 -1
  6. package/dist/generated/assistant/models/bindingResourceConnState.d.ts +37 -0
  7. package/dist/generated/assistant/models/bindingResourceConnState.js +37 -0
  8. package/dist/generated/assistant/models/bindingResourceStatus.d.ts +36 -0
  9. package/dist/generated/assistant/models/bindingResourceStatus.js +36 -0
  10. package/dist/generated/assistant/models/channelResource.d.ts +10 -2
  11. package/dist/generated/assistant/models/channelResourceConnState.d.ts +40 -0
  12. package/dist/generated/assistant/models/channelResourceConnState.js +37 -0
  13. package/dist/generated/assistant/models/channelResourceRuntimeState.d.ts +38 -0
  14. package/dist/generated/assistant/models/channelResourceRuntimeState.js +35 -0
  15. package/dist/generated/assistant/models/channelResourceSenderPolicy.d.ts +35 -0
  16. package/dist/generated/assistant/models/channelResourceSenderPolicy.js +35 -0
  17. package/dist/generated/assistant/models/channelResourceStatus.d.ts +36 -0
  18. package/dist/generated/assistant/models/channelResourceStatus.js +36 -0
  19. package/dist/generated/assistant/models/channelWithSecretResponseBody.d.ts +57 -0
  20. package/dist/generated/assistant/models/channelWithSecretResponseBody.js +1 -0
  21. package/dist/generated/assistant/models/channelWithSecretResponseBodyAllowFrom.d.ts +31 -0
  22. package/dist/generated/assistant/models/channelWithSecretResponseBodyAllowFrom.js +31 -0
  23. package/dist/generated/assistant/models/channelWithSecretResponseBodyConnState.d.ts +40 -0
  24. package/dist/generated/assistant/models/channelWithSecretResponseBodyConnState.js +37 -0
  25. package/dist/generated/assistant/models/channelWithSecretResponseBodyRuntimeState.d.ts +38 -0
  26. package/dist/generated/assistant/models/channelWithSecretResponseBodyRuntimeState.js +35 -0
  27. package/dist/generated/assistant/models/channelWithSecretResponseBodySenderPolicy.d.ts +35 -0
  28. package/dist/generated/assistant/models/channelWithSecretResponseBodySenderPolicy.js +35 -0
  29. package/dist/generated/assistant/models/channelWithSecretResponseBodyStatus.d.ts +36 -0
  30. package/dist/generated/assistant/models/channelWithSecretResponseBodyStatus.js +36 -0
  31. package/dist/generated/assistant/models/channelWithSecretResponseBodyWebhookSecret.d.ts +34 -0
  32. package/dist/generated/assistant/models/channelWithSecretResponseBodyWebhookSecret.js +31 -0
  33. package/dist/generated/assistant/models/channelWithSecretResponseBodyWebhookUrl.d.ts +34 -0
  34. package/dist/generated/assistant/models/channelWithSecretResponseBodyWebhookUrl.js +31 -0
  35. package/dist/generated/assistant/models/createChannelRequestBody.d.ts +3 -2
  36. package/dist/generated/assistant/models/createChannelRequestBodySenderPolicy.d.ts +35 -0
  37. package/dist/generated/assistant/models/createChannelRequestBodySenderPolicy.js +35 -0
  38. package/dist/generated/assistant/models/index.d.ts +17 -1
  39. package/dist/generated/assistant/models/index.js +17 -1
  40. package/dist/generated/assistant/models/itemResourceStatus.d.ts +1 -1
  41. package/dist/generated/assistant/models/itemResourceStatus.js +1 -1
  42. package/dist/generated/assistant/models/itemResourceType.d.ts +1 -0
  43. package/dist/generated/assistant/models/itemResourceType.js +1 -0
  44. package/dist/generated/assistant/models/loginResource.d.ts +5 -2
  45. package/dist/generated/assistant/models/loginResource.js +0 -30
  46. package/dist/generated/assistant/models/loginResourceStatus.d.ts +39 -0
  47. package/dist/generated/assistant/models/loginResourceStatus.js +39 -0
  48. package/dist/generated/assistant/models/updateChannelRequestBodySenderPolicy.d.ts +2 -2
  49. package/dist/generated/assistant/models/updateChannelRequestBodySenderPolicy.js +2 -2
  50. package/dist/generated/tunnel/index.d.ts +142 -0
  51. package/dist/generated/tunnel/index.js +149 -0
  52. package/dist/generated/tunnel/models/actOnTunnelRequestBody.d.ts +28 -0
  53. package/dist/generated/tunnel/models/actOnTunnelRequestBody.js +1 -0
  54. package/dist/generated/tunnel/models/actOnTunnelRequestBodyAction.d.ts +29 -0
  55. package/dist/generated/tunnel/models/actOnTunnelRequestBodyAction.js +29 -0
  56. package/dist/generated/tunnel/models/changeTunnelPlanRequestBody.d.ts +27 -0
  57. package/dist/generated/tunnel/models/changeTunnelPlanRequestBody.js +25 -0
  58. package/dist/generated/tunnel/models/error.d.ts +31 -0
  59. package/dist/generated/tunnel/models/error.js +1 -0
  60. package/dist/generated/tunnel/models/errorMeta.d.ts +27 -0
  61. package/dist/generated/tunnel/models/errorMeta.js +25 -0
  62. package/dist/generated/tunnel/models/index.d.ts +54 -0
  63. package/dist/generated/tunnel/models/index.js +54 -0
  64. package/dist/generated/tunnel/models/lengthAwarePageOperationLogResource.d.ts +35 -0
  65. package/dist/generated/tunnel/models/lengthAwarePageOperationLogResource.js +1 -0
  66. package/dist/generated/tunnel/models/listTunnelOperationLogsParams.d.ts +43 -0
  67. package/dist/generated/tunnel/models/listTunnelOperationLogsParams.js +25 -0
  68. package/dist/generated/tunnel/models/listTunnelUsageSeriesParams.d.ts +32 -0
  69. package/dist/generated/tunnel/models/listTunnelUsageSeriesParams.js +25 -0
  70. package/dist/generated/tunnel/models/openTunnelRequestBody.d.ts +38 -0
  71. package/dist/generated/tunnel/models/openTunnelRequestBody.js +25 -0
  72. package/dist/generated/tunnel/models/operationLogResource.d.ts +38 -0
  73. package/dist/generated/tunnel/models/operationLogResource.js +1 -0
  74. package/dist/generated/tunnel/models/operationLogResourceActor.d.ts +28 -0
  75. package/dist/generated/tunnel/models/operationLogResourceActor.js +25 -0
  76. package/dist/generated/tunnel/models/operationLogResourcePayload.d.ts +27 -0
  77. package/dist/generated/tunnel/models/operationLogResourcePayload.js +25 -0
  78. package/dist/generated/tunnel/models/subscriptionResource.d.ts +33 -0
  79. package/dist/generated/tunnel/models/subscriptionResource.js +1 -0
  80. package/dist/generated/tunnel/models/subscriptionResourceStatus.d.ts +32 -0
  81. package/dist/generated/tunnel/models/subscriptionResourceStatus.js +29 -0
  82. package/dist/generated/tunnel/models/tunnelPlanListResponseBody.d.ts +28 -0
  83. package/dist/generated/tunnel/models/tunnelPlanListResponseBody.js +1 -0
  84. package/dist/generated/tunnel/models/tunnelPlanResource.d.ts +33 -0
  85. package/dist/generated/tunnel/models/tunnelPlanResource.js +25 -0
  86. package/dist/generated/tunnel/models/tunnelResource.d.ts +54 -0
  87. package/dist/generated/tunnel/models/tunnelResource.js +1 -0
  88. package/dist/generated/tunnel/models/tunnelResourceEmail.d.ts +28 -0
  89. package/dist/generated/tunnel/models/tunnelResourceEmail.js +25 -0
  90. package/dist/generated/tunnel/models/tunnelResourceFailure.d.ts +28 -0
  91. package/dist/generated/tunnel/models/tunnelResourceFailure.js +25 -0
  92. package/dist/generated/tunnel/models/tunnelResourceStatus.d.ts +32 -0
  93. package/dist/generated/tunnel/models/tunnelResourceStatus.js +29 -0
  94. package/dist/generated/tunnel/models/tunnelResourceSubscriptionStatus.d.ts +32 -0
  95. package/dist/generated/tunnel/models/tunnelResourceSubscriptionStatus.js +29 -0
  96. package/dist/generated/tunnel/models/tunnelResourceSuspendedAt.d.ts +28 -0
  97. package/dist/generated/tunnel/models/tunnelResourceSuspendedAt.js +25 -0
  98. package/dist/generated/tunnel/models/tunnelUsageSnapshot.d.ts +38 -0
  99. package/dist/generated/tunnel/models/tunnelUsageSnapshot.js +1 -0
  100. package/dist/generated/tunnel/models/tunnelUsageSnapshotSyncedAt.d.ts +28 -0
  101. package/dist/generated/tunnel/models/tunnelUsageSnapshotSyncedAt.js +25 -0
  102. package/dist/generated/tunnel/models/updateTunnelProfileRequestBody.d.ts +34 -0
  103. package/dist/generated/tunnel/models/updateTunnelProfileRequestBody.js +1 -0
  104. package/dist/generated/tunnel/models/updateTunnelProfileRequestBodyEmail.d.ts +29 -0
  105. package/dist/generated/tunnel/models/updateTunnelProfileRequestBodyEmail.js +25 -0
  106. package/dist/generated/tunnel/models/usageDayResource.d.ts +30 -0
  107. package/dist/generated/tunnel/models/usageDayResource.js +25 -0
  108. package/dist/generated/tunnel/models/usageResource.d.ts +43 -0
  109. package/dist/generated/tunnel/models/usageResource.js +1 -0
  110. package/dist/generated/tunnel/models/usageResourceQuotaExceededAt.d.ts +28 -0
  111. package/dist/generated/tunnel/models/usageResourceQuotaExceededAt.js +25 -0
  112. package/dist/generated/tunnel/models/usageSeriesResource.d.ts +30 -0
  113. package/dist/generated/tunnel/models/usageSeriesResource.js +1 -0
  114. package/dist/index.d.ts +14 -0
  115. package/dist/index.js +18 -3
  116. package/openapi/assistant.version +1 -1
  117. package/openapi/assistant.yaml +147 -25
  118. package/openapi/compute.version +1 -1
  119. package/openapi/monitoring.version +1 -1
  120. package/openapi/tunnel.version +1 -0
  121. package/openapi/tunnel.yaml +773 -0
  122. package/package.json +1 -1
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ import type { ActOnTunnelRequestBodyAction } from './actOnTunnelRequestBodyAction.js';
26
+ export interface ActOnTunnelRequestBody {
27
+ action: ActOnTunnelRequestBodyAction;
28
+ }
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export type ActOnTunnelRequestBodyAction = typeof ActOnTunnelRequestBodyAction[keyof typeof ActOnTunnelRequestBodyAction];
26
+ export declare const ActOnTunnelRequestBodyAction: {
27
+ readonly enable: "enable";
28
+ readonly disable: "disable";
29
+ };
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ // eslint-disable-next-line @typescript-eslint/no-redeclare
26
+ export const ActOnTunnelRequestBodyAction = {
27
+ enable: 'enable',
28
+ disable: 'disable',
29
+ };
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export interface ChangeTunnelPlanRequestBody {
26
+ plan_id: string;
27
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export {};
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ import type { ErrorMeta } from './errorMeta.js';
26
+ export interface Error {
27
+ code?: string;
28
+ message: string;
29
+ meta?: ErrorMeta;
30
+ status: number;
31
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export type ErrorMeta = {
26
+ [key: string]: unknown;
27
+ };
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export {};
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export * from './actOnTunnelRequestBody.js';
26
+ export * from './actOnTunnelRequestBodyAction.js';
27
+ export * from './changeTunnelPlanRequestBody.js';
28
+ export * from './error.js';
29
+ export * from './errorMeta.js';
30
+ export * from './lengthAwarePageOperationLogResource.js';
31
+ export * from './listTunnelOperationLogsParams.js';
32
+ export * from './listTunnelUsageSeriesParams.js';
33
+ export * from './openTunnelRequestBody.js';
34
+ export * from './operationLogResource.js';
35
+ export * from './operationLogResourceActor.js';
36
+ export * from './operationLogResourcePayload.js';
37
+ export * from './subscriptionResource.js';
38
+ export * from './subscriptionResourceStatus.js';
39
+ export * from './tunnelPlanListResponseBody.js';
40
+ export * from './tunnelPlanResource.js';
41
+ export * from './tunnelResource.js';
42
+ export * from './tunnelResourceEmail.js';
43
+ export * from './tunnelResourceFailure.js';
44
+ export * from './tunnelResourceStatus.js';
45
+ export * from './tunnelResourceSubscriptionStatus.js';
46
+ export * from './tunnelResourceSuspendedAt.js';
47
+ export * from './tunnelUsageSnapshot.js';
48
+ export * from './tunnelUsageSnapshotSyncedAt.js';
49
+ export * from './updateTunnelProfileRequestBody.js';
50
+ export * from './updateTunnelProfileRequestBodyEmail.js';
51
+ export * from './usageDayResource.js';
52
+ export * from './usageResource.js';
53
+ export * from './usageResourceQuotaExceededAt.js';
54
+ export * from './usageSeriesResource.js';
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export * from './actOnTunnelRequestBody.js';
26
+ export * from './actOnTunnelRequestBodyAction.js';
27
+ export * from './changeTunnelPlanRequestBody.js';
28
+ export * from './error.js';
29
+ export * from './errorMeta.js';
30
+ export * from './lengthAwarePageOperationLogResource.js';
31
+ export * from './listTunnelOperationLogsParams.js';
32
+ export * from './listTunnelUsageSeriesParams.js';
33
+ export * from './openTunnelRequestBody.js';
34
+ export * from './operationLogResource.js';
35
+ export * from './operationLogResourceActor.js';
36
+ export * from './operationLogResourcePayload.js';
37
+ export * from './subscriptionResource.js';
38
+ export * from './subscriptionResourceStatus.js';
39
+ export * from './tunnelPlanListResponseBody.js';
40
+ export * from './tunnelPlanResource.js';
41
+ export * from './tunnelResource.js';
42
+ export * from './tunnelResourceEmail.js';
43
+ export * from './tunnelResourceFailure.js';
44
+ export * from './tunnelResourceStatus.js';
45
+ export * from './tunnelResourceSubscriptionStatus.js';
46
+ export * from './tunnelResourceSuspendedAt.js';
47
+ export * from './tunnelUsageSnapshot.js';
48
+ export * from './tunnelUsageSnapshotSyncedAt.js';
49
+ export * from './updateTunnelProfileRequestBody.js';
50
+ export * from './updateTunnelProfileRequestBodyEmail.js';
51
+ export * from './usageDayResource.js';
52
+ export * from './usageResource.js';
53
+ export * from './usageResourceQuotaExceededAt.js';
54
+ export * from './usageSeriesResource.js';
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ import type { OperationLogResource } from './operationLogResource.js';
26
+ export interface LengthAwarePageOperationLogResource {
27
+ /** 这一页的内容 */
28
+ items: OperationLogResource[];
29
+ /** 这一页最多几条,回显请求里的值 */
30
+ limit: number;
31
+ /** 跳过了多少条,回显请求里的值 */
32
+ offset: number;
33
+ /** 命中的总条数,不只是这一页 */
34
+ total: number;
35
+ }
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export type ListTunnelOperationLogsParams = {
26
+ /**
27
+ * 这一页最多返回多少条
28
+ * @minimum 1
29
+ * @maximum 200
30
+ */
31
+ limit?: number;
32
+ /**
33
+ * 跳过多少条。要翻得更深请改用游标翻页的接口
34
+ * @minimum 0
35
+ * @maximum 10000
36
+ */
37
+ offset?: number;
38
+ /**
39
+ * 只看某一种操作,取值是接口的 operation id,比如 open-tunnel
40
+ * @maxLength 128
41
+ */
42
+ action?: string;
43
+ };
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export {};
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export type ListTunnelUsageSeriesParams = {
26
+ /**
27
+ * 取最近多少天,0 表示用上游的默认值(30)。上游只接受 1–365,超出会被它夹住
28
+ * @minimum 0
29
+ * @maximum 3650
30
+ */
31
+ days?: number;
32
+ };
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export {};
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export interface OpenTunnelRequestBody {
26
+ /**
27
+ * 这条隧道的名字,只影响显示
28
+ * @maxLength 128
29
+ */
30
+ display_name: string;
31
+ /**
32
+ * 转发给上游面板的联系邮箱,可留空
33
+ * @maxLength 255
34
+ */
35
+ email?: string;
36
+ /** 套餐 id,取自 GET /plans */
37
+ plan_id: string;
38
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Generated by orval v7.21.0 🍺
3
+ * Do not edit manually.
4
+ * Leaflow 隧道用户 API
5
+ * Leaflow 隧道的用户接口,用于开通与管理项目的加速隧道、订阅地址和流量用量。
6
+
7
+ ## 身份与鉴权
8
+
9
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
10
+
11
+ **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
12
+
13
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`TOKEN_MISSING` 表示没带令牌;`TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
14
+
15
+ ## 通用约定
16
+
17
+ - **一个项目一条隧道。** 所以路径是单数的 `/tunnel`,不带 id。已经有一条时再开通会被拒绝(`TUNNEL_ALREADY_OPEN`)。
18
+ - **订阅地址是凭据。** 它等同于密码,只由 `GET /tunnel/subscription` 单独返回,不出现在隧道详情或任何列表里。怀疑泄露时用重置接口,它会让已分发的每一份订阅立即失效。
19
+ - **停用不是退订。** 停用保留端口和订阅地址,重新启用后原样回来;退订不可逆,重新开通得到的是全新的地址。
20
+ - **判断超额只看 `billed_bytes`。** 线路可以设置倍率(如 1.5× 或 0×),`raw_bytes` 是实际传输量,两者不一定相等。
21
+ - **用量最多滞后一个采集周期。** 适合用量管控,不适合作为计费结算依据。隧道详情里那份还额外经过一层缓存,`usage.synced_at` 说明它有多旧。
22
+ - **换套餐不是瞬时的。** 多出来的线路马上可用,少掉的那些有宽限期,到期才真正释放。
23
+ * OpenAPI spec version: 1.0.0
24
+ */
25
+ export {};