weflayr 0.23.0 → 0.26.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 (225) hide show
  1. package/README.md +2 -2
  2. package/dist/{api → src/api}/generated/facade.gen.d.ts +163 -12
  3. package/dist/{api → src/api}/generated/facade.gen.js +10 -2
  4. package/dist/src/api/generated/index.d.ts +2 -0
  5. package/dist/{api → src/api}/generated/index.js +9 -1
  6. package/dist/{api → src/api}/generated/sdk.gen.d.ts +35 -3
  7. package/dist/{api → src/api}/generated/sdk.gen.js +88 -4
  8. package/{src/api/generated/types.gen.ts → dist/src/api/generated/types.gen.d.ts} +692 -116
  9. package/dist/{api → src/api}/makeEndpoint.js +1 -3
  10. package/dist/src/auto-instrument.d.ts +42 -0
  11. package/dist/src/auto-instrument.js +156 -0
  12. package/dist/src/index.d.ts +9 -0
  13. package/dist/src/index.js +49 -0
  14. package/dist/src/instrumentation/anthropic/get_cache_and_reasoning_telemetry.d.ts +20 -0
  15. package/dist/src/instrumentation/anthropic/get_cache_and_reasoning_telemetry.js +114 -0
  16. package/dist/src/instrumentation/anthropic/get_cache_config_telemetry.d.ts +28 -0
  17. package/dist/src/instrumentation/anthropic/get_cache_config_telemetry.js +92 -0
  18. package/dist/src/instrumentation/anthropic/get_streaming_accumulation_telemetry.d.ts +25 -0
  19. package/dist/src/instrumentation/anthropic/get_streaming_accumulation_telemetry.js +141 -0
  20. package/dist/src/instrumentation/anthropic/get_structured_output_schema_telemetry.d.ts +9 -0
  21. package/dist/src/instrumentation/anthropic/get_structured_output_schema_telemetry.js +17 -0
  22. package/dist/src/instrumentation/anthropic/get_tool_definitions_telemetry.d.ts +15 -0
  23. package/dist/src/instrumentation/anthropic/get_tool_definitions_telemetry.js +50 -0
  24. package/dist/src/instrumentation/anthropic/set_telemetry_attributes.d.ts +15 -0
  25. package/dist/src/instrumentation/anthropic/set_telemetry_attributes.js +39 -0
  26. package/dist/src/instrumentation/bedrock/get_cache_config_telemetry.d.ts +22 -0
  27. package/dist/src/instrumentation/bedrock/get_cache_config_telemetry.js +97 -0
  28. package/dist/src/instrumentation/bedrock/get_cache_telemetry.d.ts +22 -0
  29. package/dist/src/instrumentation/bedrock/get_cache_telemetry.js +102 -0
  30. package/dist/src/instrumentation/bedrock/get_input_message_content_telemetry.d.ts +15 -0
  31. package/dist/src/instrumentation/bedrock/get_input_message_content_telemetry.js +91 -0
  32. package/dist/src/instrumentation/bedrock/get_model_id_telemetry.d.ts +21 -0
  33. package/dist/src/instrumentation/bedrock/get_model_id_telemetry.js +54 -0
  34. package/dist/src/instrumentation/bedrock/get_reasoning_output_telemetry.d.ts +19 -0
  35. package/dist/src/instrumentation/bedrock/get_reasoning_output_telemetry.js +81 -0
  36. package/dist/src/instrumentation/bedrock/get_streaming_output_message_telemetry.d.ts +27 -0
  37. package/dist/src/instrumentation/bedrock/get_streaming_output_message_telemetry.js +126 -0
  38. package/dist/src/instrumentation/bedrock/get_tool_call_output_telemetry.d.ts +17 -0
  39. package/dist/src/instrumentation/bedrock/get_tool_call_output_telemetry.js +85 -0
  40. package/dist/src/instrumentation/bedrock/get_tool_definitions_telemetry.d.ts +15 -0
  41. package/dist/src/instrumentation/bedrock/get_tool_definitions_telemetry.js +68 -0
  42. package/dist/src/instrumentation/bedrock/set_telemetry_attributes.d.ts +18 -0
  43. package/dist/src/instrumentation/bedrock/set_telemetry_attributes.js +47 -0
  44. package/dist/src/instrumentation/cohere/get_chat_telemetry.d.ts +23 -0
  45. package/dist/src/instrumentation/cohere/get_chat_telemetry.js +77 -0
  46. package/dist/src/instrumentation/cohere/get_embeddings_telemetry.d.ts +18 -0
  47. package/dist/src/instrumentation/cohere/get_embeddings_telemetry.js +88 -0
  48. package/dist/src/instrumentation/cohere/get_structured_output_schema_telemetry.d.ts +12 -0
  49. package/dist/src/instrumentation/cohere/get_structured_output_schema_telemetry.js +18 -0
  50. package/dist/src/instrumentation/cohere/get_tool_call_output_telemetry.d.ts +31 -0
  51. package/dist/src/instrumentation/cohere/get_tool_call_output_telemetry.js +106 -0
  52. package/dist/src/instrumentation/cohere/get_tool_definitions_telemetry.d.ts +27 -0
  53. package/dist/src/instrumentation/cohere/get_tool_definitions_telemetry.js +75 -0
  54. package/dist/src/instrumentation/cohere/set_telemetry_attributes.d.ts +17 -0
  55. package/dist/src/instrumentation/cohere/set_telemetry_attributes.js +44 -0
  56. package/dist/src/instrumentation/elevenlabs/full_instrumentation.d.ts +28 -0
  57. package/dist/src/instrumentation/elevenlabs/full_instrumentation.js +209 -0
  58. package/dist/src/instrumentation/google/get_audio_telemetry.d.ts +9 -0
  59. package/dist/src/instrumentation/google/get_audio_telemetry.js +28 -0
  60. package/dist/src/instrumentation/google/get_cache_operations_telemetry.d.ts +23 -0
  61. package/dist/src/instrumentation/google/get_cache_operations_telemetry.js +154 -0
  62. package/dist/src/instrumentation/google/get_cache_telemetry.d.ts +16 -0
  63. package/dist/src/instrumentation/google/get_cache_telemetry.js +38 -0
  64. package/dist/src/instrumentation/google/get_embeddings_telemetry.d.ts +12 -0
  65. package/dist/src/instrumentation/google/get_embeddings_telemetry.js +85 -0
  66. package/dist/src/instrumentation/google/get_provider_name.d.ts +11 -0
  67. package/{src → dist/src}/instrumentation/google/get_provider_name.js +11 -12
  68. package/{src/instrumentation/google/get_reasoning_telemetry.js → dist/src/instrumentation/google/get_reasoning_telemetry.d.ts} +1 -11
  69. package/dist/src/instrumentation/google/get_reasoning_telemetry.js +21 -0
  70. package/dist/src/instrumentation/google/get_structured_output_schema_telemetry.d.ts +12 -0
  71. package/dist/src/instrumentation/google/get_structured_output_schema_telemetry.js +19 -0
  72. package/dist/src/instrumentation/google/set_telemetry_attributes.d.ts +18 -0
  73. package/dist/src/instrumentation/google/set_telemetry_attributes.js +98 -0
  74. package/dist/src/instrumentation/openai/get_audio_telemetry.d.ts +25 -0
  75. package/dist/src/instrumentation/openai/get_audio_telemetry.js +123 -0
  76. package/dist/src/instrumentation/openai/get_bedrock_mantle_telemetry.d.ts +35 -0
  77. package/dist/src/instrumentation/openai/get_bedrock_mantle_telemetry.js +148 -0
  78. package/dist/src/instrumentation/openai/get_cache_and_reasoning_telemetry.d.ts +27 -0
  79. package/dist/src/instrumentation/openai/get_cache_and_reasoning_telemetry.js +72 -0
  80. package/dist/src/instrumentation/openai/get_cache_config_telemetry.d.ts +28 -0
  81. package/dist/src/instrumentation/openai/get_cache_config_telemetry.js +91 -0
  82. package/dist/src/instrumentation/openai/get_embeddings_telemetry.d.ts +18 -0
  83. package/dist/src/instrumentation/openai/get_embeddings_telemetry.js +86 -0
  84. package/dist/src/instrumentation/openai/get_streaming_usage.d.ts +21 -0
  85. package/dist/src/instrumentation/openai/get_streaming_usage.js +74 -0
  86. package/dist/src/instrumentation/openai/get_structured_output_schema_telemetry.d.ts +12 -0
  87. package/dist/src/instrumentation/openai/get_structured_output_schema_telemetry.js +20 -0
  88. package/dist/src/instrumentation/openai/set_telemetry_attributes.d.ts +17 -0
  89. package/dist/src/instrumentation/openai/set_telemetry_attributes.js +47 -0
  90. package/dist/src/instrumentation/shared/get_structured_output_schema_telemetry.d.ts +35 -0
  91. package/dist/src/instrumentation/shared/get_structured_output_schema_telemetry.js +76 -0
  92. package/dist/src/instrumentation/vercel/full_instrumentation.d.ts +3 -0
  93. package/dist/src/instrumentation/vercel/full_instrumentation.js +54 -0
  94. package/dist/src/instrumentation/vercel/get_cache_creation_telemetry.d.ts +22 -0
  95. package/dist/src/instrumentation/vercel/get_cache_creation_telemetry.js +66 -0
  96. package/dist/src/instrumentation/vercel/get_structured_output_schema_telemetry.d.ts +24 -0
  97. package/dist/src/instrumentation/vercel/get_structured_output_schema_telemetry.js +84 -0
  98. package/dist/src/logger.d.ts +1 -0
  99. package/dist/src/logger.js +6 -0
  100. package/dist/src/otel/exporter.d.ts +19 -0
  101. package/dist/src/otel/exporter.js +94 -0
  102. package/dist/src/otel/propagation.d.ts +46 -0
  103. package/dist/src/otel/propagation.js +110 -0
  104. package/dist/src/otel/span-filter.d.ts +3 -0
  105. package/dist/src/otel/span-filter.js +61 -0
  106. package/dist/src/otel/span-processor.d.ts +55 -0
  107. package/dist/src/otel/span-processor.js +169 -0
  108. package/dist/src/otel/vercel-ai-sdk-span-filter.d.ts +12 -0
  109. package/dist/src/otel/vercel-ai-sdk-span-filter.js +88 -0
  110. package/dist/src/setup.d.ts +50 -0
  111. package/dist/src/setup.js +155 -0
  112. package/package.json +11 -5
  113. package/.prettierignore +0 -2
  114. package/.prettierrc.json +0 -7
  115. package/LICENSE-MIT +0 -21
  116. package/NOTICE +0 -12
  117. package/dist/api/generated/index.d.ts +0 -2
  118. package/dist/api/generated/types.gen.d.ts +0 -749
  119. package/eslint.config.mjs +0 -36
  120. package/index.d.ts +0 -167
  121. package/openapi-ts.config.mjs +0 -9
  122. package/scripts/generate_facade.mjs +0 -86
  123. package/src/api/caseConversion.ts +0 -58
  124. package/src/api/generated/client/client.gen.ts +0 -277
  125. package/src/api/generated/client/index.ts +0 -27
  126. package/src/api/generated/client/types.gen.ts +0 -218
  127. package/src/api/generated/client/utils.gen.ts +0 -316
  128. package/src/api/generated/client.gen.ts +0 -16
  129. package/src/api/generated/core/auth.gen.ts +0 -48
  130. package/src/api/generated/core/bodySerializer.gen.ts +0 -82
  131. package/src/api/generated/core/params.gen.ts +0 -178
  132. package/src/api/generated/core/pathSerializer.gen.ts +0 -171
  133. package/src/api/generated/core/queryKeySerializer.gen.ts +0 -117
  134. package/src/api/generated/core/serverSentEvents.gen.ts +0 -242
  135. package/src/api/generated/core/types.gen.ts +0 -110
  136. package/src/api/generated/core/utils.gen.ts +0 -140
  137. package/src/api/generated/facade.gen.ts +0 -68
  138. package/src/api/generated/index.ts +0 -4
  139. package/src/api/generated/sdk.gen.ts +0 -121
  140. package/src/api/index.ts +0 -45
  141. package/src/api/makeEndpoint.ts +0 -54
  142. package/src/auto-instrument.js +0 -171
  143. package/src/index.js +0 -19
  144. package/src/instrumentation/anthropic/get_cache_and_reasoning_telemetry.js +0 -107
  145. package/src/instrumentation/anthropic/get_streaming_stop_reason_telemetry.js +0 -121
  146. package/src/instrumentation/anthropic/get_tool_definitions_telemetry.js +0 -50
  147. package/src/instrumentation/anthropic/set_telemetry_attributes.js +0 -37
  148. package/src/instrumentation/bedrock/get_cache_telemetry.js +0 -104
  149. package/src/instrumentation/bedrock/get_input_message_content_telemetry.js +0 -94
  150. package/src/instrumentation/bedrock/get_streaming_output_message_telemetry.js +0 -87
  151. package/src/instrumentation/bedrock/set_telemetry_attributes.js +0 -36
  152. package/src/instrumentation/cohere/get_chat_telemetry.js +0 -88
  153. package/src/instrumentation/cohere/get_embeddings_telemetry.js +0 -107
  154. package/src/instrumentation/cohere/set_telemetry_attributes.js +0 -32
  155. package/src/instrumentation/elevenlabs/full_instrumentation.js +0 -236
  156. package/src/instrumentation/google/get_audio_telemetry.js +0 -30
  157. package/src/instrumentation/google/get_cache_telemetry.js +0 -25
  158. package/src/instrumentation/google/get_embeddings_telemetry.js +0 -99
  159. package/src/instrumentation/google/set_telemetry_attributes.js +0 -98
  160. package/src/instrumentation/openai/get_audio_telemetry.js +0 -149
  161. package/src/instrumentation/openai/get_cache_and_reasoning_telemetry.js +0 -71
  162. package/src/instrumentation/openai/get_embeddings_telemetry.js +0 -107
  163. package/src/instrumentation/openai/get_streaming_usage.js +0 -81
  164. package/src/instrumentation/openai/set_telemetry_attributes.js +0 -39
  165. package/src/instrumentation/vercel/full_instrumentation.js +0 -44
  166. package/src/logger.js +0 -8
  167. package/src/otel/exporter.js +0 -108
  168. package/src/otel/propagation.js +0 -133
  169. package/src/otel/span-filter.js +0 -69
  170. package/src/otel/span-processor.js +0 -162
  171. package/src/otel/vercel-ai-sdk-span-filter.js +0 -79
  172. package/src/setup.js +0 -167
  173. package/tests/api/index.test.js +0 -437
  174. package/tests/index.test.js +0 -824
  175. package/tests/instrumentation/anthropic/get_cache_and_reasoning_telemetry.test.js +0 -158
  176. package/tests/instrumentation/anthropic/get_streaming_stop_reason_telemetry.test.js +0 -117
  177. package/tests/instrumentation/anthropic/get_tool_definitions_telemetry.test.js +0 -82
  178. package/tests/instrumentation/bedrock/get_cache_telemetry.test.js +0 -102
  179. package/tests/instrumentation/bedrock/get_input_message_content_telemetry.test.js +0 -89
  180. package/tests/instrumentation/bedrock/get_streaming_output_message_telemetry.test.js +0 -87
  181. package/tests/instrumentation/cohere/get_chat_telemetry.test.js +0 -148
  182. package/tests/instrumentation/cohere/get_embeddings_telemetry.test.js +0 -132
  183. package/tests/instrumentation/elevenlabs/full_instrumentation.test.js +0 -258
  184. package/tests/instrumentation/google/get_embeddings_telemetry.test.js +0 -128
  185. package/tests/instrumentation/google/get_reasoning_telemetry.test.js +0 -41
  186. package/tests/instrumentation/google/set_telemetry_attributes.test.js +0 -219
  187. package/tests/instrumentation/openai/get_audio_telemetry.test.js +0 -170
  188. package/tests/instrumentation/openai/get_cache_and_reasoning_telemetry.test.js +0 -83
  189. package/tests/instrumentation/openai/get_embeddings_telemetry.test.js +0 -145
  190. package/tests/instrumentation/openai/get_streaming_usage.test.js +0 -105
  191. package/tests/instrumentation/vercel/full_instrumentation.test.js +0 -16
  192. package/tests/otel/vercel-ai-sdk-span-filter.test.js +0 -159
  193. package/tsconfig.json +0 -18
  194. /package/dist/{api → src/api}/caseConversion.d.ts +0 -0
  195. /package/dist/{api → src/api}/caseConversion.js +0 -0
  196. /package/dist/{api → src/api}/generated/client/client.gen.d.ts +0 -0
  197. /package/dist/{api → src/api}/generated/client/client.gen.js +0 -0
  198. /package/dist/{api → src/api}/generated/client/index.d.ts +0 -0
  199. /package/dist/{api → src/api}/generated/client/index.js +0 -0
  200. /package/dist/{api → src/api}/generated/client/types.gen.d.ts +0 -0
  201. /package/dist/{api → src/api}/generated/client/types.gen.js +0 -0
  202. /package/dist/{api → src/api}/generated/client/utils.gen.d.ts +0 -0
  203. /package/dist/{api → src/api}/generated/client/utils.gen.js +0 -0
  204. /package/dist/{api → src/api}/generated/client.gen.d.ts +0 -0
  205. /package/dist/{api → src/api}/generated/client.gen.js +0 -0
  206. /package/dist/{api → src/api}/generated/core/auth.gen.d.ts +0 -0
  207. /package/dist/{api → src/api}/generated/core/auth.gen.js +0 -0
  208. /package/dist/{api → src/api}/generated/core/bodySerializer.gen.d.ts +0 -0
  209. /package/dist/{api → src/api}/generated/core/bodySerializer.gen.js +0 -0
  210. /package/dist/{api → src/api}/generated/core/params.gen.d.ts +0 -0
  211. /package/dist/{api → src/api}/generated/core/params.gen.js +0 -0
  212. /package/dist/{api → src/api}/generated/core/pathSerializer.gen.d.ts +0 -0
  213. /package/dist/{api → src/api}/generated/core/pathSerializer.gen.js +0 -0
  214. /package/dist/{api → src/api}/generated/core/queryKeySerializer.gen.d.ts +0 -0
  215. /package/dist/{api → src/api}/generated/core/queryKeySerializer.gen.js +0 -0
  216. /package/dist/{api → src/api}/generated/core/serverSentEvents.gen.d.ts +0 -0
  217. /package/dist/{api → src/api}/generated/core/serverSentEvents.gen.js +0 -0
  218. /package/dist/{api → src/api}/generated/core/types.gen.d.ts +0 -0
  219. /package/dist/{api → src/api}/generated/core/types.gen.js +0 -0
  220. /package/dist/{api → src/api}/generated/core/utils.gen.d.ts +0 -0
  221. /package/dist/{api → src/api}/generated/core/utils.gen.js +0 -0
  222. /package/dist/{api → src/api}/generated/types.gen.js +0 -0
  223. /package/dist/{api → src/api}/index.d.ts +0 -0
  224. /package/dist/{api → src/api}/index.js +0 -0
  225. /package/dist/{api → src/api}/makeEndpoint.d.ts +0 -0
@@ -1,9 +1,6 @@
1
- // This file is auto-generated by @hey-api/openapi-ts
2
-
3
1
  export type ClientOptions = {
4
2
  baseUrl: 'https://app.weflayr.com/api' | (string & {});
5
3
  };
6
-
7
4
  /**
8
5
  * AllCustomerTagsOutput
9
6
  *
@@ -23,7 +20,6 @@ export type AllCustomerTagsOutput = {
23
20
  */
24
21
  has_more: boolean;
25
22
  };
26
-
27
23
  /**
28
24
  * ApiErrorOutput
29
25
  *
@@ -35,39 +31,178 @@ export type ApiErrorOutput = {
35
31
  */
36
32
  error: string;
37
33
  };
38
-
39
34
  /**
40
- * CustomerMarginRow
35
+ * CostRow
41
36
  *
42
- * One customer's gross margin for a period.
37
+ * One bucket (and, if group_by is set, one dimension value)'s cost for the
38
+ * period, plus the average and max cost of the feature runs it contains.
39
+ *
40
+ * Only the field named by the request's group_by is set (e.g. ``customer``
41
+ * when group_by="customer"); the other three are omitted from the response,
42
+ * not sent as null (see :meth:`CostsOutput.model_dump`).
43
43
  */
44
- export type CustomerMarginRow = {
44
+ export type CostRow = {
45
45
  /**
46
- * Customer Name
46
+ * Date From
47
47
  */
48
- customer_name: string;
48
+ date_from: string;
49
49
  /**
50
- * Revenue
50
+ * Date To
51
51
  */
52
- revenue: number;
52
+ date_to: string;
53
+ /**
54
+ * Customer
55
+ */
56
+ customer?: string | null;
57
+ /**
58
+ * Feature
59
+ */
60
+ feature?: string | null;
61
+ /**
62
+ * Model
63
+ */
64
+ model?: string | null;
65
+ /**
66
+ * Provider
67
+ */
68
+ provider?: string | null;
53
69
  /**
54
70
  * Cost
55
71
  */
56
72
  cost: number;
57
73
  /**
58
- * Margin
74
+ * Avg Feature Run Cost
59
75
  */
60
- margin: number;
76
+ avg_feature_run_cost: number;
61
77
  /**
62
- * Margin Pct
78
+ * Max Feature Run Cost
63
79
  */
64
- margin_pct: number | null;
80
+ max_feature_run_cost: number;
81
+ };
82
+ /**
83
+ * CostsInput
84
+ *
85
+ * The costs list: date range, aggregate, group_by, the simple filters,
86
+ * plus customer_tags/run_tags (each key's value is a list, or a single
87
+ * value for one tag).
88
+ */
89
+ export type CostsInput = {
90
+ /**
91
+ * Date From
92
+ *
93
+ * Start of the period (inclusive).
94
+ */
95
+ date_from: string;
96
+ /**
97
+ * Date To
98
+ *
99
+ * End of the period (inclusive). Defaults to today.
100
+ */
101
+ date_to?: string;
65
102
  /**
66
- * Profitability Status
103
+ * Apply Credits
104
+ *
105
+ * Apply free-credit discounts to cost. Never applied to avg_feature_run_cost/max_feature_run_cost, which always report gross cost. Defaults to false.
106
+ */
107
+ apply_credits?: boolean;
108
+ /**
109
+ * Aggregate
110
+ *
111
+ * One row per period; "all" collapses the whole date range into a single row (per group_by, if set).
112
+ */
113
+ aggregate?: 'day' | 'week' | 'month' | 'quarter' | 'year' | 'all';
114
+ /**
115
+ * Group By
116
+ *
117
+ * Split each period into one row per dimension value. Omit for one row per period.
118
+ */
119
+ group_by?: 'customer' | 'feature' | 'model' | 'provider' | null;
120
+ /**
121
+ * Customers
122
+ *
123
+ * Restrict to these customers. Omit for every customer's.
124
+ */
125
+ customers?: Array<string>;
126
+ /**
127
+ * Features
128
+ *
129
+ * Restrict to these feature tags. Omit for every feature's.
130
+ */
131
+ features?: Array<string>;
132
+ /**
133
+ * Models
134
+ *
135
+ * Restrict to these models. Omit for every model's.
136
+ */
137
+ models?: Array<string>;
138
+ /**
139
+ * Providers
140
+ *
141
+ * Restrict to these providers. Omit for every provider's.
142
+ */
143
+ providers?: Array<string>;
144
+ /**
145
+ * Cursor
146
+ */
147
+ cursor?: string | null;
148
+ /**
149
+ * Limit
150
+ */
151
+ limit?: number;
152
+ /**
153
+ * Customer Tags
154
+ *
155
+ * Restrict to customers carrying these tags (AND across keys, OR within a key's values).
67
156
  */
68
- profitability_status: 'healthy' | 'watch' | 'at_risk' | 'unprofitable' | 'unknown';
157
+ customer_tags?: {
158
+ [key: string]: Array<string>;
159
+ };
160
+ /**
161
+ * Run Tags
162
+ *
163
+ * Restrict to runs carrying these tags (AND across keys, OR within a key's values).
164
+ */
165
+ run_tags?: {
166
+ [key: string]: Array<string>;
167
+ };
168
+ };
169
+ /**
170
+ * CostsOutput
171
+ *
172
+ * A costs POST response: one row per (bucket, group_by value) actually
173
+ * present in the data, ordered by period then group ascending.
174
+ */
175
+ export type CostsOutput = {
176
+ /**
177
+ * Rows
178
+ */
179
+ rows: Array<CostRow>;
180
+ /**
181
+ * Next Cursor
182
+ */
183
+ next_cursor: string | null;
184
+ /**
185
+ * Has More
186
+ */
187
+ has_more: boolean;
188
+ };
189
+ /**
190
+ * CustomerOutput
191
+ *
192
+ * One customer, with its tags when requested (an empty dict otherwise).
193
+ */
194
+ export type CustomerOutput = {
195
+ /**
196
+ * Customer Name
197
+ */
198
+ customer_name: string;
199
+ /**
200
+ * Customer Tags
201
+ */
202
+ customer_tags: {
203
+ [key: string]: string;
204
+ };
69
205
  };
70
-
71
206
  /**
72
207
  * CustomerTags
73
208
  *
@@ -85,7 +220,6 @@ export type CustomerTags = {
85
220
  [key: string]: string | null;
86
221
  };
87
222
  };
88
-
89
223
  /**
90
224
  * CustomerTagsOutput
91
225
  *
@@ -103,7 +237,25 @@ export type CustomerTagsOutput = {
103
237
  [key: string]: string;
104
238
  };
105
239
  };
106
-
240
+ /**
241
+ * CustomersOutput
242
+ *
243
+ * The customers GET response: every known customer of the project.
244
+ */
245
+ export type CustomersOutput = {
246
+ /**
247
+ * Customers
248
+ */
249
+ customers: Array<CustomerOutput>;
250
+ /**
251
+ * Next Cursor
252
+ */
253
+ next_cursor: string | null;
254
+ /**
255
+ * Has More
256
+ */
257
+ has_more: boolean;
258
+ };
107
259
  /**
108
260
  * CustomersUpdatedOutput
109
261
  *
@@ -119,7 +271,17 @@ export type CustomersUpdatedOutput = {
119
271
  */
120
272
  customers_updated: number;
121
273
  };
122
-
274
+ /**
275
+ * FeaturesOutput
276
+ *
277
+ * A features GET response: every distinct feature tag seen for the project.
278
+ */
279
+ export type FeaturesOutput = {
280
+ /**
281
+ * Features
282
+ */
283
+ features: Array<string>;
284
+ };
123
285
  /**
124
286
  * InvalidFieldDetail
125
287
  *
@@ -135,7 +297,6 @@ export type InvalidFieldDetail = {
135
297
  */
136
298
  error: string;
137
299
  };
138
-
139
300
  /**
140
301
  * InvalidPayloadOutput
141
302
  *
@@ -151,7 +312,6 @@ export type InvalidPayloadOutput = {
151
312
  */
152
313
  detail: Array<InvalidFieldDetail>;
153
314
  };
154
-
155
315
  /**
156
316
  * KeyMetricOutput
157
317
  *
@@ -171,7 +331,6 @@ export type KeyMetricOutput = {
171
331
  */
172
332
  has_more: boolean;
173
333
  };
174
-
175
334
  /**
176
335
  * KeyMetricRow
177
336
  *
@@ -211,7 +370,6 @@ export type KeyMetricRow = {
211
370
  */
212
371
  month_end?: string | null;
213
372
  };
214
-
215
373
  /**
216
374
  * KeyMetricRowOutput
217
375
  *
@@ -243,18 +401,233 @@ export type KeyMetricRowOutput = {
243
401
  */
244
402
  user_name: string;
245
403
  };
246
-
247
404
  /**
248
- * MarginListOutput
405
+ * KeyMetricValue
406
+ *
407
+ * One key metric's value for a row: its value over the period, the row's
408
+ * total cost, and cost per unit (total_cost divided by value).
409
+ */
410
+ export type KeyMetricValue = {
411
+ /**
412
+ * Value
413
+ */
414
+ value: number;
415
+ /**
416
+ * Total Cost
417
+ */
418
+ total_cost: number;
419
+ /**
420
+ * Cost Per Unit
421
+ */
422
+ cost_per_unit: number;
423
+ };
424
+ /**
425
+ * MarginInput
426
+ *
427
+ * The margin list: date range, aggregate, optional group_by=customer, and
428
+ * apply_credits. Only available for revenue-linked projects.
429
+ */
430
+ export type MarginInput = {
431
+ /**
432
+ * Date From
433
+ *
434
+ * Start of the period (inclusive).
435
+ */
436
+ date_from: string;
437
+ /**
438
+ * Date To
439
+ *
440
+ * End of the period (inclusive). Defaults to today.
441
+ */
442
+ date_to?: string;
443
+ /**
444
+ * Apply Credits
445
+ *
446
+ * Apply free-credit discounts to cost. Defaults to false.
447
+ */
448
+ apply_credits?: boolean;
449
+ /**
450
+ * Aggregate
451
+ *
452
+ * One row per period; "all" collapses the whole date range into a single row (per group_by, if set).
453
+ */
454
+ aggregate?: 'day' | 'week' | 'month' | 'quarter' | 'year' | 'all';
455
+ /**
456
+ * Group By
457
+ *
458
+ * Split each period into one row per customer. Omit for one row per period.
459
+ */
460
+ group_by?: 'customer' | null;
461
+ /**
462
+ * Customers
463
+ *
464
+ * Restrict to these customers. Omit for every customer's.
465
+ */
466
+ customers?: Array<string>;
467
+ /**
468
+ * Filter Customers Based On Features
469
+ *
470
+ * Restrict to customers who used any of these feature tags in the period. Unlike features filters on other routes, this narrows which customers appear rather than restricting the cost computation itself — a qualifying customer's full cost and revenue are still shown.
471
+ */
472
+ filter_customers_based_on_features?: Array<string>;
473
+ /**
474
+ * Cursor
475
+ */
476
+ cursor?: string | null;
477
+ /**
478
+ * Limit
479
+ */
480
+ limit?: number;
481
+ };
482
+ /**
483
+ * MarginOutput
484
+ *
485
+ * A margin POST response: one row per (bucket, customer) actually present
486
+ * in the data, ordered by period then customer ascending.
487
+ */
488
+ export type MarginOutput = {
489
+ /**
490
+ * Rows
491
+ */
492
+ rows: Array<MarginRow>;
493
+ /**
494
+ * Next Cursor
495
+ */
496
+ next_cursor: string | null;
497
+ /**
498
+ * Has More
499
+ */
500
+ has_more: boolean;
501
+ };
502
+ /**
503
+ * MarginRow
504
+ *
505
+ * One bucket (and, if group_by="customer", one customer)'s margin for the
506
+ * period. ``customer`` is only present when group_by="customer".
507
+ */
508
+ export type MarginRow = {
509
+ /**
510
+ * Date From
511
+ */
512
+ date_from: string;
513
+ /**
514
+ * Date To
515
+ */
516
+ date_to: string;
517
+ /**
518
+ * Customer
519
+ */
520
+ customer?: string | null;
521
+ /**
522
+ * Revenue
523
+ */
524
+ revenue: number;
525
+ /**
526
+ * Cost
527
+ */
528
+ cost: number;
529
+ /**
530
+ * Margin
531
+ */
532
+ margin: number;
533
+ /**
534
+ * Margin Pct
535
+ */
536
+ margin_pct: number | null;
537
+ /**
538
+ * Risk Status
539
+ */
540
+ risk_status: 'healthy' | 'watch' | 'at_risk' | 'unprofitable' | 'unknown';
541
+ };
542
+ /**
543
+ * ModelsOutput
544
+ *
545
+ * A models GET response: every distinct model name seen for the project.
546
+ */
547
+ export type ModelsOutput = {
548
+ /**
549
+ * Models
550
+ */
551
+ models: Array<string>;
552
+ };
553
+ /**
554
+ * PerformanceInput
555
+ *
556
+ * The performance list: date range, aggregate, optional group_by=user, the
557
+ * users filter, plus user_tags (each key's value is a list, or a single
558
+ * value for one tag). Only available for internal-metric projects.
559
+ */
560
+ export type PerformanceInput = {
561
+ /**
562
+ * Date From
563
+ *
564
+ * Start of the period (inclusive).
565
+ */
566
+ date_from: string;
567
+ /**
568
+ * Date To
569
+ *
570
+ * End of the period (inclusive). Defaults to today.
571
+ */
572
+ date_to?: string;
573
+ /**
574
+ * Apply Credits
575
+ *
576
+ * Apply free-credit discounts to cost. Defaults to false.
577
+ */
578
+ apply_credits?: boolean;
579
+ /**
580
+ * Aggregate
581
+ *
582
+ * One row per period; "all" collapses the whole date range into a single row (per group_by, if set).
583
+ */
584
+ aggregate?: 'day' | 'week' | 'month' | 'quarter' | 'year' | 'all';
585
+ /**
586
+ * Group By
587
+ *
588
+ * Split each period into one row per user. Omit for one row per period.
589
+ */
590
+ group_by?: 'user' | null;
591
+ /**
592
+ * Users
593
+ *
594
+ * Restrict to these users. Omit for every user's.
595
+ */
596
+ users?: Array<string>;
597
+ /**
598
+ * Filter Users Based On Features
599
+ *
600
+ * Restrict to users who used any of these feature tags in the period. Unlike features filters on other routes, this narrows which users appear rather than restricting the cost computation itself. A qualifying user's full cost and key metrics are still shown.
601
+ */
602
+ filter_users_based_on_features?: Array<string>;
603
+ /**
604
+ * Cursor
605
+ */
606
+ cursor?: string | null;
607
+ /**
608
+ * Limit
609
+ */
610
+ limit?: number;
611
+ /**
612
+ * User Tags
613
+ *
614
+ * Restrict to users carrying these tags (AND across keys, OR within a key's values).
615
+ */
616
+ user_tags?: {
617
+ [key: string]: Array<string>;
618
+ };
619
+ };
620
+ /**
621
+ * PerformanceOutput
249
622
  *
250
- * Margin GET response: one row per customer with booked revenue, sorted by
251
- * customer_name ascending.
623
+ * A performance POST response: one row per (bucket, user) actually
624
+ * present in the data, ordered by period then user ascending.
252
625
  */
253
- export type MarginListOutput = {
626
+ export type PerformanceOutput = {
254
627
  /**
255
628
  * Rows
256
629
  */
257
- rows: Array<CustomerMarginRow>;
630
+ rows: Array<PerformanceRow>;
258
631
  /**
259
632
  * Next Cursor
260
633
  */
@@ -264,7 +637,74 @@ export type MarginListOutput = {
264
637
  */
265
638
  has_more: boolean;
266
639
  };
267
-
640
+ /**
641
+ * PerformanceRow
642
+ *
643
+ * One bucket (and, if group_by="user", one user)'s cost and key-metric
644
+ * values for the period. ``user`` is only present when group_by="user".
645
+ */
646
+ export type PerformanceRow = {
647
+ /**
648
+ * Date From
649
+ */
650
+ date_from: string;
651
+ /**
652
+ * Date To
653
+ */
654
+ date_to: string;
655
+ /**
656
+ * User
657
+ */
658
+ user?: string | null;
659
+ /**
660
+ * Cost
661
+ */
662
+ cost: number;
663
+ /**
664
+ * Key Metrics
665
+ */
666
+ key_metrics: {
667
+ [key: string]: KeyMetricValue;
668
+ };
669
+ };
670
+ /**
671
+ * ProjectOutput
672
+ *
673
+ * A project GET response: static identity of the project.
674
+ */
675
+ export type ProjectOutput = {
676
+ /**
677
+ * Name
678
+ */
679
+ name: string;
680
+ /**
681
+ * Project Type
682
+ */
683
+ project_type: 'revenue' | 'internal';
684
+ /**
685
+ * Key Metric Names
686
+ */
687
+ key_metric_names: Array<string>;
688
+ /**
689
+ * Environment
690
+ */
691
+ environment: 'dev' | 'pre-prod' | 'staging' | 'prod';
692
+ /**
693
+ * Created At
694
+ */
695
+ created_at: string;
696
+ };
697
+ /**
698
+ * ProvidersOutput
699
+ *
700
+ * A providers GET response: every distinct provider name seen for the project.
701
+ */
702
+ export type ProvidersOutput = {
703
+ /**
704
+ * Providers
705
+ */
706
+ providers: Array<string>;
707
+ };
268
708
  /**
269
709
  * RevenueOrKeyMetricDeletedRowOutput
270
710
  *
@@ -280,7 +720,6 @@ export type RevenueOrKeyMetricDeletedRowOutput = {
280
720
  */
281
721
  rows_deleted: number;
282
722
  };
283
-
284
723
  /**
285
724
  * RevenueOrKeyMetricImportedRowOutput
286
725
  *
@@ -296,7 +735,6 @@ export type RevenueOrKeyMetricImportedRowOutput = {
296
735
  */
297
736
  rows_inserted: number;
298
737
  };
299
-
300
738
  /**
301
739
  * RevenueOutput
302
740
  *
@@ -316,7 +754,6 @@ export type RevenueOutput = {
316
754
  */
317
755
  has_more: boolean;
318
756
  };
319
-
320
757
  /**
321
758
  * RevenueRow
322
759
  *
@@ -351,7 +788,6 @@ export type RevenueRow = {
351
788
  */
352
789
  month_end?: string | null;
353
790
  };
354
-
355
791
  /**
356
792
  * RevenueRowOutput
357
793
  *
@@ -383,7 +819,6 @@ export type RevenueRowOutput = {
383
819
  */
384
820
  customer_name: string;
385
821
  };
386
-
387
822
  /**
388
823
  * SetCustomerTagsInput
389
824
  *
@@ -401,7 +836,6 @@ export type SetCustomerTagsInput = {
401
836
  */
402
837
  upsert?: boolean;
403
838
  };
404
-
405
839
  /**
406
840
  * SetKeyMetricsInput
407
841
  *
@@ -422,7 +856,6 @@ export type SetKeyMetricsInput = {
422
856
  */
423
857
  upsert?: boolean;
424
858
  };
425
-
426
859
  /**
427
860
  * SetRevenueInput
428
861
  *
@@ -443,7 +876,6 @@ export type SetRevenueInput = {
443
876
  */
444
877
  upsert?: boolean;
445
878
  };
446
-
447
879
  /**
448
880
  * TagsDeletedOutput
449
881
  *
@@ -459,36 +891,57 @@ export type TagsDeletedOutput = {
459
891
  */
460
892
  tags_deleted: number;
461
893
  };
462
-
894
+ /**
895
+ * TagsOutput
896
+ *
897
+ * A tags GET response: facets of every tag dimension seen on the project.
898
+ *
899
+ * Either field is an empty dict when its include_* flag was false.
900
+ */
901
+ export type TagsOutput = {
902
+ /**
903
+ * Run Tags
904
+ */
905
+ run_tags: {
906
+ [key: string]: Array<string>;
907
+ };
908
+ /**
909
+ * Customer Tags
910
+ */
911
+ customer_tags: {
912
+ [key: string]: Array<string>;
913
+ };
914
+ };
915
+ export type GetCostsData = {
916
+ body: CostsInput;
917
+ path?: never;
918
+ query?: never;
919
+ url: '/costs/';
920
+ };
921
+ export type GetCostsErrors = {
922
+ /**
923
+ * Missing or invalid API key.
924
+ */
925
+ 401: ApiErrorOutput;
926
+ /**
927
+ * Invalid payload: every offending field is listed and nothing was written.
928
+ */
929
+ 422: InvalidPayloadOutput;
930
+ };
931
+ export type GetCostsError = GetCostsErrors[keyof GetCostsErrors];
932
+ export type GetCostsResponses = {
933
+ /**
934
+ * Success.
935
+ */
936
+ 200: CostsOutput;
937
+ };
938
+ export type GetCostsResponse = GetCostsResponses[keyof GetCostsResponses];
463
939
  export type GetMarginData = {
464
- body?: never;
940
+ body: MarginInput;
465
941
  path?: never;
466
- query?: {
467
- /**
468
- * Return only these customers' margin. Omit to return every customer's.
469
- */
470
- customer_names?: Array<string>;
471
- /**
472
- * Opaque cursor from a previous page's next_cursor.
473
- */
474
- cursor?: string;
475
- limit?: number;
476
- /**
477
- * Start of the period (inclusive), YYYY-MM-DD. Defaults to 30 days ago.
478
- */
479
- date_from?: string;
480
- /**
481
- * End of the period (inclusive), YYYY-MM-DD. Defaults to today.
482
- */
483
- date_to?: string;
484
- /**
485
- * Apply free-credit discounts to cost. Defaults to false.
486
- */
487
- apply_credits?: boolean;
488
- };
942
+ query?: never;
489
943
  url: '/margin/';
490
944
  };
491
-
492
945
  export type GetMarginErrors = {
493
946
  /**
494
947
  * Invalid request for this project type.
@@ -498,19 +951,19 @@ export type GetMarginErrors = {
498
951
  * Missing or invalid API key.
499
952
  */
500
953
  401: ApiErrorOutput;
954
+ /**
955
+ * Invalid payload: every offending field is listed and nothing was written.
956
+ */
957
+ 422: InvalidPayloadOutput;
501
958
  };
502
-
503
959
  export type GetMarginError = GetMarginErrors[keyof GetMarginErrors];
504
-
505
960
  export type GetMarginResponses = {
506
961
  /**
507
962
  * Success.
508
963
  */
509
- 200: MarginListOutput;
964
+ 200: MarginOutput;
510
965
  };
511
-
512
966
  export type GetMarginResponse = GetMarginResponses[keyof GetMarginResponses];
513
-
514
967
  export type DeleteRevenueData = {
515
968
  body?: never;
516
969
  path?: never;
@@ -530,7 +983,6 @@ export type DeleteRevenueData = {
530
983
  };
531
984
  url: '/revenue/';
532
985
  };
533
-
534
986
  export type DeleteRevenueErrors = {
535
987
  /**
536
988
  * Missing or invalid API key.
@@ -541,18 +993,14 @@ export type DeleteRevenueErrors = {
541
993
  */
542
994
  422: InvalidPayloadOutput;
543
995
  };
544
-
545
996
  export type DeleteRevenueError = DeleteRevenueErrors[keyof DeleteRevenueErrors];
546
-
547
997
  export type DeleteRevenueResponses = {
548
998
  /**
549
999
  * Success.
550
1000
  */
551
1001
  200: RevenueOrKeyMetricDeletedRowOutput;
552
1002
  };
553
-
554
1003
  export type DeleteRevenueResponse = DeleteRevenueResponses[keyof DeleteRevenueResponses];
555
-
556
1004
  export type GetRevenueData = {
557
1005
  body?: never;
558
1006
  path?: never;
@@ -569,32 +1017,26 @@ export type GetRevenueData = {
569
1017
  };
570
1018
  url: '/revenue/';
571
1019
  };
572
-
573
1020
  export type GetRevenueErrors = {
574
1021
  /**
575
1022
  * Missing or invalid API key.
576
1023
  */
577
1024
  401: ApiErrorOutput;
578
1025
  };
579
-
580
1026
  export type GetRevenueError = GetRevenueErrors[keyof GetRevenueErrors];
581
-
582
1027
  export type GetRevenueResponses = {
583
1028
  /**
584
1029
  * Success.
585
1030
  */
586
1031
  200: RevenueOutput;
587
1032
  };
588
-
589
1033
  export type GetRevenueResponse = GetRevenueResponses[keyof GetRevenueResponses];
590
-
591
1034
  export type SetRevenueData = {
592
1035
  body: SetRevenueInput;
593
1036
  path?: never;
594
1037
  query?: never;
595
1038
  url: '/revenue/';
596
1039
  };
597
-
598
1040
  export type SetRevenueErrors = {
599
1041
  /**
600
1042
  * Missing or invalid API key.
@@ -605,18 +1047,14 @@ export type SetRevenueErrors = {
605
1047
  */
606
1048
  422: InvalidPayloadOutput;
607
1049
  };
608
-
609
1050
  export type SetRevenueError = SetRevenueErrors[keyof SetRevenueErrors];
610
-
611
1051
  export type SetRevenueResponses = {
612
1052
  /**
613
1053
  * Success.
614
1054
  */
615
1055
  200: RevenueOrKeyMetricImportedRowOutput;
616
1056
  };
617
-
618
1057
  export type SetRevenueResponse = SetRevenueResponses[keyof SetRevenueResponses];
619
-
620
1058
  export type DeleteKeyMetricsData = {
621
1059
  body?: never;
622
1060
  path?: never;
@@ -636,7 +1074,6 @@ export type DeleteKeyMetricsData = {
636
1074
  };
637
1075
  url: '/key-metrics/';
638
1076
  };
639
-
640
1077
  export type DeleteKeyMetricsErrors = {
641
1078
  /**
642
1079
  * Missing or invalid API key.
@@ -647,18 +1084,14 @@ export type DeleteKeyMetricsErrors = {
647
1084
  */
648
1085
  422: InvalidPayloadOutput;
649
1086
  };
650
-
651
1087
  export type DeleteKeyMetricsError = DeleteKeyMetricsErrors[keyof DeleteKeyMetricsErrors];
652
-
653
1088
  export type DeleteKeyMetricsResponses = {
654
1089
  /**
655
1090
  * Success.
656
1091
  */
657
1092
  200: RevenueOrKeyMetricDeletedRowOutput;
658
1093
  };
659
-
660
1094
  export type DeleteKeyMetricsResponse = DeleteKeyMetricsResponses[keyof DeleteKeyMetricsResponses];
661
-
662
1095
  export type GetKeyMetricsData = {
663
1096
  body?: never;
664
1097
  path?: never;
@@ -675,32 +1108,26 @@ export type GetKeyMetricsData = {
675
1108
  };
676
1109
  url: '/key-metrics/';
677
1110
  };
678
-
679
1111
  export type GetKeyMetricsErrors = {
680
1112
  /**
681
1113
  * Missing or invalid API key.
682
1114
  */
683
1115
  401: ApiErrorOutput;
684
1116
  };
685
-
686
1117
  export type GetKeyMetricsError = GetKeyMetricsErrors[keyof GetKeyMetricsErrors];
687
-
688
1118
  export type GetKeyMetricsResponses = {
689
1119
  /**
690
1120
  * Success.
691
1121
  */
692
1122
  200: KeyMetricOutput;
693
1123
  };
694
-
695
1124
  export type GetKeyMetricsResponse = GetKeyMetricsResponses[keyof GetKeyMetricsResponses];
696
-
697
1125
  export type SetKeyMetricsData = {
698
1126
  body: SetKeyMetricsInput;
699
1127
  path?: never;
700
1128
  query?: never;
701
1129
  url: '/key-metrics/';
702
1130
  };
703
-
704
1131
  export type SetKeyMetricsErrors = {
705
1132
  /**
706
1133
  * Missing or invalid API key.
@@ -711,18 +1138,14 @@ export type SetKeyMetricsErrors = {
711
1138
  */
712
1139
  422: InvalidPayloadOutput;
713
1140
  };
714
-
715
1141
  export type SetKeyMetricsError = SetKeyMetricsErrors[keyof SetKeyMetricsErrors];
716
-
717
1142
  export type SetKeyMetricsResponses = {
718
1143
  /**
719
1144
  * Success.
720
1145
  */
721
1146
  200: RevenueOrKeyMetricImportedRowOutput;
722
1147
  };
723
-
724
1148
  export type SetKeyMetricsResponse = SetKeyMetricsResponses[keyof SetKeyMetricsResponses];
725
-
726
1149
  export type DeleteCustomersTagsData = {
727
1150
  body?: never;
728
1151
  path?: never;
@@ -734,7 +1157,6 @@ export type DeleteCustomersTagsData = {
734
1157
  };
735
1158
  url: '/customer-tags/';
736
1159
  };
737
-
738
1160
  export type DeleteCustomersTagsErrors = {
739
1161
  /**
740
1162
  * Missing or invalid API key.
@@ -745,18 +1167,14 @@ export type DeleteCustomersTagsErrors = {
745
1167
  */
746
1168
  422: InvalidPayloadOutput;
747
1169
  };
748
-
749
1170
  export type DeleteCustomersTagsError = DeleteCustomersTagsErrors[keyof DeleteCustomersTagsErrors];
750
-
751
1171
  export type DeleteCustomersTagsResponses = {
752
1172
  /**
753
1173
  * Success.
754
1174
  */
755
1175
  200: TagsDeletedOutput;
756
1176
  };
757
-
758
1177
  export type DeleteCustomersTagsResponse = DeleteCustomersTagsResponses[keyof DeleteCustomersTagsResponses];
759
-
760
1178
  export type GetCustomersTagsData = {
761
1179
  body?: never;
762
1180
  path?: never;
@@ -773,32 +1191,26 @@ export type GetCustomersTagsData = {
773
1191
  };
774
1192
  url: '/customer-tags/';
775
1193
  };
776
-
777
1194
  export type GetCustomersTagsErrors = {
778
1195
  /**
779
1196
  * Missing or invalid API key.
780
1197
  */
781
1198
  401: ApiErrorOutput;
782
1199
  };
783
-
784
1200
  export type GetCustomersTagsError = GetCustomersTagsErrors[keyof GetCustomersTagsErrors];
785
-
786
1201
  export type GetCustomersTagsResponses = {
787
1202
  /**
788
1203
  * Success.
789
1204
  */
790
1205
  200: AllCustomerTagsOutput;
791
1206
  };
792
-
793
1207
  export type GetCustomersTagsResponse = GetCustomersTagsResponses[keyof GetCustomersTagsResponses];
794
-
795
1208
  export type SetCustomersTagsData = {
796
1209
  body: SetCustomerTagsInput;
797
1210
  path?: never;
798
1211
  query?: never;
799
1212
  url: '/customer-tags/';
800
1213
  };
801
-
802
1214
  export type SetCustomersTagsErrors = {
803
1215
  /**
804
1216
  * Missing or invalid API key.
@@ -809,14 +1221,178 @@ export type SetCustomersTagsErrors = {
809
1221
  */
810
1222
  422: InvalidPayloadOutput;
811
1223
  };
812
-
813
1224
  export type SetCustomersTagsError = SetCustomersTagsErrors[keyof SetCustomersTagsErrors];
814
-
815
1225
  export type SetCustomersTagsResponses = {
816
1226
  /**
817
1227
  * Success.
818
1228
  */
819
1229
  200: CustomersUpdatedOutput;
820
1230
  };
821
-
822
1231
  export type SetCustomersTagsResponse = SetCustomersTagsResponses[keyof SetCustomersTagsResponses];
1232
+ export type GetProjectData = {
1233
+ body?: never;
1234
+ path?: never;
1235
+ query?: never;
1236
+ url: '/project/';
1237
+ };
1238
+ export type GetProjectErrors = {
1239
+ /**
1240
+ * Missing or invalid API key.
1241
+ */
1242
+ 401: ApiErrorOutput;
1243
+ };
1244
+ export type GetProjectError = GetProjectErrors[keyof GetProjectErrors];
1245
+ export type GetProjectResponses = {
1246
+ /**
1247
+ * Success.
1248
+ */
1249
+ 200: ProjectOutput;
1250
+ };
1251
+ export type GetProjectResponse = GetProjectResponses[keyof GetProjectResponses];
1252
+ export type GetTagsData = {
1253
+ body?: never;
1254
+ path?: never;
1255
+ query?: {
1256
+ /**
1257
+ * Include run-tag facets. Defaults to true.
1258
+ */
1259
+ include_run_tags?: boolean;
1260
+ /**
1261
+ * Include customer-tag facets. Defaults to true.
1262
+ */
1263
+ include_customer_tags?: boolean;
1264
+ };
1265
+ url: '/tags/';
1266
+ };
1267
+ export type GetTagsErrors = {
1268
+ /**
1269
+ * Missing or invalid API key.
1270
+ */
1271
+ 401: ApiErrorOutput;
1272
+ };
1273
+ export type GetTagsError = GetTagsErrors[keyof GetTagsErrors];
1274
+ export type GetTagsResponses = {
1275
+ /**
1276
+ * Success.
1277
+ */
1278
+ 200: TagsOutput;
1279
+ };
1280
+ export type GetTagsResponse = GetTagsResponses[keyof GetTagsResponses];
1281
+ export type GetModelsData = {
1282
+ body?: never;
1283
+ path?: never;
1284
+ query?: never;
1285
+ url: '/models/';
1286
+ };
1287
+ export type GetModelsErrors = {
1288
+ /**
1289
+ * Missing or invalid API key.
1290
+ */
1291
+ 401: ApiErrorOutput;
1292
+ };
1293
+ export type GetModelsError = GetModelsErrors[keyof GetModelsErrors];
1294
+ export type GetModelsResponses = {
1295
+ /**
1296
+ * Success.
1297
+ */
1298
+ 200: ModelsOutput;
1299
+ };
1300
+ export type GetModelsResponse = GetModelsResponses[keyof GetModelsResponses];
1301
+ export type GetProvidersData = {
1302
+ body?: never;
1303
+ path?: never;
1304
+ query?: never;
1305
+ url: '/providers/';
1306
+ };
1307
+ export type GetProvidersErrors = {
1308
+ /**
1309
+ * Missing or invalid API key.
1310
+ */
1311
+ 401: ApiErrorOutput;
1312
+ };
1313
+ export type GetProvidersError = GetProvidersErrors[keyof GetProvidersErrors];
1314
+ export type GetProvidersResponses = {
1315
+ /**
1316
+ * Success.
1317
+ */
1318
+ 200: ProvidersOutput;
1319
+ };
1320
+ export type GetProvidersResponse = GetProvidersResponses[keyof GetProvidersResponses];
1321
+ export type GetCustomersData = {
1322
+ body?: never;
1323
+ path?: never;
1324
+ query?: {
1325
+ /**
1326
+ * Opaque cursor from a previous page's next_cursor.
1327
+ */
1328
+ cursor?: string;
1329
+ limit?: number;
1330
+ /**
1331
+ * Include each customer's tags. Defaults to true.
1332
+ */
1333
+ include_customer_tags?: boolean;
1334
+ };
1335
+ url: '/customers/';
1336
+ };
1337
+ export type GetCustomersErrors = {
1338
+ /**
1339
+ * Missing or invalid API key.
1340
+ */
1341
+ 401: ApiErrorOutput;
1342
+ };
1343
+ export type GetCustomersError = GetCustomersErrors[keyof GetCustomersErrors];
1344
+ export type GetCustomersResponses = {
1345
+ /**
1346
+ * Success.
1347
+ */
1348
+ 200: CustomersOutput;
1349
+ };
1350
+ export type GetCustomersResponse = GetCustomersResponses[keyof GetCustomersResponses];
1351
+ export type GetFeaturesData = {
1352
+ body?: never;
1353
+ path?: never;
1354
+ query?: never;
1355
+ url: '/features/';
1356
+ };
1357
+ export type GetFeaturesErrors = {
1358
+ /**
1359
+ * Missing or invalid API key.
1360
+ */
1361
+ 401: ApiErrorOutput;
1362
+ };
1363
+ export type GetFeaturesError = GetFeaturesErrors[keyof GetFeaturesErrors];
1364
+ export type GetFeaturesResponses = {
1365
+ /**
1366
+ * Success.
1367
+ */
1368
+ 200: FeaturesOutput;
1369
+ };
1370
+ export type GetFeaturesResponse = GetFeaturesResponses[keyof GetFeaturesResponses];
1371
+ export type GetPerformanceData = {
1372
+ body: PerformanceInput;
1373
+ path?: never;
1374
+ query?: never;
1375
+ url: '/performance/';
1376
+ };
1377
+ export type GetPerformanceErrors = {
1378
+ /**
1379
+ * Invalid request for this project type.
1380
+ */
1381
+ 400: ApiErrorOutput;
1382
+ /**
1383
+ * Missing or invalid API key.
1384
+ */
1385
+ 401: ApiErrorOutput;
1386
+ /**
1387
+ * Invalid payload: every offending field is listed and nothing was written.
1388
+ */
1389
+ 422: InvalidPayloadOutput;
1390
+ };
1391
+ export type GetPerformanceError = GetPerformanceErrors[keyof GetPerformanceErrors];
1392
+ export type GetPerformanceResponses = {
1393
+ /**
1394
+ * Success.
1395
+ */
1396
+ 200: PerformanceOutput;
1397
+ };
1398
+ export type GetPerformanceResponse = GetPerformanceResponses[keyof GetPerformanceResponses];