@codeqr/ts 0.9.0 → 0.24.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 (243) hide show
  1. package/CHANGELOG.md +509 -0
  2. package/LICENSE +1 -1
  3. package/README.md +12 -1
  4. package/api-promise.d.mts +1 -0
  5. package/api-promise.d.mts.map +1 -1
  6. package/api-promise.d.ts +1 -0
  7. package/api-promise.d.ts.map +1 -1
  8. package/api-promise.mjs +1 -0
  9. package/api-promise.mjs.map +1 -1
  10. package/client.d.mts +8 -7
  11. package/client.d.mts.map +1 -1
  12. package/client.d.ts +8 -7
  13. package/client.d.ts.map +1 -1
  14. package/client.js +43 -10
  15. package/client.js.map +1 -1
  16. package/client.mjs +43 -10
  17. package/client.mjs.map +1 -1
  18. package/core/api-promise.d.mts.map +1 -1
  19. package/core/api-promise.d.ts.map +1 -1
  20. package/core/api-promise.mjs.map +1 -1
  21. package/core/error.mjs.map +1 -1
  22. package/core/resource.d.mts.map +1 -1
  23. package/core/resource.d.ts.map +1 -1
  24. package/core/uploads.d.mts.map +1 -1
  25. package/core/uploads.d.ts.map +1 -1
  26. package/core/uploads.mjs.map +1 -1
  27. package/error.d.mts +1 -0
  28. package/error.d.mts.map +1 -1
  29. package/error.d.ts +1 -0
  30. package/error.d.ts.map +1 -1
  31. package/error.mjs +1 -0
  32. package/error.mjs.map +1 -1
  33. package/index.d.mts.map +1 -1
  34. package/index.d.ts.map +1 -1
  35. package/index.mjs.map +1 -1
  36. package/internal/detect-platform.mjs.map +1 -1
  37. package/internal/headers.mjs.map +1 -1
  38. package/internal/parse.d.mts.map +1 -1
  39. package/internal/parse.d.ts.map +1 -1
  40. package/internal/parse.js +5 -0
  41. package/internal/parse.js.map +1 -1
  42. package/internal/parse.mjs +5 -0
  43. package/internal/parse.mjs.map +1 -1
  44. package/internal/qs/formats.d.mts.map +1 -1
  45. package/internal/qs/formats.d.ts.map +1 -1
  46. package/internal/qs/index.d.mts +2 -2
  47. package/internal/qs/index.d.mts.map +1 -1
  48. package/internal/qs/index.d.ts +2 -2
  49. package/internal/qs/index.d.ts.map +1 -1
  50. package/internal/qs/index.mjs.map +1 -1
  51. package/internal/qs/stringify.d.mts.map +1 -1
  52. package/internal/qs/stringify.d.ts.map +1 -1
  53. package/internal/qs/stringify.mjs.map +1 -1
  54. package/internal/qs/utils.d.mts.map +1 -1
  55. package/internal/qs/utils.d.ts.map +1 -1
  56. package/internal/qs/utils.mjs.map +1 -1
  57. package/internal/request-options.d.mts.map +1 -1
  58. package/internal/request-options.d.ts.map +1 -1
  59. package/internal/shims.d.mts +6 -0
  60. package/internal/shims.d.mts.map +1 -1
  61. package/internal/shims.d.ts +6 -0
  62. package/internal/shims.d.ts.map +1 -1
  63. package/internal/to-file.d.mts.map +1 -1
  64. package/internal/to-file.d.ts.map +1 -1
  65. package/internal/to-file.mjs.map +1 -1
  66. package/internal/types.d.mts +10 -10
  67. package/internal/types.d.mts.map +1 -1
  68. package/internal/types.d.ts +10 -10
  69. package/internal/types.d.ts.map +1 -1
  70. package/internal/uploads.d.mts.map +1 -1
  71. package/internal/uploads.d.ts.map +1 -1
  72. package/internal/uploads.mjs.map +1 -1
  73. package/internal/utils/base64.mjs.map +1 -1
  74. package/internal/utils/env.js +2 -2
  75. package/internal/utils/env.js.map +1 -1
  76. package/internal/utils/env.mjs +2 -2
  77. package/internal/utils/env.mjs.map +1 -1
  78. package/internal/utils/log.d.mts.map +1 -1
  79. package/internal/utils/log.d.ts.map +1 -1
  80. package/internal/utils/log.js +2 -0
  81. package/internal/utils/log.js.map +1 -1
  82. package/internal/utils/log.mjs +2 -0
  83. package/internal/utils/log.mjs.map +1 -1
  84. package/internal/utils/path.mjs.map +1 -1
  85. package/internal/utils/query.d.mts +2 -0
  86. package/internal/utils/query.d.mts.map +1 -0
  87. package/internal/utils/query.d.ts +2 -0
  88. package/internal/utils/query.d.ts.map +1 -0
  89. package/internal/utils/query.js +10 -0
  90. package/internal/utils/query.js.map +1 -0
  91. package/internal/utils/query.mjs +6 -0
  92. package/internal/utils/query.mjs.map +1 -0
  93. package/internal/utils/values.mjs.map +1 -1
  94. package/internal/utils.d.mts +1 -0
  95. package/internal/utils.d.mts.map +1 -1
  96. package/internal/utils.d.ts +1 -0
  97. package/internal/utils.d.ts.map +1 -1
  98. package/internal/utils.js +1 -0
  99. package/internal/utils.js.map +1 -1
  100. package/internal/utils.mjs +1 -0
  101. package/internal/utils.mjs.map +1 -1
  102. package/package.json +12 -1
  103. package/resource.d.mts +1 -0
  104. package/resource.d.mts.map +1 -1
  105. package/resource.d.ts +1 -0
  106. package/resource.d.ts.map +1 -1
  107. package/resource.mjs +1 -0
  108. package/resource.mjs.map +1 -1
  109. package/resources/analytics.d.mts +23 -3
  110. package/resources/analytics.d.mts.map +1 -1
  111. package/resources/analytics.d.ts +23 -3
  112. package/resources/analytics.d.ts.map +1 -1
  113. package/resources/analytics.mjs.map +1 -1
  114. package/resources/domains.d.mts +27 -27
  115. package/resources/domains.d.mts.map +1 -1
  116. package/resources/domains.d.ts +27 -27
  117. package/resources/domains.d.ts.map +1 -1
  118. package/resources/domains.js +8 -8
  119. package/resources/domains.js.map +1 -1
  120. package/resources/domains.mjs +8 -8
  121. package/resources/domains.mjs.map +1 -1
  122. package/resources/events.d.mts +53 -137
  123. package/resources/events.d.mts.map +1 -1
  124. package/resources/events.d.ts +53 -137
  125. package/resources/events.d.ts.map +1 -1
  126. package/resources/events.mjs.map +1 -1
  127. package/resources/index.d.mts +4 -4
  128. package/resources/index.d.mts.map +1 -1
  129. package/resources/index.d.ts +4 -4
  130. package/resources/index.d.ts.map +1 -1
  131. package/resources/index.js.map +1 -1
  132. package/resources/index.mjs.map +1 -1
  133. package/resources/links/bulk.d.mts +16 -26
  134. package/resources/links/bulk.d.mts.map +1 -1
  135. package/resources/links/bulk.d.ts +16 -26
  136. package/resources/links/bulk.d.ts.map +1 -1
  137. package/resources/links/bulk.js +0 -14
  138. package/resources/links/bulk.js.map +1 -1
  139. package/resources/links/bulk.mjs +0 -14
  140. package/resources/links/bulk.mjs.map +1 -1
  141. package/resources/links/index.d.mts +2 -2
  142. package/resources/links/index.d.mts.map +1 -1
  143. package/resources/links/index.d.ts +2 -2
  144. package/resources/links/index.d.ts.map +1 -1
  145. package/resources/links/index.js.map +1 -1
  146. package/resources/links/index.mjs +1 -1
  147. package/resources/links/index.mjs.map +1 -1
  148. package/resources/links/links.d.mts +232 -988
  149. package/resources/links/links.d.mts.map +1 -1
  150. package/resources/links/links.d.ts +232 -988
  151. package/resources/links/links.d.ts.map +1 -1
  152. package/resources/links/links.js +16 -42
  153. package/resources/links/links.js.map +1 -1
  154. package/resources/links/links.mjs +16 -42
  155. package/resources/links/links.mjs.map +1 -1
  156. package/resources/links.d.mts.map +1 -1
  157. package/resources/links.d.ts.map +1 -1
  158. package/resources/links.mjs.map +1 -1
  159. package/resources/projects.d.mts +0 -4
  160. package/resources/projects.d.mts.map +1 -1
  161. package/resources/projects.d.ts +0 -4
  162. package/resources/projects.d.ts.map +1 -1
  163. package/resources/projects.js +0 -7
  164. package/resources/projects.js.map +1 -1
  165. package/resources/projects.mjs +0 -7
  166. package/resources/projects.mjs.map +1 -1
  167. package/resources/qrcodes/bulk.d.mts +111 -38
  168. package/resources/qrcodes/bulk.d.mts.map +1 -1
  169. package/resources/qrcodes/bulk.d.ts +111 -38
  170. package/resources/qrcodes/bulk.d.ts.map +1 -1
  171. package/resources/qrcodes/bulk.js +0 -14
  172. package/resources/qrcodes/bulk.js.map +1 -1
  173. package/resources/qrcodes/bulk.mjs +0 -14
  174. package/resources/qrcodes/bulk.mjs.map +1 -1
  175. package/resources/qrcodes/index.d.mts +2 -2
  176. package/resources/qrcodes/index.d.mts.map +1 -1
  177. package/resources/qrcodes/index.d.ts +2 -2
  178. package/resources/qrcodes/index.d.ts.map +1 -1
  179. package/resources/qrcodes/index.js.map +1 -1
  180. package/resources/qrcodes/index.mjs +1 -1
  181. package/resources/qrcodes/index.mjs.map +1 -1
  182. package/resources/qrcodes/qrcodes.d.mts +442 -855
  183. package/resources/qrcodes/qrcodes.d.mts.map +1 -1
  184. package/resources/qrcodes/qrcodes.d.ts +442 -855
  185. package/resources/qrcodes/qrcodes.d.ts.map +1 -1
  186. package/resources/qrcodes/qrcodes.js +12 -42
  187. package/resources/qrcodes/qrcodes.js.map +1 -1
  188. package/resources/qrcodes/qrcodes.mjs +12 -42
  189. package/resources/qrcodes/qrcodes.mjs.map +1 -1
  190. package/resources/qrcodes.d.mts.map +1 -1
  191. package/resources/qrcodes.d.ts.map +1 -1
  192. package/resources/qrcodes.mjs.map +1 -1
  193. package/resources/tags.d.mts +19 -15
  194. package/resources/tags.d.mts.map +1 -1
  195. package/resources/tags.d.ts +19 -15
  196. package/resources/tags.d.ts.map +1 -1
  197. package/resources/tags.js +7 -7
  198. package/resources/tags.js.map +1 -1
  199. package/resources/tags.mjs +7 -7
  200. package/resources/tags.mjs.map +1 -1
  201. package/resources/track.d.mts +10 -9
  202. package/resources/track.d.mts.map +1 -1
  203. package/resources/track.d.ts +10 -9
  204. package/resources/track.d.ts.map +1 -1
  205. package/resources/track.mjs.map +1 -1
  206. package/resources.d.mts.map +1 -1
  207. package/resources.d.ts.map +1 -1
  208. package/resources.mjs.map +1 -1
  209. package/src/client.ts +53 -29
  210. package/src/internal/parse.ts +6 -0
  211. package/src/internal/types.ts +6 -8
  212. package/src/internal/utils/env.ts +2 -2
  213. package/src/internal/utils/log.ts +2 -0
  214. package/src/internal/utils/query.ts +7 -0
  215. package/src/internal/utils.ts +1 -0
  216. package/src/resources/analytics.ts +33 -3
  217. package/src/resources/domains.ts +38 -38
  218. package/src/resources/events.ts +90 -143
  219. package/src/resources/index.ts +4 -10
  220. package/src/resources/links/bulk.ts +30 -37
  221. package/src/resources/links/index.ts +2 -11
  222. package/src/resources/links/links.ts +227 -1538
  223. package/src/resources/projects.ts +0 -8
  224. package/src/resources/qrcodes/bulk.ts +151 -50
  225. package/src/resources/qrcodes/index.ts +2 -11
  226. package/src/resources/qrcodes/qrcodes.ts +405 -1083
  227. package/src/resources/tags.ts +23 -18
  228. package/src/resources/track.ts +10 -9
  229. package/src/version.ts +1 -1
  230. package/uploads.d.mts +1 -0
  231. package/uploads.d.mts.map +1 -1
  232. package/uploads.d.ts +1 -0
  233. package/uploads.d.ts.map +1 -1
  234. package/uploads.mjs +1 -0
  235. package/uploads.mjs.map +1 -1
  236. package/version.d.mts +1 -1
  237. package/version.d.mts.map +1 -1
  238. package/version.d.ts +1 -1
  239. package/version.d.ts.map +1 -1
  240. package/version.js +1 -1
  241. package/version.js.map +1 -1
  242. package/version.mjs +1 -1
  243. package/version.mjs.map +1 -1
@@ -1,7 +1,7 @@
1
1
  import { APIResource } from "../../core/resource.js";
2
2
  import * as TagsAPI from "../tags.js";
3
3
  import * as BulkAPI from "./bulk.js";
4
- import { Bulk, BulkCreateParams, BulkCreateResponse, BulkDeleteParams, BulkDeleteResponse } from "./bulk.js";
4
+ import { Bulk, BulkCreateParams, BulkCreateResponse } from "./bulk.js";
5
5
  import { APIPromise } from "../../core/api-promise.js";
6
6
  import { RequestOptions } from "../../internal/request-options.js";
7
7
  export declare class Links extends APIResource {
@@ -17,16 +17,6 @@ export declare class Links extends APIResource {
17
17
  * ```
18
18
  */
19
19
  create(body: LinkCreateParams, options?: RequestOptions): APIPromise<Link>;
20
- /**
21
- * Update a link for the authenticated workspace. If there's no change, returns it
22
- * as it is.
23
- *
24
- * @example
25
- * ```ts
26
- * const link = await client.links.update('linkId');
27
- * ```
28
- */
29
- update(linkID: string, body?: LinkUpdateParams | null | undefined, options?: RequestOptions): APIPromise<Link>;
30
20
  /**
31
21
  * Retrieve a paginated list of links for the authenticated workspace.
32
22
  *
@@ -36,24 +26,6 @@ export declare class Links extends APIResource {
36
26
  * ```
37
27
  */
38
28
  list(query?: LinkListParams | null | undefined, options?: RequestOptions): APIPromise<LinkListResponse>;
39
- /**
40
- * Delete a link for the authenticated workspace.
41
- *
42
- * @example
43
- * ```ts
44
- * const link = await client.links.delete('linkId');
45
- * ```
46
- */
47
- delete(linkID: string, options?: RequestOptions): APIPromise<LinkDeleteResponse>;
48
- /**
49
- * Retrieve the number of links for the authenticated workspace.
50
- *
51
- * @example
52
- * ```ts
53
- * const response = await client.links.count();
54
- * ```
55
- */
56
- count(query?: LinkCountParams | null | undefined, options?: RequestOptions): APIPromise<LinkCountResponse>;
57
29
  /**
58
30
  * Retrieve the info for a link.
59
31
  *
@@ -68,18 +40,24 @@ export declare class Links extends APIResource {
68
40
  */
69
41
  retrieveInfo(query: LinkRetrieveInfoParams, options?: RequestOptions): APIPromise<Link>;
70
42
  /**
71
- * Upsert a link for the authenticated workspace by its URL. If a link with the
72
- * same URL already exists, return it (or update it if there are any changes).
73
- * Otherwise, a new link will be created.
43
+ * Update a link for the authenticated workspace. If there's no change, returns it
44
+ * as it is.
74
45
  *
75
46
  * @example
76
47
  * ```ts
77
- * const link = await client.links.upsert({
78
- * url: 'https://google.com',
79
- * });
48
+ * const link = await client.links.update('linkId');
49
+ * ```
50
+ */
51
+ update(linkID: string, body?: LinkUpdateParams | null | undefined, options?: RequestOptions): APIPromise<Link>;
52
+ /**
53
+ * Delete a link for the authenticated workspace.
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * const link = await client.links.delete('linkId');
80
58
  * ```
81
59
  */
82
- upsert(body: LinkUpsertParams, options?: RequestOptions): APIPromise<Link>;
60
+ delete(linkID: string, options?: RequestOptions): APIPromise<LinkDeleteResponse>;
83
61
  }
84
62
  export interface Link {
85
63
  /**
@@ -206,6 +184,10 @@ export interface Link {
206
184
  * Whether the short link uses link cloaking.
207
185
  */
208
186
  rewrite: boolean;
187
+ /**
188
+ * Smart rules for conditional destination routing by request attribute.
189
+ */
190
+ rules: Array<Link.Rule> | null;
209
191
  /**
210
192
  * The amount of the sale generated by the link.
211
193
  */
@@ -241,998 +223,194 @@ export interface Link {
241
223
  */
242
224
  url: string;
243
225
  /**
244
- * The ID of the user who created the short link.
245
- */
246
- userId: string;
247
- /**
248
- * The UTM campaign of the short link.
249
- */
250
- utm_campaign: string | null;
251
- /**
252
- * The UTM content of the short link.
253
- */
254
- utm_content: string | null;
255
- /**
256
- * The UTM medium of the short link.
257
- */
258
- utm_medium: string | null;
259
- /**
260
- * The UTM source of the short link.
261
- */
262
- utm_source: string | null;
263
- /**
264
- * The UTM term of the short link.
265
- */
266
- utm_term: string | null;
267
- /**
268
- * The video of the short link.
269
- */
270
- video: string | null;
271
- /**
272
- * The ID of the page to redirect to before the link destination.
273
- */
274
- pageId?: string | null;
275
- /**
276
- * The URL of the page to redirect to before the link destination.
277
- */
278
- pageUrl?: string | null;
279
- /**
280
- * The complete QR code URL for the short link (for example,
281
- * `https://api.codeqr.io/qr?url=https://codeqr.link/try`).
282
- */
283
- qrCode?: string;
284
- /**
285
- * The complete URL of the short link, including the https protocol (for example,
286
- * `https://codeqr.link/try`).
287
- */
288
- shortLink?: string;
289
- }
290
- export type LinkListResponse = Array<Link>;
291
- export interface LinkDeleteResponse {
292
- /**
293
- * The ID of the link.
294
- */
295
- id: string;
296
- }
297
- /**
298
- * The number of links matching the query.
299
- */
300
- export type LinkCountResponse = number;
301
- export interface LinkCreateParams {
302
- /**
303
- * The destination URL of the short link.
304
- */
305
- url: string;
306
- /**
307
- * The Android destination URL for the short link for Android device targeting.
308
- */
309
- android?: string | null;
310
- /**
311
- * Whether the short link is archived.
312
- */
313
- archived?: boolean;
314
- /**
315
- * The comments for the short link.
316
- */
317
- comments?: string | null;
318
- /**
319
- * The description of the short link generated via `api.codeqr.io/metatags`. Will
320
- * be used for custom link preview if `proxy` is true.
321
- */
322
- description?: string | null;
323
- /**
324
- * Allow search engines to index your short link. Default is `false` if not
325
- * provided. Learn more: https://codeqr.link/noindex
326
- */
327
- doIndex?: boolean;
328
- /**
329
- * The domain of the short link. If not provided, the main domain of the project
330
- * will be used (or `codeqr.link` if the project has no domains).
331
- */
332
- domain?: string;
333
- /**
334
- * The URL to redirect to when the short link expires.
335
- */
336
- expiredUrl?: string | null;
337
- /**
338
- * The date and time when the short link will expire in ISO-8601 format. Must be in
339
- * the future.
340
- */
341
- expiresAt?: string | null;
342
- /**
343
- * This is the ID of the link in your database. If set, it can be used to identify
344
- * the link in the future. Must be prefixed with `ext_` when passed as a query
345
- * parameter.
346
- */
347
- externalId?: string | null;
348
- /**
349
- * Whether the short link is flexible.
350
- */
351
- flexible?: boolean;
352
- /**
353
- * The unique ID existing folder to assign the short link to.
354
- */
355
- folderId?: string | null;
356
- /**
357
- * Geographic targeting information for the short link in JSON format
358
- * `{[COUNTRY]: https://example.com }`.
359
- */
360
- geo?: LinkCreateParams.Geo | null;
361
- /**
362
- * The image of the short link generated via `api.codeqr.io/metatags`. Will be used
363
- * for custom link preview if `proxy` is true.
364
- */
365
- image?: string | null;
366
- /**
367
- * The iOS destination URL for the short link for iOS device targeting.
368
- */
369
- ios?: string | null;
370
- /**
371
- * If the form is mandatory for the page.
372
- */
373
- isFormMandatory?: boolean;
374
- /**
375
- * The slug of the short link. If not provided, a random 7-character slug will be
376
- * generated.
377
- */
378
- key?: string;
379
- /**
380
- * The ID of the page to redirect to before the link destination.
381
- */
382
- pageId?: string | null;
383
- /**
384
- * The URL of the page to redirect to before the link destination.
385
- */
386
- pageUrl?: string | null;
387
- /**
388
- * The password required to access the short link destination URL.
389
- */
390
- password?: string | null;
391
- /**
392
- * The prefix of the short link slug for randomly generated keys (for example, if
393
- * the prefix is `/c/`, the generated keys will be in the format `/c/:key`). Will
394
- * be ignored if `key` is provided.
395
- */
396
- prefix?: string;
397
- /**
398
- * Whether the short link has pre-redirection.
399
- */
400
- preRedirection?: boolean;
401
- /**
402
- * Whether the short link uses the custom link preview feature.
403
- */
404
- proxy?: boolean;
405
- /**
406
- * Whether the short link statistics are publicly accessible.
407
- */
408
- publicStats?: boolean;
409
- /**
410
- * Whether the short link uses link cloaking.
411
- */
412
- rewrite?: boolean;
413
- /**
414
- * @deprecated The unique ID of the tag assigned to the short link. This field is
415
- * deprecated – use `tagIds` instead.
416
- */
417
- tagId?: string | null;
418
- /**
419
- * The unique IDs of the tags assigned to the short link.
420
- */
421
- tagIds?: string | Array<string>;
422
- /**
423
- * The unique name of the tags assigned to the short link (case insensitive).
424
- */
425
- tagNames?: string | Array<string>;
426
- /**
427
- * The title of the short link generated via `api.codeqr.io/metatags`. Will be used
428
- * for custom link preview if `proxy` is true.
429
- */
430
- title?: string | null;
431
- /**
432
- * Whether to track conversions for the short link.
433
- */
434
- trackConversion?: boolean;
435
- /**
436
- * The video of the short link.
437
- */
438
- video?: string | null;
439
- /**
440
- * An array of webhook IDs to trigger when the link is clicked. These webhooks will
441
- * receive click event data.
226
+ * Whether this link should be used as a reusable template.
442
227
  */
443
- webhookIds?: Array<string> | null;
444
- }
445
- export declare namespace LinkCreateParams {
228
+ useAsTemplate: boolean;
446
229
  /**
447
- * Geographic targeting information for the short link in JSON format
448
- * `{[COUNTRY]: https://example.com }`.
230
+ * The ID of the user who created the short link.
449
231
  */
450
- interface Geo {
451
- AD?: string;
452
- AE?: string;
453
- AF?: string;
454
- AG?: string;
455
- AI?: string;
456
- AL?: string;
457
- AM?: string;
458
- AO?: string;
459
- AQ?: string;
460
- AR?: string;
461
- AS?: string;
462
- AT?: string;
463
- AU?: string;
464
- AW?: string;
465
- AX?: string;
466
- AZ?: string;
467
- BA?: string;
468
- BB?: string;
469
- BD?: string;
470
- BE?: string;
471
- BF?: string;
472
- BG?: string;
473
- BH?: string;
474
- BI?: string;
475
- BJ?: string;
476
- BL?: string;
477
- BM?: string;
478
- BN?: string;
479
- BO?: string;
480
- BQ?: string;
481
- BR?: string;
482
- BS?: string;
483
- BT?: string;
484
- BV?: string;
485
- BW?: string;
486
- BY?: string;
487
- BZ?: string;
488
- CA?: string;
489
- CC?: string;
490
- CD?: string;
491
- CF?: string;
492
- CG?: string;
493
- CH?: string;
494
- CI?: string;
495
- CK?: string;
496
- CL?: string;
497
- CM?: string;
498
- CN?: string;
499
- CO?: string;
500
- CR?: string;
501
- CU?: string;
502
- CV?: string;
503
- CW?: string;
504
- CX?: string;
505
- CY?: string;
506
- CZ?: string;
507
- DE?: string;
508
- DJ?: string;
509
- DK?: string;
510
- DM?: string;
511
- DO?: string;
512
- DZ?: string;
513
- EC?: string;
514
- EE?: string;
515
- EG?: string;
516
- EH?: string;
517
- ER?: string;
518
- ES?: string;
519
- ET?: string;
520
- FI?: string;
521
- FJ?: string;
522
- FK?: string;
523
- FM?: string;
524
- FO?: string;
525
- FR?: string;
526
- GA?: string;
527
- GB?: string;
528
- GD?: string;
529
- GE?: string;
530
- GF?: string;
531
- GG?: string;
532
- GH?: string;
533
- GI?: string;
534
- GL?: string;
535
- GM?: string;
536
- GN?: string;
537
- GP?: string;
538
- GQ?: string;
539
- GR?: string;
540
- GS?: string;
541
- GT?: string;
542
- GU?: string;
543
- GW?: string;
544
- GY?: string;
545
- HK?: string;
546
- HM?: string;
547
- HN?: string;
548
- HR?: string;
549
- HT?: string;
550
- HU?: string;
551
- ID?: string;
552
- IE?: string;
553
- IL?: string;
554
- IM?: string;
555
- IN?: string;
556
- IO?: string;
557
- IQ?: string;
558
- IR?: string;
559
- IS?: string;
560
- IT?: string;
561
- JE?: string;
562
- JM?: string;
563
- JO?: string;
564
- JP?: string;
565
- KE?: string;
566
- KG?: string;
567
- KH?: string;
568
- KI?: string;
569
- KM?: string;
570
- KN?: string;
571
- KP?: string;
572
- KR?: string;
573
- KW?: string;
574
- KY?: string;
575
- KZ?: string;
576
- LA?: string;
577
- LB?: string;
578
- LC?: string;
579
- LI?: string;
580
- LK?: string;
581
- LR?: string;
582
- LS?: string;
583
- LT?: string;
584
- LU?: string;
585
- LV?: string;
586
- LY?: string;
587
- MA?: string;
588
- MC?: string;
589
- MD?: string;
590
- ME?: string;
591
- MF?: string;
592
- MG?: string;
593
- MH?: string;
594
- MK?: string;
595
- ML?: string;
596
- MM?: string;
597
- MN?: string;
598
- MO?: string;
599
- MP?: string;
600
- MQ?: string;
601
- MR?: string;
602
- MS?: string;
603
- MT?: string;
604
- MU?: string;
605
- MV?: string;
606
- MW?: string;
607
- MX?: string;
608
- MY?: string;
609
- MZ?: string;
610
- NA?: string;
611
- NC?: string;
612
- NE?: string;
613
- NF?: string;
614
- NG?: string;
615
- NI?: string;
616
- NL?: string;
617
- NO?: string;
618
- NP?: string;
619
- NR?: string;
620
- NU?: string;
621
- NZ?: string;
622
- OM?: string;
623
- PA?: string;
624
- PE?: string;
625
- PF?: string;
626
- PG?: string;
627
- PH?: string;
628
- PK?: string;
629
- PL?: string;
630
- PM?: string;
631
- PN?: string;
632
- PR?: string;
633
- PS?: string;
634
- PT?: string;
635
- PW?: string;
636
- PY?: string;
637
- QA?: string;
638
- RE?: string;
639
- RO?: string;
640
- RS?: string;
641
- RU?: string;
642
- RW?: string;
643
- SA?: string;
644
- SB?: string;
645
- SC?: string;
646
- SD?: string;
647
- SE?: string;
648
- SG?: string;
649
- SH?: string;
650
- SI?: string;
651
- SJ?: string;
652
- SK?: string;
653
- SL?: string;
654
- SM?: string;
655
- SN?: string;
656
- SO?: string;
657
- SR?: string;
658
- SS?: string;
659
- ST?: string;
660
- SV?: string;
661
- SX?: string;
662
- SY?: string;
663
- SZ?: string;
664
- TC?: string;
665
- TD?: string;
666
- TF?: string;
667
- TG?: string;
668
- TH?: string;
669
- TJ?: string;
670
- TK?: string;
671
- TL?: string;
672
- TM?: string;
673
- TN?: string;
674
- TO?: string;
675
- TR?: string;
676
- TT?: string;
677
- TV?: string;
678
- TW?: string;
679
- TZ?: string;
680
- UA?: string;
681
- UG?: string;
682
- UM?: string;
683
- US?: string;
684
- UY?: string;
685
- UZ?: string;
686
- VA?: string;
687
- VC?: string;
688
- VE?: string;
689
- VG?: string;
690
- VI?: string;
691
- VN?: string;
692
- VU?: string;
693
- WF?: string;
694
- WS?: string;
695
- XK?: string;
696
- YE?: string;
697
- YT?: string;
698
- ZA?: string;
699
- ZM?: string;
700
- ZW?: string;
701
- }
702
- }
703
- export interface LinkUpdateParams {
704
- /**
705
- * The Android destination URL for the short link for Android device targeting.
706
- */
707
- android?: string | null;
708
- /**
709
- * Whether the short link is archived.
710
- */
711
- archived?: boolean;
712
- /**
713
- * The comments for the short link.
714
- */
715
- comments?: string | null;
716
- /**
717
- * The description of the short link generated via `api.codeqr.io/metatags`. Will
718
- * be used for custom link preview if `proxy` is true.
719
- */
720
- description?: string | null;
721
- /**
722
- * Allow search engines to index your short link. Default is `false` if not
723
- * provided. Learn more: https://codeqr.link/noindex
724
- */
725
- doIndex?: boolean;
726
- /**
727
- * The domain of the short link. If not provided, the main domain of the project
728
- * will be used (or `codeqr.link` if the project has no domains).
729
- */
730
- domain?: string;
731
- /**
732
- * The URL to redirect to when the short link expires.
733
- */
734
- expiredUrl?: string | null;
735
- /**
736
- * The date and time when the short link will expire in ISO-8601 format. Must be in
737
- * the future.
738
- */
739
- expiresAt?: string | null;
740
- /**
741
- * This is the ID of the link in your database. If set, it can be used to identify
742
- * the link in the future. Must be prefixed with `ext_` when passed as a query
743
- * parameter.
744
- */
745
- externalId?: string | null;
746
- /**
747
- * Whether the short link is flexible.
748
- */
749
- flexible?: boolean;
750
- /**
751
- * The unique ID existing folder to assign the short link to.
752
- */
753
- folderId?: string | null;
754
- /**
755
- * Geographic targeting information for the short link in JSON format
756
- * `{[COUNTRY]: https://example.com }`.
757
- */
758
- geo?: LinkUpdateParams.Geo | null;
759
- /**
760
- * The image of the short link generated via `api.codeqr.io/metatags`. Will be used
761
- * for custom link preview if `proxy` is true.
762
- */
763
- image?: string | null;
764
- /**
765
- * The iOS destination URL for the short link for iOS device targeting.
766
- */
767
- ios?: string | null;
768
- /**
769
- * If the form is mandatory for the page.
770
- */
771
- isFormMandatory?: boolean;
772
- /**
773
- * The slug of the short link. If not provided, a random 7-character slug will be
774
- * generated.
775
- */
776
- key?: string;
777
- /**
778
- * The ID of the page to redirect to before the link destination.
779
- */
780
- pageId?: string | null;
781
- /**
782
- * The URL of the page to redirect to before the link destination.
783
- */
784
- pageUrl?: string | null;
785
- /**
786
- * The password required to access the short link destination URL.
787
- */
788
- password?: string | null;
789
- /**
790
- * The prefix of the short link slug for randomly generated keys (for example, if
791
- * the prefix is `/c/`, the generated keys will be in the format `/c/:key`). Will
792
- * be ignored if `key` is provided.
793
- */
794
- prefix?: string;
795
- /**
796
- * Whether the short link has pre-redirection.
797
- */
798
- preRedirection?: boolean;
799
- /**
800
- * Whether the short link uses the custom link preview feature.
801
- */
802
- proxy?: boolean;
803
- /**
804
- * Whether the short link statistics are publicly accessible.
805
- */
806
- publicStats?: boolean;
807
- /**
808
- * Whether the short link uses link cloaking.
809
- */
810
- rewrite?: boolean;
811
- /**
812
- * @deprecated The unique ID of the tag assigned to the short link. This field is
813
- * deprecated – use `tagIds` instead.
814
- */
815
- tagId?: string | null;
816
- /**
817
- * The unique IDs of the tags assigned to the short link.
818
- */
819
- tagIds?: string | Array<string>;
820
- /**
821
- * The unique name of the tags assigned to the short link (case insensitive).
822
- */
823
- tagNames?: string | Array<string>;
824
- /**
825
- * The title of the short link generated via `api.codeqr.io/metatags`. Will be used
826
- * for custom link preview if `proxy` is true.
827
- */
828
- title?: string | null;
829
- /**
830
- * Whether to track conversions for the short link.
831
- */
832
- trackConversion?: boolean;
833
- /**
834
- * The destination URL of the short link.
835
- */
836
- url?: string;
837
- /**
838
- * The video of the short link.
839
- */
840
- video?: string | null;
841
- /**
842
- * An array of webhook IDs to trigger when the link is clicked. These webhooks will
843
- * receive click event data.
844
- */
845
- webhookIds?: Array<string> | null;
846
- }
847
- export declare namespace LinkUpdateParams {
848
- /**
849
- * Geographic targeting information for the short link in JSON format
850
- * `{[COUNTRY]: https://example.com }`.
851
- */
852
- interface Geo {
853
- AD?: string;
854
- AE?: string;
855
- AF?: string;
856
- AG?: string;
857
- AI?: string;
858
- AL?: string;
859
- AM?: string;
860
- AO?: string;
861
- AQ?: string;
862
- AR?: string;
863
- AS?: string;
864
- AT?: string;
865
- AU?: string;
866
- AW?: string;
867
- AX?: string;
868
- AZ?: string;
869
- BA?: string;
870
- BB?: string;
871
- BD?: string;
872
- BE?: string;
873
- BF?: string;
874
- BG?: string;
875
- BH?: string;
876
- BI?: string;
877
- BJ?: string;
878
- BL?: string;
879
- BM?: string;
880
- BN?: string;
881
- BO?: string;
882
- BQ?: string;
883
- BR?: string;
884
- BS?: string;
885
- BT?: string;
886
- BV?: string;
887
- BW?: string;
888
- BY?: string;
889
- BZ?: string;
890
- CA?: string;
891
- CC?: string;
892
- CD?: string;
893
- CF?: string;
894
- CG?: string;
895
- CH?: string;
896
- CI?: string;
897
- CK?: string;
898
- CL?: string;
899
- CM?: string;
900
- CN?: string;
901
- CO?: string;
902
- CR?: string;
903
- CU?: string;
904
- CV?: string;
905
- CW?: string;
906
- CX?: string;
907
- CY?: string;
908
- CZ?: string;
909
- DE?: string;
910
- DJ?: string;
911
- DK?: string;
912
- DM?: string;
913
- DO?: string;
914
- DZ?: string;
915
- EC?: string;
916
- EE?: string;
917
- EG?: string;
918
- EH?: string;
919
- ER?: string;
920
- ES?: string;
921
- ET?: string;
922
- FI?: string;
923
- FJ?: string;
924
- FK?: string;
925
- FM?: string;
926
- FO?: string;
927
- FR?: string;
928
- GA?: string;
929
- GB?: string;
930
- GD?: string;
931
- GE?: string;
932
- GF?: string;
933
- GG?: string;
934
- GH?: string;
935
- GI?: string;
936
- GL?: string;
937
- GM?: string;
938
- GN?: string;
939
- GP?: string;
940
- GQ?: string;
941
- GR?: string;
942
- GS?: string;
943
- GT?: string;
944
- GU?: string;
945
- GW?: string;
946
- GY?: string;
947
- HK?: string;
948
- HM?: string;
949
- HN?: string;
950
- HR?: string;
951
- HT?: string;
952
- HU?: string;
953
- ID?: string;
954
- IE?: string;
955
- IL?: string;
956
- IM?: string;
957
- IN?: string;
958
- IO?: string;
959
- IQ?: string;
960
- IR?: string;
961
- IS?: string;
962
- IT?: string;
963
- JE?: string;
964
- JM?: string;
965
- JO?: string;
966
- JP?: string;
967
- KE?: string;
968
- KG?: string;
969
- KH?: string;
970
- KI?: string;
971
- KM?: string;
972
- KN?: string;
973
- KP?: string;
974
- KR?: string;
975
- KW?: string;
976
- KY?: string;
977
- KZ?: string;
978
- LA?: string;
979
- LB?: string;
980
- LC?: string;
981
- LI?: string;
982
- LK?: string;
983
- LR?: string;
984
- LS?: string;
985
- LT?: string;
986
- LU?: string;
987
- LV?: string;
988
- LY?: string;
989
- MA?: string;
990
- MC?: string;
991
- MD?: string;
992
- ME?: string;
993
- MF?: string;
994
- MG?: string;
995
- MH?: string;
996
- MK?: string;
997
- ML?: string;
998
- MM?: string;
999
- MN?: string;
1000
- MO?: string;
1001
- MP?: string;
1002
- MQ?: string;
1003
- MR?: string;
1004
- MS?: string;
1005
- MT?: string;
1006
- MU?: string;
1007
- MV?: string;
1008
- MW?: string;
1009
- MX?: string;
1010
- MY?: string;
1011
- MZ?: string;
1012
- NA?: string;
1013
- NC?: string;
1014
- NE?: string;
1015
- NF?: string;
1016
- NG?: string;
1017
- NI?: string;
1018
- NL?: string;
1019
- NO?: string;
1020
- NP?: string;
1021
- NR?: string;
1022
- NU?: string;
1023
- NZ?: string;
1024
- OM?: string;
1025
- PA?: string;
1026
- PE?: string;
1027
- PF?: string;
1028
- PG?: string;
1029
- PH?: string;
1030
- PK?: string;
1031
- PL?: string;
1032
- PM?: string;
1033
- PN?: string;
1034
- PR?: string;
1035
- PS?: string;
1036
- PT?: string;
1037
- PW?: string;
1038
- PY?: string;
1039
- QA?: string;
1040
- RE?: string;
1041
- RO?: string;
1042
- RS?: string;
1043
- RU?: string;
1044
- RW?: string;
1045
- SA?: string;
1046
- SB?: string;
1047
- SC?: string;
1048
- SD?: string;
1049
- SE?: string;
1050
- SG?: string;
1051
- SH?: string;
1052
- SI?: string;
1053
- SJ?: string;
1054
- SK?: string;
1055
- SL?: string;
1056
- SM?: string;
1057
- SN?: string;
1058
- SO?: string;
1059
- SR?: string;
1060
- SS?: string;
1061
- ST?: string;
1062
- SV?: string;
1063
- SX?: string;
1064
- SY?: string;
1065
- SZ?: string;
1066
- TC?: string;
1067
- TD?: string;
1068
- TF?: string;
1069
- TG?: string;
1070
- TH?: string;
1071
- TJ?: string;
1072
- TK?: string;
1073
- TL?: string;
1074
- TM?: string;
1075
- TN?: string;
1076
- TO?: string;
1077
- TR?: string;
1078
- TT?: string;
1079
- TV?: string;
1080
- TW?: string;
1081
- TZ?: string;
1082
- UA?: string;
1083
- UG?: string;
1084
- UM?: string;
1085
- US?: string;
1086
- UY?: string;
1087
- UZ?: string;
1088
- VA?: string;
1089
- VC?: string;
1090
- VE?: string;
1091
- VG?: string;
1092
- VI?: string;
1093
- VN?: string;
1094
- VU?: string;
1095
- WF?: string;
1096
- WS?: string;
1097
- XK?: string;
1098
- YE?: string;
1099
- YT?: string;
1100
- ZA?: string;
1101
- ZM?: string;
1102
- ZW?: string;
1103
- }
1104
- }
1105
- export interface LinkListParams {
232
+ userId: string;
1106
233
  /**
1107
- * The Android device to filter by.
234
+ * The UTM campaign of the short link.
1108
235
  */
1109
- android?: string;
236
+ utm_campaign: string | null;
1110
237
  /**
1111
- * Maximum number of clicks
238
+ * The UTM content of the short link.
1112
239
  */
1113
- clicksMax?: number;
240
+ utm_content: string | null;
1114
241
  /**
1115
- * Minimum number of clicks
242
+ * The UTM medium of the short link.
1116
243
  */
1117
- clicksMin?: number;
244
+ utm_medium: string | null;
1118
245
  /**
1119
- * The comments to filter by.
246
+ * The UTM source of the short link.
1120
247
  */
1121
- comments?: string;
248
+ utm_source: string | null;
1122
249
  /**
1123
- * Created after date (ISO string)
250
+ * The UTM term of the short link.
1124
251
  */
1125
- createdAfter?: string;
252
+ utm_term: string | null;
1126
253
  /**
1127
- * Created before date (ISO string)
254
+ * The video of the short link.
1128
255
  */
1129
- createdBefore?: string;
256
+ video: string | null;
1130
257
  /**
1131
- * The domain to filter the links. For example, `ac.me`. If not provided, all links
1132
- * of the project will be returned.
258
+ * The ID of the page to redirect to before the link destination.
1133
259
  */
1134
- domain?: string;
260
+ pageId?: string | null;
1135
261
  /**
1136
- * Expires after date (ISO string)
262
+ * The URL of the page to redirect to before the link destination.
1137
263
  */
1138
- expiresAfter?: string;
264
+ pageUrl?: string | null;
1139
265
  /**
1140
- * The date and time the short link will expire in ISO-8601 format. Must be in the
1141
- * future.
266
+ * The complete QR code URL for the short link (for example,
267
+ * `https://api.codeqr.io/qr?url=https://codeqr.link/try`).
1142
268
  */
1143
- expiresAt?: string | null;
269
+ qrCode?: string;
1144
270
  /**
1145
- * Expires before date (ISO string)
271
+ * The complete URL of the short link, including the https protocol (for example,
272
+ * `https://codeqr.link/try`).
1146
273
  */
1147
- expiresBefore?: string;
274
+ shortLink?: string;
275
+ }
276
+ export declare namespace Link {
277
+ interface Rule {
278
+ attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language';
279
+ operator: 'equals' | 'not_equals';
280
+ url: string;
281
+ value: string;
282
+ }
283
+ }
284
+ export type LinkListResponse = Array<Link>;
285
+ export interface LinkDeleteResponse {
1148
286
  /**
1149
- * The folder ID to filter the links by.
287
+ * The ID of the link.
1150
288
  */
1151
- folderId?: string;
289
+ id: string;
290
+ }
291
+ export interface LinkCreateParams {
1152
292
  /**
1153
- * Geographic segmentation information for the short link in JSON format
1154
- * `{[COUNTRY]: https://example.com }`.
293
+ * The destination URL of the short link.
1155
294
  */
1156
- geo?: LinkListParams.Geo | null;
295
+ url: string;
1157
296
  /**
1158
- * Filter links that have comments (any comments)
297
+ * The Android destination URL for the short link for Android device targeting.
1159
298
  */
1160
- hasComments?: boolean;
299
+ android?: string | null;
1161
300
  /**
1162
- * Filter links that have custom social media cards
301
+ * Whether the short link is archived.
1163
302
  */
1164
- hasCustomSocial?: boolean;
303
+ archived?: boolean;
1165
304
  /**
1166
- * Filter links that have device targeting
305
+ * The comments for the short link.
1167
306
  */
1168
- hasDevice?: boolean;
307
+ comments?: string | null;
1169
308
  /**
1170
- * Filter links that have expiration date (any expiration)
309
+ * The description of the short link generated via `api.codeqr.io/metatags`. Will
310
+ * be used for custom link preview if `proxy` is true.
1171
311
  */
1172
- hasExpiration?: boolean;
312
+ description?: string | null;
1173
313
  /**
1174
- * Filter links that have geo-targeting
314
+ * Allow search engines to index your short link. Default is `false` if not
315
+ * provided. Learn more: https://codeqr.link/noindex
1175
316
  */
1176
- hasGeo?: boolean;
317
+ doIndex?: boolean;
1177
318
  /**
1178
- * Filter links that have password protection (any password)
319
+ * The domain of the short link. If not provided, the main domain of the project
320
+ * will be used (or `codeqr.link` if the project has no domains).
1179
321
  */
1180
- hasPassword?: boolean;
322
+ domain?: string;
1181
323
  /**
1182
- * Filter links that have tags (any tags)
324
+ * The URL to redirect to when the short link expires.
1183
325
  */
1184
- hasTags?: boolean;
326
+ expiredUrl?: string | null;
1185
327
  /**
1186
- * Filter links that have UTM parameters
328
+ * The date and time when the short link will expire in ISO-8601 format. Must be in
329
+ * the future.
1187
330
  */
1188
- hasUTM?: boolean;
331
+ expiresAt?: string | null;
1189
332
  /**
1190
- * The iOS device to filter by.
333
+ * This is the ID of the link in your database. If set, it can be used to identify
334
+ * the link in the future. Must be prefixed with `ext_` when passed as a query
335
+ * parameter.
1191
336
  */
1192
- ios?: string;
337
+ externalId?: string | null;
1193
338
  /**
1194
- * Link IDs to filter by.
339
+ * Whether the short link is flexible.
1195
340
  */
1196
- linkIds?: string | Array<string>;
341
+ flexible?: boolean;
1197
342
  /**
1198
- * The page number for pagination.
343
+ * The unique ID existing folder to assign the short link to.
1199
344
  */
1200
- page?: number;
345
+ folderId?: string | null;
1201
346
  /**
1202
- * The number of items per page.
347
+ * Geographic targeting information for the short link in JSON format
348
+ * `{[COUNTRY]: https://example.com }`.
1203
349
  */
1204
- pageSize?: number;
350
+ geo?: LinkCreateParams.Geo | null;
1205
351
  /**
1206
- * The password to filter by.
352
+ * The image of the short link generated via `api.codeqr.io/metatags`. Will be used
353
+ * for custom link preview if `proxy` is true.
1207
354
  */
1208
- password?: string;
355
+ image?: string | null;
1209
356
  /**
1210
- * The slug of the project to which the link belongs. For example, for
1211
- * `app.codeqr.io/acme`, the projectSlug is `acme`.
357
+ * The iOS destination URL for the short link for iOS device targeting.
1212
358
  */
1213
- projectSlug?: string;
359
+ ios?: string | null;
1214
360
  /**
1215
- * The search term to filter the links. The search term will be matched against the
1216
- * short link slug and the destination URL.
361
+ * If the form is mandatory for the page.
1217
362
  */
1218
- search?: string;
363
+ isFormMandatory?: boolean;
1219
364
  /**
1220
- * If should include archived links in the response. The default is `false` if not
1221
- * provided.
365
+ * The slug of the short link. If not provided, a random 7-character slug will be
366
+ * generated.
1222
367
  */
1223
- showArchived?: boolean;
368
+ key?: string;
1224
369
  /**
1225
- * The field to sort the links by. The default is `createdAt`, and sort order is
1226
- * always descending.
370
+ * The ID of the page to redirect to before the link destination.
1227
371
  */
1228
- sort?: 'createdAt' | 'clicks' | 'lastClicked';
372
+ pageId?: string | null;
1229
373
  /**
1230
- * @deprecated [OBSOLETO (use tagIds em vez disso)]: The unique ID of the tag
1231
- * assigned to the short link.
374
+ * The URL of the page to redirect to before the link destination.
1232
375
  */
1233
- tagId?: string;
376
+ pageUrl?: string | null;
1234
377
  /**
1235
- * The IDs of the tags to filter the links.
378
+ * The password required to access the short link destination URL.
379
+ */
380
+ password?: string | null;
381
+ /**
382
+ * The prefix of the short link slug for randomly generated keys (for example, if
383
+ * the prefix is `/c/`, the generated keys will be in the format `/c/:key`). Will
384
+ * be ignored if `key` is provided.
385
+ */
386
+ prefix?: string;
387
+ /**
388
+ * Whether the short link has pre-redirection.
389
+ */
390
+ preRedirection?: boolean;
391
+ /**
392
+ * Whether the short link uses the custom link preview feature.
393
+ */
394
+ proxy?: boolean;
395
+ /**
396
+ * Whether the short link statistics are publicly accessible.
397
+ */
398
+ publicStats?: boolean;
399
+ /**
400
+ * Whether the short link uses link cloaking.
401
+ */
402
+ rewrite?: boolean;
403
+ /**
404
+ * Smart rules for conditional destination routing by request attribute.
405
+ */
406
+ rules?: Array<LinkCreateParams.Rule> | null;
407
+ /**
408
+ * @deprecated The unique ID of the tag assigned to the short link. This field is
409
+ * deprecated – use `tagIds` instead.
410
+ */
411
+ tagId?: string | null;
412
+ /**
413
+ * The unique IDs of the tags assigned to the short link.
1236
414
  */
1237
415
  tagIds?: string | Array<string>;
1238
416
  /**
@@ -1240,22 +418,31 @@ export interface LinkListParams {
1240
418
  */
1241
419
  tagNames?: string | Array<string>;
1242
420
  /**
1243
- * If should include links with conversion tracking enabled. The default is `false`
1244
- * if not provided.
421
+ * The title of the short link generated via `api.codeqr.io/metatags`. Will be used
422
+ * for custom link preview if `proxy` is true.
423
+ */
424
+ title?: string | null;
425
+ /**
426
+ * Whether to track conversions for the short link.
1245
427
  */
1246
428
  trackConversion?: boolean;
1247
429
  /**
1248
- * The ID of the user to filter by.
430
+ * Whether this link should be used as a reusable template.
1249
431
  */
1250
- userId?: string;
432
+ useAsTemplate?: boolean;
1251
433
  /**
1252
- * If should include tags in the response. The default is `false` if not provided.
434
+ * The video of the short link.
1253
435
  */
1254
- withTags?: boolean;
436
+ video?: string | null;
437
+ /**
438
+ * An array of webhook IDs to trigger when the link is clicked. These webhooks will
439
+ * receive click event data.
440
+ */
441
+ webhookIds?: Array<string> | null;
1255
442
  }
1256
- export declare namespace LinkListParams {
443
+ export declare namespace LinkCreateParams {
1257
444
  /**
1258
- * Geographic segmentation information for the short link in JSON format
445
+ * Geographic targeting information for the short link in JSON format
1259
446
  * `{[COUNTRY]: https://example.com }`.
1260
447
  */
1261
448
  interface Geo {
@@ -1510,8 +697,14 @@ export declare namespace LinkListParams {
1510
697
  ZM?: string;
1511
698
  ZW?: string;
1512
699
  }
700
+ interface Rule {
701
+ attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language';
702
+ operator: 'equals' | 'not_equals';
703
+ url: string;
704
+ value: string;
705
+ }
1513
706
  }
1514
- export interface LinkCountParams {
707
+ export interface LinkListParams {
1515
708
  /**
1516
709
  * The Android device to filter by.
1517
710
  */
@@ -1562,11 +755,7 @@ export interface LinkCountParams {
1562
755
  * Geographic segmentation information for the short link in JSON format
1563
756
  * `{[COUNTRY]: https://example.com }`.
1564
757
  */
1565
- geo?: LinkCountParams.Geo | null;
1566
- /**
1567
- * The field to group the links by.
1568
- */
1569
- groupBy?: 'domain' | 'tagId' | 'userId' | 'folderId';
758
+ geo?: LinkListParams.Geo | null;
1570
759
  /**
1571
760
  * Filter links that have comments (any comments)
1572
761
  */
@@ -1603,6 +792,18 @@ export interface LinkCountParams {
1603
792
  * The iOS device to filter by.
1604
793
  */
1605
794
  ios?: string;
795
+ /**
796
+ * Link IDs to filter by.
797
+ */
798
+ linkIds?: string | Array<string>;
799
+ /**
800
+ * The page number for pagination.
801
+ */
802
+ page?: number;
803
+ /**
804
+ * The number of items per page.
805
+ */
806
+ pageSize?: number;
1606
807
  /**
1607
808
  * The password to filter by.
1608
809
  */
@@ -1622,6 +823,11 @@ export interface LinkCountParams {
1622
823
  * provided.
1623
824
  */
1624
825
  showArchived?: boolean;
826
+ /**
827
+ * The field to sort the links by. The default is `createdAt`, and sort order is
828
+ * always descending.
829
+ */
830
+ sort?: 'createdAt' | 'clicks' | 'lastClicked';
1625
831
  /**
1626
832
  * @deprecated [OBSOLETO (use tagIds em vez disso)]: The unique ID of the tag
1627
833
  * assigned to the short link.
@@ -1640,16 +846,40 @@ export interface LinkCountParams {
1640
846
  * if not provided.
1641
847
  */
1642
848
  trackConversion?: boolean;
849
+ /**
850
+ * Filter links marked as templates.
851
+ */
852
+ useAsTemplate?: boolean;
1643
853
  /**
1644
854
  * The ID of the user to filter by.
1645
855
  */
1646
856
  userId?: string;
857
+ /**
858
+ * Filter by UTM campaign value
859
+ */
860
+ utm_campaign?: string;
861
+ /**
862
+ * Filter by UTM content value
863
+ */
864
+ utm_content?: string;
865
+ /**
866
+ * Filter by UTM medium value
867
+ */
868
+ utm_medium?: string;
869
+ /**
870
+ * Filter by UTM source value
871
+ */
872
+ utm_source?: string;
873
+ /**
874
+ * Filter by UTM term value
875
+ */
876
+ utm_term?: string;
1647
877
  /**
1648
878
  * If should include tags in the response. The default is `false` if not provided.
1649
879
  */
1650
880
  withTags?: boolean;
1651
881
  }
1652
- export declare namespace LinkCountParams {
882
+ export declare namespace LinkListParams {
1653
883
  /**
1654
884
  * Geographic segmentation information for the short link in JSON format
1655
885
  * `{[COUNTRY]: https://example.com }`.
@@ -1933,11 +1163,7 @@ export interface LinkRetrieveInfoParams {
1933
1163
  */
1934
1164
  linkId?: string;
1935
1165
  }
1936
- export interface LinkUpsertParams {
1937
- /**
1938
- * The destination URL of the short link.
1939
- */
1940
- url: string;
1166
+ export interface LinkUpdateParams {
1941
1167
  /**
1942
1168
  * The Android destination URL for the short link for Android device targeting.
1943
1169
  */
@@ -1992,7 +1218,7 @@ export interface LinkUpsertParams {
1992
1218
  * Geographic targeting information for the short link in JSON format
1993
1219
  * `{[COUNTRY]: https://example.com }`.
1994
1220
  */
1995
- geo?: LinkUpsertParams.Geo | null;
1221
+ geo?: LinkUpdateParams.Geo | null;
1996
1222
  /**
1997
1223
  * The image of the short link generated via `api.codeqr.io/metatags`. Will be used
1998
1224
  * for custom link preview if `proxy` is true.
@@ -2045,6 +1271,10 @@ export interface LinkUpsertParams {
2045
1271
  * Whether the short link uses link cloaking.
2046
1272
  */
2047
1273
  rewrite?: boolean;
1274
+ /**
1275
+ * Smart rules for conditional destination routing by request attribute.
1276
+ */
1277
+ rules?: Array<LinkUpdateParams.Rule> | null;
2048
1278
  /**
2049
1279
  * @deprecated The unique ID of the tag assigned to the short link. This field is
2050
1280
  * deprecated – use `tagIds` instead.
@@ -2067,6 +1297,14 @@ export interface LinkUpsertParams {
2067
1297
  * Whether to track conversions for the short link.
2068
1298
  */
2069
1299
  trackConversion?: boolean;
1300
+ /**
1301
+ * The destination URL of the short link.
1302
+ */
1303
+ url?: string;
1304
+ /**
1305
+ * Whether this link should be used as a reusable template.
1306
+ */
1307
+ useAsTemplate?: boolean;
2070
1308
  /**
2071
1309
  * The video of the short link.
2072
1310
  */
@@ -2077,7 +1315,7 @@ export interface LinkUpsertParams {
2077
1315
  */
2078
1316
  webhookIds?: Array<string> | null;
2079
1317
  }
2080
- export declare namespace LinkUpsertParams {
1318
+ export declare namespace LinkUpdateParams {
2081
1319
  /**
2082
1320
  * Geographic targeting information for the short link in JSON format
2083
1321
  * `{[COUNTRY]: https://example.com }`.
@@ -2334,9 +1572,15 @@ export declare namespace LinkUpsertParams {
2334
1572
  ZM?: string;
2335
1573
  ZW?: string;
2336
1574
  }
1575
+ interface Rule {
1576
+ attribute: 'device' | 'country' | 'utm_source' | 'utm_medium' | 'utm_campaign' | 'referrer' | 'language';
1577
+ operator: 'equals' | 'not_equals';
1578
+ url: string;
1579
+ value: string;
1580
+ }
2337
1581
  }
2338
1582
  export declare namespace Links {
2339
- export { type Link as Link, type LinkListResponse as LinkListResponse, type LinkDeleteResponse as LinkDeleteResponse, type LinkCountResponse as LinkCountResponse, type LinkCreateParams as LinkCreateParams, type LinkUpdateParams as LinkUpdateParams, type LinkListParams as LinkListParams, type LinkCountParams as LinkCountParams, type LinkRetrieveInfoParams as LinkRetrieveInfoParams, type LinkUpsertParams as LinkUpsertParams, };
2340
- export { Bulk as Bulk, type BulkCreateResponse as BulkCreateResponse, type BulkDeleteResponse as BulkDeleteResponse, type BulkCreateParams as BulkCreateParams, type BulkDeleteParams as BulkDeleteParams, };
1583
+ export { type Link as Link, type LinkListResponse as LinkListResponse, type LinkDeleteResponse as LinkDeleteResponse, type LinkCreateParams as LinkCreateParams, type LinkListParams as LinkListParams, type LinkRetrieveInfoParams as LinkRetrieveInfoParams, type LinkUpdateParams as LinkUpdateParams, };
1584
+ export { Bulk as Bulk, type BulkCreateResponse as BulkCreateResponse, type BulkCreateParams as BulkCreateParams, };
2341
1585
  }
2342
1586
  //# sourceMappingURL=links.d.ts.map