dub 0.2.2.pre.alpha.97 → 0.2.2

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 (251) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dub.rb +6 -9
  3. data/lib/open_api_sdk/analytics.rb +17 -72
  4. data/lib/open_api_sdk/domains.rb +95 -312
  5. data/lib/open_api_sdk/dub.rb +46 -56
  6. data/lib/open_api_sdk/links.rb +188 -799
  7. data/lib/open_api_sdk/metatags.rb +54 -0
  8. data/lib/open_api_sdk/models/operations/bulkcreatelinks_response.rb +7 -7
  9. data/lib/open_api_sdk/models/operations/bulkupdatelinks_requestbody.rb +6 -9
  10. data/lib/open_api_sdk/models/operations/bulkupdatelinks_response.rb +2 -2
  11. data/lib/open_api_sdk/models/operations/color.rb +2 -1
  12. data/lib/open_api_sdk/models/operations/createdomain_requestbody.rb +4 -16
  13. data/lib/open_api_sdk/models/operations/createdomain_response.rb +2 -2
  14. data/lib/open_api_sdk/models/operations/createlink_requestbody.rb +13 -60
  15. data/lib/open_api_sdk/models/operations/createlink_response.rb +2 -2
  16. data/lib/open_api_sdk/models/operations/createtag_requestbody.rb +2 -2
  17. data/lib/open_api_sdk/models/operations/createtag_response.rb +2 -2
  18. data/lib/open_api_sdk/models/operations/data.rb +12 -59
  19. data/lib/open_api_sdk/models/operations/deletedomain_request.rb +2 -2
  20. data/lib/open_api_sdk/models/operations/deletedomain_response.rb +2 -2
  21. data/lib/open_api_sdk/models/operations/deletedomain_responsebody.rb +2 -2
  22. data/lib/open_api_sdk/models/operations/deletelink_request.rb +2 -2
  23. data/lib/open_api_sdk/models/operations/deletelink_response.rb +3 -3
  24. data/lib/open_api_sdk/models/operations/deletelink_responsebody.rb +3 -3
  25. data/lib/open_api_sdk/models/operations/event.rb +3 -2
  26. data/lib/open_api_sdk/models/operations/getlinkinfo_request.rb +3 -3
  27. data/lib/open_api_sdk/models/operations/getlinkinfo_response.rb +2 -2
  28. data/lib/open_api_sdk/models/operations/getlinks_request.rb +11 -26
  29. data/lib/open_api_sdk/models/operations/getlinks_response.rb +2 -2
  30. data/lib/open_api_sdk/models/operations/getlinkscount_request.rb +8 -14
  31. data/lib/open_api_sdk/models/operations/getlinkscount_response.rb +2 -2
  32. data/lib/open_api_sdk/models/operations/getmetatags_request.rb +24 -0
  33. data/lib/open_api_sdk/models/operations/getmetatags_response.rb +33 -0
  34. data/lib/open_api_sdk/models/operations/getmetatags_responsebody.rb +30 -0
  35. data/lib/open_api_sdk/models/operations/getqrcode_request.rb +5 -14
  36. data/lib/open_api_sdk/models/operations/getqrcode_response.rb +2 -2
  37. data/lib/open_api_sdk/models/operations/gettags_response.rb +2 -2
  38. data/lib/open_api_sdk/models/operations/getworkspace_request.rb +2 -2
  39. data/lib/open_api_sdk/models/operations/getworkspace_response.rb +2 -2
  40. data/lib/open_api_sdk/models/operations/groupby.rb +4 -12
  41. data/lib/open_api_sdk/models/operations/interval.rb +5 -5
  42. data/lib/open_api_sdk/models/operations/level.rb +2 -1
  43. data/lib/open_api_sdk/models/operations/listdomains_response.rb +2 -2
  44. data/lib/open_api_sdk/models/operations/paymentprocessor.rb +2 -3
  45. data/lib/open_api_sdk/models/operations/requestbody.rb +13 -60
  46. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +11 -56
  47. data/lib/open_api_sdk/models/operations/retrieveanalytics_response.rb +2 -2
  48. data/lib/open_api_sdk/models/operations/sort.rb +3 -5
  49. data/lib/open_api_sdk/models/operations/trackcustomer_requestbody.rb +33 -0
  50. data/lib/open_api_sdk/models/operations/{createpartner_response.rb → trackcustomer_response.rb} +5 -5
  51. data/lib/open_api_sdk/models/operations/trackcustomer_responsebody.rb +33 -0
  52. data/lib/open_api_sdk/models/operations/tracklead_requestbody.rb +13 -19
  53. data/lib/open_api_sdk/models/operations/tracklead_response.rb +2 -2
  54. data/lib/open_api_sdk/models/operations/tracklead_responsebody.rb +23 -8
  55. data/lib/open_api_sdk/models/operations/tracksale_requestbody.rb +11 -14
  56. data/lib/open_api_sdk/models/operations/tracksale_response.rb +2 -2
  57. data/lib/open_api_sdk/models/operations/tracksale_responsebody.rb +20 -8
  58. data/lib/open_api_sdk/models/operations/updatedomain_request.rb +2 -2
  59. data/lib/open_api_sdk/models/operations/updatedomain_requestbody.rb +4 -16
  60. data/lib/open_api_sdk/models/operations/updatedomain_response.rb +2 -2
  61. data/lib/open_api_sdk/models/operations/updatelink_request.rb +2 -2
  62. data/lib/open_api_sdk/models/operations/updatelink_requestbody.rb +14 -61
  63. data/lib/open_api_sdk/models/operations/updatelink_response.rb +2 -2
  64. data/lib/open_api_sdk/models/operations/updatetag_color.rb +2 -1
  65. data/lib/open_api_sdk/models/operations/updatetag_request.rb +2 -2
  66. data/lib/open_api_sdk/models/operations/updatetag_requestbody.rb +2 -2
  67. data/lib/open_api_sdk/models/operations/updatetag_response.rb +2 -2
  68. data/lib/open_api_sdk/models/operations/updateworkspace_request.rb +2 -2
  69. data/lib/open_api_sdk/models/operations/updateworkspace_requestbody.rb +4 -13
  70. data/lib/open_api_sdk/models/operations/updateworkspace_response.rb +2 -2
  71. data/lib/open_api_sdk/models/operations/upsertlink_requestbody.rb +13 -60
  72. data/lib/open_api_sdk/models/operations/upsertlink_response.rb +2 -2
  73. data/lib/open_api_sdk/models/operations.rb +25 -131
  74. data/lib/open_api_sdk/models/shared/badrequest.rb +3 -3
  75. data/lib/open_api_sdk/models/shared/code.rb +2 -1
  76. data/lib/open_api_sdk/models/shared/color.rb +2 -1
  77. data/lib/open_api_sdk/models/shared/conflict.rb +3 -3
  78. data/lib/open_api_sdk/models/shared/conflict_code.rb +2 -1
  79. data/lib/open_api_sdk/models/shared/conflict_error.rb +2 -2
  80. data/lib/open_api_sdk/models/shared/countrycode.rb +2 -1
  81. data/lib/open_api_sdk/models/shared/domains.rb +4 -7
  82. data/lib/open_api_sdk/models/shared/domainschema.rb +4 -19
  83. data/lib/open_api_sdk/models/shared/error.rb +2 -2
  84. data/lib/open_api_sdk/models/shared/forbidden.rb +3 -3
  85. data/lib/open_api_sdk/models/shared/forbidden_code.rb +2 -1
  86. data/lib/open_api_sdk/models/shared/forbidden_error.rb +2 -2
  87. data/lib/open_api_sdk/models/shared/geo.rb +2 -2
  88. data/lib/open_api_sdk/models/shared/internalservererror.rb +3 -3
  89. data/lib/open_api_sdk/models/shared/internalservererror_code.rb +2 -1
  90. data/lib/open_api_sdk/models/shared/internalservererror_error.rb +2 -2
  91. data/lib/open_api_sdk/models/shared/inviteexpired.rb +3 -3
  92. data/lib/open_api_sdk/models/shared/inviteexpired_code.rb +2 -1
  93. data/lib/open_api_sdk/models/shared/inviteexpired_error.rb +2 -2
  94. data/lib/open_api_sdk/models/shared/linkgeotargeting.rb +2 -2
  95. data/lib/open_api_sdk/models/shared/linkschema.rb +11 -41
  96. data/lib/open_api_sdk/models/shared/notfound.rb +3 -3
  97. data/lib/open_api_sdk/models/shared/notfound_code.rb +2 -1
  98. data/lib/open_api_sdk/models/shared/notfound_error.rb +2 -2
  99. data/lib/open_api_sdk/models/shared/plan.rb +2 -2
  100. data/lib/open_api_sdk/models/shared/ratelimitexceeded.rb +3 -3
  101. data/lib/open_api_sdk/models/shared/ratelimitexceeded_code.rb +2 -1
  102. data/lib/open_api_sdk/models/shared/ratelimitexceeded_error.rb +2 -2
  103. data/lib/open_api_sdk/models/shared/role.rb +2 -1
  104. data/lib/open_api_sdk/models/shared/security.rb +4 -4
  105. data/lib/open_api_sdk/models/shared/tagschema.rb +2 -2
  106. data/lib/open_api_sdk/models/shared/unauthorized.rb +3 -3
  107. data/lib/open_api_sdk/models/shared/unauthorized_code.rb +2 -1
  108. data/lib/open_api_sdk/models/shared/unauthorized_error.rb +2 -2
  109. data/lib/open_api_sdk/models/shared/unprocessableentity.rb +3 -3
  110. data/lib/open_api_sdk/models/shared/unprocessableentity_code.rb +2 -1
  111. data/lib/open_api_sdk/models/shared/unprocessableentity_error.rb +2 -2
  112. data/lib/open_api_sdk/models/shared/users.rb +4 -7
  113. data/lib/open_api_sdk/models/shared/workspaceschema.rb +8 -47
  114. data/lib/open_api_sdk/models/shared.rb +2 -8
  115. data/lib/open_api_sdk/qr_codes.rb +17 -71
  116. data/lib/open_api_sdk/sdkconfiguration.rb +10 -33
  117. data/lib/open_api_sdk/tags.rb +68 -366
  118. data/lib/open_api_sdk/track.rb +122 -148
  119. data/lib/{crystalline → open_api_sdk/utils}/metadata_fields.rb +20 -33
  120. data/lib/{crystalline → open_api_sdk/utils}/t.rb +1 -1
  121. data/lib/open_api_sdk/utils/utils.rb +60 -26
  122. data/lib/open_api_sdk/workspaces.rb +36 -145
  123. metadata +17 -181
  124. data/lib/crystalline/utils.rb +0 -65
  125. data/lib/crystalline.rb +0 -12
  126. data/lib/open_api_sdk/customers.rb +0 -709
  127. data/lib/open_api_sdk/embed_tokens.rb +0 -163
  128. data/lib/open_api_sdk/events.rb +0 -154
  129. data/lib/open_api_sdk/folders.rb +0 -570
  130. data/lib/open_api_sdk/models/operations/accesslevel.rb +0 -18
  131. data/lib/open_api_sdk/models/operations/bulkcreatelinks_testvariants.rb +0 -27
  132. data/lib/open_api_sdk/models/operations/bulkdeletelinks_request.rb +0 -24
  133. data/lib/open_api_sdk/models/operations/bulkdeletelinks_response.rb +0 -60
  134. data/lib/open_api_sdk/models/operations/bulkdeletelinks_responsebody.rb +0 -24
  135. data/lib/open_api_sdk/models/operations/bulkupdatelinks_testvariants.rb +0 -27
  136. data/lib/open_api_sdk/models/operations/click.rb +0 -24
  137. data/lib/open_api_sdk/models/operations/country.rb +0 -266
  138. data/lib/open_api_sdk/models/operations/createcustomer_discount.rb +0 -45
  139. data/lib/open_api_sdk/models/operations/createcustomer_link.rb +0 -39
  140. data/lib/open_api_sdk/models/operations/createcustomer_partner.rb +0 -33
  141. data/lib/open_api_sdk/models/operations/createcustomer_requestbody.rb +0 -33
  142. data/lib/open_api_sdk/models/operations/createcustomer_response.rb +0 -60
  143. data/lib/open_api_sdk/models/operations/createcustomer_responsebody.rb +0 -60
  144. data/lib/open_api_sdk/models/operations/createcustomer_type.rb +0 -18
  145. data/lib/open_api_sdk/models/operations/createfolder_requestbody.rb +0 -27
  146. data/lib/open_api_sdk/models/operations/createfolder_response.rb +0 -60
  147. data/lib/open_api_sdk/models/operations/createpartner_link.rb +0 -48
  148. data/lib/open_api_sdk/models/operations/createpartner_requestbody.rb +0 -48
  149. data/lib/open_api_sdk/models/operations/createpartner_responsebody.rb +0 -81
  150. data/lib/open_api_sdk/models/operations/createpartner_testvariants.rb +0 -27
  151. data/lib/open_api_sdk/models/operations/createpartnerlink_linkprops.rb +0 -108
  152. data/lib/open_api_sdk/models/operations/createpartnerlink_requestbody.rb +0 -42
  153. data/lib/open_api_sdk/models/operations/createpartnerlink_response.rb +0 -60
  154. data/lib/open_api_sdk/models/operations/createpartnerlink_testvariants.rb +0 -27
  155. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_country.rb +0 -266
  156. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_linkprops.rb +0 -108
  157. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_requestbody.rb +0 -33
  158. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_response.rb +0 -60
  159. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_responsebody.rb +0 -27
  160. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_testvariants.rb +0 -27
  161. data/lib/open_api_sdk/models/operations/customer.rb +0 -33
  162. data/lib/open_api_sdk/models/operations/deletecustomer_request.rb +0 -24
  163. data/lib/open_api_sdk/models/operations/deletecustomer_response.rb +0 -60
  164. data/lib/open_api_sdk/models/operations/deletecustomer_responsebody.rb +0 -24
  165. data/lib/open_api_sdk/models/operations/deletefolder_request.rb +0 -24
  166. data/lib/open_api_sdk/models/operations/deletefolder_response.rb +0 -60
  167. data/lib/open_api_sdk/models/operations/deletefolder_responsebody.rb +0 -24
  168. data/lib/open_api_sdk/models/operations/deletetag_request.rb +0 -24
  169. data/lib/open_api_sdk/models/operations/deletetag_response.rb +0 -60
  170. data/lib/open_api_sdk/models/operations/deletetag_responsebody.rb +0 -24
  171. data/lib/open_api_sdk/models/operations/discount.rb +0 -45
  172. data/lib/open_api_sdk/models/operations/getcustomer_discount.rb +0 -45
  173. data/lib/open_api_sdk/models/operations/getcustomer_link.rb +0 -39
  174. data/lib/open_api_sdk/models/operations/getcustomer_partner.rb +0 -33
  175. data/lib/open_api_sdk/models/operations/getcustomer_request.rb +0 -27
  176. data/lib/open_api_sdk/models/operations/getcustomer_response.rb +0 -60
  177. data/lib/open_api_sdk/models/operations/getcustomer_responsebody.rb +0 -60
  178. data/lib/open_api_sdk/models/operations/getcustomer_type.rb +0 -18
  179. data/lib/open_api_sdk/models/operations/getcustomers_link.rb +0 -39
  180. data/lib/open_api_sdk/models/operations/getcustomers_partner.rb +0 -33
  181. data/lib/open_api_sdk/models/operations/getcustomers_queryparam_sortby.rb +0 -18
  182. data/lib/open_api_sdk/models/operations/getcustomers_queryparam_sortorder.rb +0 -18
  183. data/lib/open_api_sdk/models/operations/getcustomers_request.rb +0 -51
  184. data/lib/open_api_sdk/models/operations/getcustomers_response.rb +0 -60
  185. data/lib/open_api_sdk/models/operations/getcustomers_type.rb +0 -18
  186. data/lib/open_api_sdk/models/operations/gettags_queryparam_sortby.rb +0 -18
  187. data/lib/open_api_sdk/models/operations/gettags_queryparam_sortorder.rb +0 -18
  188. data/lib/open_api_sdk/models/operations/gettags_request.rb +0 -39
  189. data/lib/open_api_sdk/models/operations/link.rb +0 -48
  190. data/lib/open_api_sdk/models/operations/linkprops.rb +0 -108
  191. data/lib/open_api_sdk/models/operations/listdomains_request.rb +0 -33
  192. data/lib/open_api_sdk/models/operations/listevents_request.rb +0 -138
  193. data/lib/open_api_sdk/models/operations/listevents_response.rb +0 -60
  194. data/lib/open_api_sdk/models/operations/listfolders_request.rb +0 -33
  195. data/lib/open_api_sdk/models/operations/listfolders_response.rb +0 -60
  196. data/lib/open_api_sdk/models/operations/mode.rb +0 -18
  197. data/lib/open_api_sdk/models/operations/order.rb +0 -20
  198. data/lib/open_api_sdk/models/operations/partner.rb +0 -45
  199. data/lib/open_api_sdk/models/operations/queryparam_event.rb +0 -19
  200. data/lib/open_api_sdk/models/operations/queryparam_groupby.rb +0 -19
  201. data/lib/open_api_sdk/models/operations/queryparam_interval.rb +0 -25
  202. data/lib/open_api_sdk/models/operations/queryparam_sortby.rb +0 -17
  203. data/lib/open_api_sdk/models/operations/queryparam_sortorder.rb +0 -18
  204. data/lib/open_api_sdk/models/operations/queryparam_trigger.rb +0 -18
  205. data/lib/open_api_sdk/models/operations/responsebody.rb +0 -60
  206. data/lib/open_api_sdk/models/operations/retrievelinks_request.rb +0 -30
  207. data/lib/open_api_sdk/models/operations/retrievelinks_response.rb +0 -60
  208. data/lib/open_api_sdk/models/operations/retrievepartneranalytics_queryparam_interval.rb +0 -25
  209. data/lib/open_api_sdk/models/operations/retrievepartneranalytics_request.rb +0 -45
  210. data/lib/open_api_sdk/models/operations/retrievepartneranalytics_response.rb +0 -60
  211. data/lib/open_api_sdk/models/operations/sale.rb +0 -36
  212. data/lib/open_api_sdk/models/operations/sortby.rb +0 -20
  213. data/lib/open_api_sdk/models/operations/sortorder.rb +0 -18
  214. data/lib/open_api_sdk/models/operations/status.rb +0 -22
  215. data/lib/open_api_sdk/models/operations/testvariants.rb +0 -27
  216. data/lib/open_api_sdk/models/operations/tracksale_customer.rb +0 -36
  217. data/lib/open_api_sdk/models/operations/trigger.rb +0 -18
  218. data/lib/open_api_sdk/models/operations/type.rb +0 -19
  219. data/lib/open_api_sdk/models/operations/updatecustomer_discount.rb +0 -45
  220. data/lib/open_api_sdk/models/operations/updatecustomer_link.rb +0 -39
  221. data/lib/open_api_sdk/models/operations/updatecustomer_partner.rb +0 -33
  222. data/lib/open_api_sdk/models/operations/updatecustomer_request.rb +0 -30
  223. data/lib/open_api_sdk/models/operations/updatecustomer_requestbody.rb +0 -33
  224. data/lib/open_api_sdk/models/operations/updatecustomer_response.rb +0 -60
  225. data/lib/open_api_sdk/models/operations/updatecustomer_responsebody.rb +0 -60
  226. data/lib/open_api_sdk/models/operations/updatecustomer_type.rb +0 -18
  227. data/lib/open_api_sdk/models/operations/updatefolder_accesslevel.rb +0 -18
  228. data/lib/open_api_sdk/models/operations/updatefolder_request.rb +0 -27
  229. data/lib/open_api_sdk/models/operations/updatefolder_requestbody.rb +0 -27
  230. data/lib/open_api_sdk/models/operations/updatefolder_response.rb +0 -60
  231. data/lib/open_api_sdk/models/operations/updatelink_testvariants.rb +0 -27
  232. data/lib/open_api_sdk/models/operations/updatepartnersale_requestbody.rb +0 -36
  233. data/lib/open_api_sdk/models/operations/updatepartnersale_response.rb +0 -60
  234. data/lib/open_api_sdk/models/operations/updatepartnersale_responsebody.rb +0 -48
  235. data/lib/open_api_sdk/models/operations/updatepartnersale_status.rb +0 -23
  236. data/lib/open_api_sdk/models/operations/upsertlink_testvariants.rb +0 -27
  237. data/lib/open_api_sdk/models/operations/upsertpartnerlink_linkprops.rb +0 -108
  238. data/lib/open_api_sdk/models/operations/upsertpartnerlink_requestbody.rb +0 -42
  239. data/lib/open_api_sdk/models/operations/upsertpartnerlink_response.rb +0 -60
  240. data/lib/open_api_sdk/models/operations/upsertpartnerlink_testvariants.rb +0 -27
  241. data/lib/open_api_sdk/models/shared/accesslevel.rb +0 -18
  242. data/lib/open_api_sdk/models/shared/continentcode.rb +0 -23
  243. data/lib/open_api_sdk/models/shared/folderschema.rb +0 -42
  244. data/lib/open_api_sdk/models/shared/registereddomain.rb +0 -30
  245. data/lib/open_api_sdk/models/shared/testvariants.rb +0 -27
  246. data/lib/open_api_sdk/models/shared/type.rb +0 -18
  247. data/lib/open_api_sdk/partners.rb +0 -840
  248. data/lib/open_api_sdk/sdk_hooks/hooks.rb +0 -103
  249. data/lib/open_api_sdk/sdk_hooks/registration.rb +0 -35
  250. data/lib/open_api_sdk/sdk_hooks/types.rb +0 -152
  251. data/lib/open_api_sdk/utils/retries.rb +0 -95
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -8,18 +8,18 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
 
11
- class RequestBody < ::Crystalline::FieldAugmented
11
+ class RequestBody < ::OpenApiSDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
  # The destination URL of the short link.
15
15
  field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url') } }
16
16
  # The Android destination URL for the short link for Android device targeting.
17
17
  field :android, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('android') } }
18
- # Whether the short link is archived. Defaults to `false` if not provided.
18
+ # Whether the short link is archived.
19
19
  field :archived, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('archived') } }
20
20
  # The comments for the short link.
21
21
  field :comments, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('comments') } }
22
- # The custom link preview description (og:description). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
22
+ # The description of the short link generated via `api.dub.co/metatags`. Will be used for Custom Social Media Cards if `proxy` is true.
23
23
  field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('description') } }
24
24
  # Allow search engines to index your short link. Defaults to `false` if not provided. Learn more: https://d.to/noindex
25
25
  field :do_index, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('doIndex') } }
@@ -29,35 +29,25 @@ module OpenApiSDK
29
29
  field :expired_url, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiredUrl') } }
30
30
  # The date and time when the short link will expire at.
31
31
  field :expires_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt') } }
32
- # The ID of the link in your database. If set, it can be used to identify the link in future API requests (must be prefixed with 'ext_' when passed as a query parameter). This key is unique across your workspace.
32
+ # This is the ID of the link in your database. If set, it can be used to identify the link in the future. Must be prefixed with `ext_` when passed as a query parameter.
33
33
  field :external_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId') } }
34
- # The unique ID existing folder to assign the short link to.
35
- field :folder_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('folderId') } }
36
34
  # Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`.
37
35
  field :geo, T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo') } }
38
- # The custom link preview image (og:image). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
36
+ # The image of the short link generated via `api.dub.co/metatags`. Will be used for Custom Social Media Cards if `proxy` is true.
39
37
  field :image, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('image') } }
40
38
  # The iOS destination URL for the short link for iOS device targeting.
41
39
  field :ios, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('ios') } }
42
40
  # The short link slug. If not provided, a random 7-character slug will be generated.
43
41
  field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('key') } }
44
- # The ID of the partner the short link is associated with.
45
- field :partner_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partnerId') } }
46
42
  # The password required to access the destination URL of the short link.
47
43
  field :password, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('password') } }
48
44
  # The prefix of the short link slug for randomly-generated keys (e.g. if prefix is `/c/`, generated keys will be in the `/c/:key` format). Will be ignored if `key` is provided.
49
45
  field :prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('prefix') } }
50
- # The ID of the program the short link is associated with.
51
- field :program_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('programId') } }
52
- # Whether the short link uses Custom Social Media Cards feature. Defaults to `false` if not provided.
46
+ # Whether the short link uses Custom Social Media Cards feature.
53
47
  field :proxy, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('proxy') } }
54
- # Deprecated: Use `dashboard` instead. Whether the short link's stats are publicly accessible. Defaults to `false` if not provided.
55
- #
56
- # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
48
+ # Whether the short link's stats are publicly accessible.
57
49
  field :public_stats, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('publicStats') } }
58
- # The referral tag of the short link. If set, this will populate or override the `ref` query parameter in the destination URL.
59
- field :ref, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('ref') } }
60
- # Whether the short link uses link cloaking. Defaults to `false` if not provided.
50
+ # Whether the short link uses link cloaking.
61
51
  field :rewrite, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rewrite') } }
62
52
  # The unique ID of the tag assigned to the short link. This field is deprecated – use `tagIds` instead.
63
53
  #
@@ -67,36 +57,14 @@ module OpenApiSDK
67
57
  field :tag_ids, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagIds') } }
68
58
  # The unique name of the tags assigned to the short link (case insensitive).
69
59
  field :tag_names, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagNames') } }
70
- # The ID of the tenant that created the link inside your system. If set, it can be used to fetch all links for a tenant.
71
- field :tenant_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId') } }
72
- # The date and time when the tests were or will be completed.
73
- field :test_completed_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt') } }
74
- # The date and time when the tests started.
75
- field :test_started_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt') } }
76
- # An array of A/B test URLs and the percentage of traffic to send to each URL.
77
- field :test_variants, T.nilable(T::Array[::OpenApiSDK::Operations::BulkCreateLinksTestVariants]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testVariants') } }
78
- # The custom link preview title (og:title). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
60
+ # The title of the short link generated via `api.dub.co/metatags`. Will be used for Custom Social Media Cards if `proxy` is true.
79
61
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('title') } }
80
- # Whether to track conversions for the short link. Defaults to `false` if not provided.
62
+ # Whether to track conversions for the short link.
81
63
  field :track_conversion, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('trackConversion') } }
82
- # The UTM campaign of the short link. If set, this will populate or override the UTM campaign in the destination URL.
83
- field :utm_campaign, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_campaign') } }
84
- # The UTM content of the short link. If set, this will populate or override the UTM content in the destination URL.
85
- field :utm_content, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_content') } }
86
- # The UTM medium of the short link. If set, this will populate or override the UTM medium in the destination URL.
87
- field :utm_medium, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_medium') } }
88
- # The UTM source of the short link. If set, this will populate or override the UTM source in the destination URL.
89
- field :utm_source, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_source') } }
90
- # The UTM term of the short link. If set, this will populate or override the UTM term in the destination URL.
91
- field :utm_term, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_term') } }
92
- # The custom link preview video (og:video). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
93
- field :video, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('video') } }
94
- # An array of webhook IDs to trigger when the link is clicked. These webhooks will receive click event data.
95
- field :webhook_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('webhookIds') } }
96
64
 
97
65
 
98
- sig { params(url: ::String, android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), domain: T.nilable(::String), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), geo: T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), image: T.nilable(::String), ios: T.nilable(::String), key: T.nilable(::String), partner_id: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), program_id: T.nilable(::String), proxy: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_id: T.nilable(::String), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), test_completed_at: T.nilable(::String), test_started_at: T.nilable(::String), test_variants: T.nilable(T::Array[::OpenApiSDK::Operations::BulkCreateLinksTestVariants]), title: T.nilable(::String), track_conversion: T.nilable(T::Boolean), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String), webhook_ids: T.nilable(T::Array[::String])).void }
99
- def initialize(url: nil, android: nil, archived: nil, comments: nil, description: nil, do_index: nil, domain: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, geo: nil, image: nil, ios: nil, key: nil, partner_id: nil, password: nil, prefix: nil, program_id: nil, proxy: nil, public_stats: nil, ref: nil, rewrite: nil, tag_id: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, test_completed_at: nil, test_started_at: nil, test_variants: nil, title: nil, track_conversion: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil, webhook_ids: nil)
66
+ sig { params(url: ::String, android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), domain: T.nilable(::String), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), geo: T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), image: T.nilable(::String), ios: T.nilable(::String), key: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), proxy: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), rewrite: T.nilable(T::Boolean), tag_id: T.nilable(::String), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), title: T.nilable(::String), track_conversion: T.nilable(T::Boolean)).void }
67
+ def initialize(url: nil, android: nil, archived: nil, comments: nil, description: nil, do_index: nil, domain: nil, expired_url: nil, expires_at: nil, external_id: nil, geo: nil, image: nil, ios: nil, key: nil, password: nil, prefix: nil, proxy: nil, public_stats: nil, rewrite: nil, tag_id: nil, tag_ids: nil, tag_names: nil, title: nil, track_conversion: nil)
100
68
  @url = url
101
69
  @android = android
102
70
  @archived = archived
@@ -107,35 +75,20 @@ module OpenApiSDK
107
75
  @expired_url = expired_url
108
76
  @expires_at = expires_at
109
77
  @external_id = external_id
110
- @folder_id = folder_id
111
78
  @geo = geo
112
79
  @image = image
113
80
  @ios = ios
114
81
  @key = key
115
- @partner_id = partner_id
116
82
  @password = password
117
83
  @prefix = prefix
118
- @program_id = program_id
119
84
  @proxy = proxy
120
85
  @public_stats = public_stats
121
- @ref = ref
122
86
  @rewrite = rewrite
123
87
  @tag_id = tag_id
124
88
  @tag_ids = tag_ids
125
89
  @tag_names = tag_names
126
- @tenant_id = tenant_id
127
- @test_completed_at = test_completed_at
128
- @test_started_at = test_started_at
129
- @test_variants = test_variants
130
90
  @title = title
131
91
  @track_conversion = track_conversion
132
- @utm_campaign = utm_campaign
133
- @utm_content = utm_content
134
- @utm_medium = utm_medium
135
- @utm_source = utm_source
136
- @utm_term = utm_term
137
- @video = video
138
- @webhook_ids = webhook_ids
139
92
  end
140
93
  end
141
94
  end
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -8,34 +8,28 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
 
11
- class RetrieveAnalyticsRequest < ::Crystalline::FieldAugmented
11
+ class RetrieveAnalyticsRequest < ::OpenApiSDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
  # The browser to retrieve analytics for.
15
15
  field :browser, T.nilable(::String), { 'query_param': { 'field_name': 'browser', 'style': 'form', 'explode': true } }
16
16
  # The city to retrieve analytics for.
17
17
  field :city, T.nilable(::String), { 'query_param': { 'field_name': 'city', 'style': 'form', 'explode': true } }
18
- # The continent to retrieve analytics for.
19
- field :continent, T.nilable(::OpenApiSDK::Shared::ContinentCode), { 'query_param': { 'field_name': 'continent', 'style': 'form', 'explode': true } }
20
18
  # The country to retrieve analytics for.
21
19
  field :country, T.nilable(::OpenApiSDK::Shared::CountryCode), { 'query_param': { 'field_name': 'country', 'style': 'form', 'explode': true } }
22
- # The ID of the customer to retrieve analytics for.
23
- field :customer_id, T.nilable(::String), { 'query_param': { 'field_name': 'customerId', 'style': 'form', 'explode': true } }
24
20
  # The device to retrieve analytics for.
25
21
  field :device, T.nilable(::String), { 'query_param': { 'field_name': 'device', 'style': 'form', 'explode': true } }
26
22
  # The domain to filter analytics for.
27
23
  field :domain, T.nilable(::String), { 'query_param': { 'field_name': 'domain', 'style': 'form', 'explode': true } }
28
- # The end date and time when to retrieve analytics from. If not provided, defaults to the current date. If set along with `start`, takes precedence over `interval`.
24
+ # The end date and time when to retrieve analytics from. If not provided, defaults to the current date.
29
25
  field :end_, T.nilable(::String), { 'query_param': { 'field_name': 'end', 'style': 'form', 'explode': true } }
30
- # The type of event to retrieve analytics for. Defaults to `clicks`.
26
+ # The type of event to retrieve analytics for. Defaults to 'clicks'.
31
27
  field :event, T.nilable(::OpenApiSDK::Operations::Event), { 'query_param': { 'field_name': 'event', 'style': 'form', 'explode': true } }
32
28
  # This is the ID of the link in the your database. Must be prefixed with 'ext_' when passed as a query parameter.
33
29
  field :external_id, T.nilable(::String), { 'query_param': { 'field_name': 'externalId', 'style': 'form', 'explode': true } }
34
- # The folder ID to retrieve analytics for. If not provided, return analytics for unsorted links.
35
- field :folder_id, T.nilable(::String), { 'query_param': { 'field_name': 'folderId', 'style': 'form', 'explode': true } }
36
- # The parameter to group the analytics data points by. Defaults to `count` if undefined.
30
+ # The parameter to group the analytics data points by. Defaults to 'count' if undefined.
37
31
  field :group_by, T.nilable(::OpenApiSDK::Operations::GroupBy), { 'query_param': { 'field_name': 'groupBy', 'style': 'form', 'explode': true } }
38
- # The interval to retrieve analytics for. If undefined, defaults to 24h.
32
+ # The interval to retrieve analytics for. Takes precedence over start and end. If undefined, defaults to 24h.
39
33
  field :interval, T.nilable(::OpenApiSDK::Operations::Interval), { 'query_param': { 'field_name': 'interval', 'style': 'form', 'explode': true } }
40
34
  # The short link slug.
41
35
  field :key, T.nilable(::String), { 'query_param': { 'field_name': 'key', 'style': 'form', 'explode': true } }
@@ -43,83 +37,44 @@ module OpenApiSDK
43
37
  field :link_id, T.nilable(::String), { 'query_param': { 'field_name': 'linkId', 'style': 'form', 'explode': true } }
44
38
  # The OS to retrieve analytics for.
45
39
  field :os, T.nilable(::String), { 'query_param': { 'field_name': 'os', 'style': 'form', 'explode': true } }
46
- # The ID of the partner to retrieve analytics for.
47
- field :partner_id, T.nilable(::String), { 'query_param': { 'field_name': 'partnerId', 'style': 'form', 'explode': true } }
48
- # The ID of the program to retrieve analytics for.
49
- field :program_id, T.nilable(::String), { 'query_param': { 'field_name': 'programId', 'style': 'form', 'explode': true } }
50
- # Deprecated. Use the `trigger` field instead. Filter for QR code scans. If true, filter for QR codes only. If false, filter for links only. If undefined, return both.
40
+ # Filter for QR code scans. If true, filter for QR codes only. If false, filter for links only. If undefined, return both.
51
41
  field :qr, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'qr', 'style': 'form', 'explode': true } }
52
42
  # The referer to retrieve analytics for.
53
43
  field :referer, T.nilable(::String), { 'query_param': { 'field_name': 'referer', 'style': 'form', 'explode': true } }
54
- # The full referer URL to retrieve analytics for.
55
- field :referer_url, T.nilable(::String), { 'query_param': { 'field_name': 'refererUrl', 'style': 'form', 'explode': true } }
56
- # The ISO 3166-2 region code to retrieve analytics for.
57
- field :region, T.nilable(::String), { 'query_param': { 'field_name': 'region', 'style': 'form', 'explode': true } }
58
44
  # Filter for root domains. If true, filter for domains only. If false, filter for links only. If undefined, return both.
59
45
  field :root, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'root', 'style': 'form', 'explode': true } }
60
- # The start date and time when to retrieve analytics from. If set, takes precedence over `interval`.
46
+ # The start date and time when to retrieve analytics from.
61
47
  field :start, T.nilable(::String), { 'query_param': { 'field_name': 'start', 'style': 'form', 'explode': true } }
62
- # Deprecated. Use `tagIds` instead. The tag ID to retrieve analytics for.
48
+ # The tag ID to retrieve analytics for.
63
49
  field :tag_id, T.nilable(::String), { 'query_param': { 'field_name': 'tagId', 'style': 'form', 'explode': true } }
64
- # The tag IDs to retrieve analytics for.
65
- field :tag_ids, T.nilable(::Object), { 'query_param': { 'field_name': 'tagIds', 'style': 'form', 'explode': true } }
66
- # The ID of the tenant that created the link inside your system.
67
- field :tenant_id, T.nilable(::String), { 'query_param': { 'field_name': 'tenantId', 'style': 'form', 'explode': true } }
68
50
  # The IANA time zone code for aligning timeseries granularity (e.g. America/New_York). Defaults to UTC.
69
51
  field :timezone, T.nilable(::String), { 'query_param': { 'field_name': 'timezone', 'style': 'form', 'explode': true } }
70
- # The trigger to retrieve analytics for. If undefined, return both QR and link clicks.
71
- field :trigger, T.nilable(::OpenApiSDK::Operations::Trigger), { 'query_param': { 'field_name': 'trigger', 'style': 'form', 'explode': true } }
72
52
  # The URL to retrieve analytics for.
73
53
  field :url, T.nilable(::String), { 'query_param': { 'field_name': 'url', 'style': 'form', 'explode': true } }
74
- # The UTM campaign of the short link.
75
- field :utm_campaign, T.nilable(::String), { 'query_param': { 'field_name': 'utm_campaign', 'style': 'form', 'explode': true } }
76
- # The UTM content of the short link.
77
- field :utm_content, T.nilable(::String), { 'query_param': { 'field_name': 'utm_content', 'style': 'form', 'explode': true } }
78
- # The UTM medium of the short link.
79
- field :utm_medium, T.nilable(::String), { 'query_param': { 'field_name': 'utm_medium', 'style': 'form', 'explode': true } }
80
- # The UTM source of the short link.
81
- field :utm_source, T.nilable(::String), { 'query_param': { 'field_name': 'utm_source', 'style': 'form', 'explode': true } }
82
- # The UTM term of the short link.
83
- field :utm_term, T.nilable(::String), { 'query_param': { 'field_name': 'utm_term', 'style': 'form', 'explode': true } }
84
54
 
85
55
 
86
- sig { params(browser: T.nilable(::String), city: T.nilable(::String), continent: T.nilable(::OpenApiSDK::Shared::ContinentCode), country: T.nilable(::OpenApiSDK::Shared::CountryCode), customer_id: T.nilable(::String), device: T.nilable(::String), domain: T.nilable(::String), end_: T.nilable(::String), event: T.nilable(::OpenApiSDK::Operations::Event), external_id: T.nilable(::String), folder_id: T.nilable(::String), group_by: T.nilable(::OpenApiSDK::Operations::GroupBy), interval: T.nilable(::OpenApiSDK::Operations::Interval), key: T.nilable(::String), link_id: T.nilable(::String), os: T.nilable(::String), partner_id: T.nilable(::String), program_id: T.nilable(::String), qr: T.nilable(T::Boolean), referer: T.nilable(::String), referer_url: T.nilable(::String), region: T.nilable(::String), root: T.nilable(T::Boolean), start: T.nilable(::String), tag_id: T.nilable(::String), tag_ids: T.nilable(::Object), tenant_id: T.nilable(::String), timezone: T.nilable(::String), trigger: T.nilable(::OpenApiSDK::Operations::Trigger), url: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String)).void }
87
- def initialize(browser: nil, city: nil, continent: nil, country: nil, customer_id: nil, device: nil, domain: nil, end_: nil, event: nil, external_id: nil, folder_id: nil, group_by: nil, interval: nil, key: nil, link_id: nil, os: nil, partner_id: nil, program_id: nil, qr: nil, referer: nil, referer_url: nil, region: nil, root: nil, start: nil, tag_id: nil, tag_ids: nil, tenant_id: nil, timezone: nil, trigger: nil, url: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil)
56
+ sig { params(browser: T.nilable(::String), city: T.nilable(::String), country: T.nilable(::OpenApiSDK::Shared::CountryCode), device: T.nilable(::String), domain: T.nilable(::String), end_: T.nilable(::String), event: T.nilable(::OpenApiSDK::Operations::Event), external_id: T.nilable(::String), group_by: T.nilable(::OpenApiSDK::Operations::GroupBy), interval: T.nilable(::OpenApiSDK::Operations::Interval), key: T.nilable(::String), link_id: T.nilable(::String), os: T.nilable(::String), qr: T.nilable(T::Boolean), referer: T.nilable(::String), root: T.nilable(T::Boolean), start: T.nilable(::String), tag_id: T.nilable(::String), timezone: T.nilable(::String), url: T.nilable(::String)).void }
57
+ def initialize(browser: nil, city: nil, country: nil, device: nil, domain: nil, end_: nil, event: nil, external_id: nil, group_by: nil, interval: nil, key: nil, link_id: nil, os: nil, qr: nil, referer: nil, root: nil, start: nil, tag_id: nil, timezone: nil, url: nil)
88
58
  @browser = browser
89
59
  @city = city
90
- @continent = continent
91
60
  @country = country
92
- @customer_id = customer_id
93
61
  @device = device
94
62
  @domain = domain
95
63
  @end_ = end_
96
64
  @event = event
97
65
  @external_id = external_id
98
- @folder_id = folder_id
99
66
  @group_by = group_by
100
67
  @interval = interval
101
68
  @key = key
102
69
  @link_id = link_id
103
70
  @os = os
104
- @partner_id = partner_id
105
- @program_id = program_id
106
71
  @qr = qr
107
72
  @referer = referer
108
- @referer_url = referer_url
109
- @region = region
110
73
  @root = root
111
74
  @start = start
112
75
  @tag_id = tag_id
113
- @tag_ids = tag_ids
114
- @tenant_id = tenant_id
115
76
  @timezone = timezone
116
- @trigger = trigger
117
77
  @url = url
118
- @utm_campaign = utm_campaign
119
- @utm_content = utm_content
120
- @utm_medium = utm_medium
121
- @utm_source = utm_source
122
- @utm_term = utm_term
123
78
  end
124
79
  end
125
80
  end
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -8,7 +8,7 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
 
11
- class RetrieveAnalyticsResponse < ::Crystalline::FieldAugmented
11
+ class RetrieveAnalyticsResponse < ::OpenApiSDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
  # HTTP response content type for this operation
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -7,16 +7,14 @@
7
7
  module OpenApiSDK
8
8
  module Operations
9
9
 
10
- # Sort - DEPRECATED. Use `sortBy` instead.
11
- #
12
- # @deprecated class: This will be removed in a future release, please migrate away from it as soon as possible.
10
+ # Sort - The field to sort the links by. The default is `createdAt`, and sort order is always descending.
13
11
  class Sort < T::Enum
14
12
  enums do
15
13
  CREATED_AT = new('createdAt')
16
14
  CLICKS = new('clicks')
17
- SALE_AMOUNT = new('saleAmount')
18
15
  LAST_CLICKED = new('lastClicked')
19
16
  end
20
17
  end
18
+
21
19
  end
22
20
  end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+
11
+ class TrackCustomerRequestBody < ::OpenApiSDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
15
+ field :customer_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
16
+ # Avatar of the customer in the client's app.
17
+ field :customer_avatar, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
18
+ # Email of the customer in the client's app.
19
+ field :customer_email, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
20
+ # Name of the customer in the client's app.
21
+ field :customer_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
22
+
23
+
24
+ sig { params(customer_id: ::String, customer_avatar: T.nilable(::String), customer_email: T.nilable(::String), customer_name: T.nilable(::String)).void }
25
+ def initialize(customer_id: nil, customer_avatar: nil, customer_email: nil, customer_name: nil)
26
+ @customer_id = customer_id
27
+ @customer_avatar = customer_avatar
28
+ @customer_email = customer_email
29
+ @customer_name = customer_name
30
+ end
31
+ end
32
+ end
33
+ end
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -8,7 +8,7 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
 
11
- class CreatePartnerResponse < ::Crystalline::FieldAugmented
11
+ class TrackCustomerResponse < ::OpenApiSDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
  # HTTP response content type for this operation
@@ -29,8 +29,8 @@ module OpenApiSDK
29
29
  field :invite_expired, T.nilable(::OpenApiSDK::Shared::InviteExpired)
30
30
  # The server cannot find the requested resource.
31
31
  field :not_found, T.nilable(::OpenApiSDK::Shared::NotFound)
32
- # The created partner
33
- field :object, T.nilable(::OpenApiSDK::Operations::CreatePartnerResponseBody)
32
+ # A customer was tracked.
33
+ field :object, T.nilable(::OpenApiSDK::Operations::TrackCustomerResponseBody)
34
34
  # The user has sent too many requests in a given amount of time ("rate limiting")
35
35
  field :rate_limit_exceeded, T.nilable(::OpenApiSDK::Shared::RateLimitExceeded)
36
36
  # Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
@@ -39,7 +39,7 @@ module OpenApiSDK
39
39
  field :unprocessable_entity, T.nilable(::OpenApiSDK::Shared::UnprocessableEntity)
40
40
 
41
41
 
42
- sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::OpenApiSDK::Shared::BadRequest), conflict: T.nilable(::OpenApiSDK::Shared::Conflict), forbidden: T.nilable(::OpenApiSDK::Shared::Forbidden), internal_server_error: T.nilable(::OpenApiSDK::Shared::InternalServerError), invite_expired: T.nilable(::OpenApiSDK::Shared::InviteExpired), not_found: T.nilable(::OpenApiSDK::Shared::NotFound), object: T.nilable(::OpenApiSDK::Operations::CreatePartnerResponseBody), rate_limit_exceeded: T.nilable(::OpenApiSDK::Shared::RateLimitExceeded), unauthorized: T.nilable(::OpenApiSDK::Shared::Unauthorized), unprocessable_entity: T.nilable(::OpenApiSDK::Shared::UnprocessableEntity)).void }
42
+ sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::OpenApiSDK::Shared::BadRequest), conflict: T.nilable(::OpenApiSDK::Shared::Conflict), forbidden: T.nilable(::OpenApiSDK::Shared::Forbidden), internal_server_error: T.nilable(::OpenApiSDK::Shared::InternalServerError), invite_expired: T.nilable(::OpenApiSDK::Shared::InviteExpired), not_found: T.nilable(::OpenApiSDK::Shared::NotFound), object: T.nilable(::OpenApiSDK::Operations::TrackCustomerResponseBody), rate_limit_exceeded: T.nilable(::OpenApiSDK::Shared::RateLimitExceeded), unauthorized: T.nilable(::OpenApiSDK::Shared::Unauthorized), unprocessable_entity: T.nilable(::OpenApiSDK::Shared::UnprocessableEntity)).void }
43
43
  def initialize(content_type: nil, raw_response: nil, status_code: nil, bad_request: nil, conflict: nil, forbidden: nil, internal_server_error: nil, invite_expired: nil, not_found: nil, object: nil, rate_limit_exceeded: nil, unauthorized: nil, unprocessable_entity: nil)
44
44
  @content_type = content_type
45
45
  @raw_response = raw_response
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+ # A customer was tracked.
11
+ class TrackCustomerResponseBody < ::OpenApiSDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :customer_avatar, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
16
+
17
+ field :customer_email, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
18
+
19
+ field :customer_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
20
+
21
+ field :customer_name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
22
+
23
+
24
+ sig { params(customer_avatar: ::String, customer_email: ::String, customer_id: ::String, customer_name: ::String).void }
25
+ def initialize(customer_avatar: nil, customer_email: nil, customer_id: nil, customer_name: nil)
26
+ @customer_avatar = customer_avatar
27
+ @customer_email = customer_email
28
+ @customer_id = customer_id
29
+ @customer_name = customer_name
30
+ end
31
+ end
32
+ end
33
+ end
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -8,40 +8,34 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
 
11
- class TrackLeadRequestBody < ::Crystalline::FieldAugmented
11
+ class TrackLeadRequestBody < ::OpenApiSDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # The unique ID of the click that the lead conversion event is attributed to. You can read this value from `dub_id` cookie.
14
+ # The ID of the click in th Dub. You can read this value from `dclid` cookie.
15
15
  field :click_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clickId') } }
16
- # The name of the lead event to track. Can also be used as a unique identifier to associate a given lead event for a customer for a subsequent sale event (via the `leadEventName` prop in `/track/sale`).
16
+ # This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
17
+ field :customer_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
18
+ # The name of the event to track.
17
19
  field :event_name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('eventName') } }
18
- # The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.
19
- field :external_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId') } }
20
- # The avatar URL of the customer.
20
+ # Avatar of the customer in the client's app.
21
21
  field :customer_avatar, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
22
- # The email address of the customer.
22
+ # Email of the customer in the client's app.
23
23
  field :customer_email, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
24
- # The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).
24
+ # Name of the customer in the client's app.
25
25
  field :customer_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
26
- # The numerical value associated with this lead event (e.g., number of provisioned seats in a free trial). If defined as N, the lead event will be tracked N times.
27
- field :event_quantity, T.nilable(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('eventQuantity') } }
28
- # Additional metadata to be stored with the lead event. Max 10,000 characters.
26
+ # Additional metadata to be stored with the lead event
29
27
  field :metadata, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('metadata') } }
30
- # The mode to use for tracking the lead event. `async` will not block the request; `wait` will block the request until the lead event is fully recorded in Dub.
31
- field :mode, T.nilable(::OpenApiSDK::Operations::Mode), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('mode'), 'decoder': Utils.enum_from_string(::OpenApiSDK::Operations::Mode, true) } }
32
28
 
33
29
 
34
- sig { params(click_id: ::String, event_name: ::String, external_id: ::String, customer_avatar: T.nilable(::String), customer_email: T.nilable(::String), customer_name: T.nilable(::String), event_quantity: T.nilable(::Float), metadata: T.nilable(T::Hash[Symbol, ::Object]), mode: T.nilable(::OpenApiSDK::Operations::Mode)).void }
35
- def initialize(click_id: nil, event_name: nil, external_id: nil, customer_avatar: nil, customer_email: nil, customer_name: nil, event_quantity: nil, metadata: nil, mode: nil)
30
+ sig { params(click_id: ::String, customer_id: ::String, event_name: ::String, customer_avatar: T.nilable(::String), customer_email: T.nilable(::String), customer_name: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::Object])).void }
31
+ def initialize(click_id: nil, customer_id: nil, event_name: nil, customer_avatar: nil, customer_email: nil, customer_name: nil, metadata: nil)
36
32
  @click_id = click_id
33
+ @customer_id = customer_id
37
34
  @event_name = event_name
38
- @external_id = external_id
39
35
  @customer_avatar = customer_avatar
40
36
  @customer_email = customer_email
41
37
  @customer_name = customer_name
42
- @event_quantity = event_quantity
43
38
  @metadata = metadata
44
- @mode = mode
45
39
  end
46
40
  end
47
41
  end
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -8,7 +8,7 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
 
11
- class TrackLeadResponse < ::Crystalline::FieldAugmented
11
+ class TrackLeadResponse < ::OpenApiSDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
  # HTTP response content type for this operation
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -8,19 +8,34 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
  # A lead was tracked.
11
- class TrackLeadResponseBody < ::Crystalline::FieldAugmented
11
+ class TrackLeadResponseBody < ::OpenApiSDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
 
15
- field :click, ::OpenApiSDK::Operations::Click, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('click') } }
15
+ field :click_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clickId') } }
16
16
 
17
- field :customer, ::OpenApiSDK::Operations::Customer, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customer') } }
17
+ field :customer_avatar, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
18
18
 
19
+ field :customer_email, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
19
20
 
20
- sig { params(click: ::OpenApiSDK::Operations::Click, customer: ::OpenApiSDK::Operations::Customer).void }
21
- def initialize(click: nil, customer: nil)
22
- @click = click
23
- @customer = customer
21
+ field :customer_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
22
+
23
+ field :customer_name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
24
+
25
+ field :event_name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('eventName') } }
26
+
27
+ field :metadata, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('metadata') } }
28
+
29
+
30
+ sig { params(click_id: ::String, customer_avatar: ::String, customer_email: ::String, customer_id: ::String, customer_name: ::String, event_name: ::String, metadata: T.nilable(T::Hash[Symbol, ::Object])).void }
31
+ def initialize(click_id: nil, customer_avatar: nil, customer_email: nil, customer_id: nil, customer_name: nil, event_name: nil, metadata: nil)
32
+ @click_id = click_id
33
+ @customer_avatar = customer_avatar
34
+ @customer_email = customer_email
35
+ @customer_id = customer_id
36
+ @customer_name = customer_name
37
+ @event_name = event_name
38
+ @metadata = metadata
24
39
  end
25
40
  end
26
41
  end
@@ -1,4 +1,4 @@
1
- # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
1
+ # Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
2
2
 
3
3
  # typed: true
4
4
  # frozen_string_literal: true
@@ -8,36 +8,33 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
 
11
- class TrackSaleRequestBody < ::Crystalline::FieldAugmented
11
+ class TrackSaleRequestBody < ::OpenApiSDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # The amount of the sale in cents.
14
+ # The amount of the sale. Should be passed in cents.
15
15
  field :amount, ::Integer, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('amount') } }
16
- # The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.
17
- field :external_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId') } }
16
+ # This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
17
+ field :customer_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
18
18
  # The payment processor via which the sale was made.
19
19
  field :payment_processor, ::OpenApiSDK::Operations::PaymentProcessor, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('paymentProcessor'), 'decoder': Utils.enum_from_string(::OpenApiSDK::Operations::PaymentProcessor, false) } }
20
20
  # The currency of the sale. Accepts ISO 4217 currency codes.
21
21
  field :currency, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('currency') } }
22
- # The name of the sale event.
22
+ # The name of the sale event. It can be used to track different types of event for example 'Purchase', 'Upgrade', 'Payment', etc.
23
23
  field :event_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('eventName') } }
24
- # The invoice ID of the sale. Can be used as a idempotency key – only one sale event can be recorded for a given invoice ID.
24
+ # The invoice ID of the sale.
25
25
  field :invoice_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('invoiceId') } }
26
- # The name of the lead event that occurred before the sale (case-sensitive). This is used to associate the sale event with a particular lead event (instead of the latest lead event, which is the default behavior).
27
- field :lead_event_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leadEventName') } }
28
- # Additional metadata to be stored with the sale event. Max 10,000 characters.
26
+ # Additional metadata to be stored with the sale event.
29
27
  field :metadata, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('metadata') } }
30
28
 
31
29
 
32
- sig { params(amount: ::Integer, external_id: ::String, payment_processor: ::OpenApiSDK::Operations::PaymentProcessor, currency: T.nilable(::String), event_name: T.nilable(::String), invoice_id: T.nilable(::String), lead_event_name: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::Object])).void }
33
- def initialize(amount: nil, external_id: nil, payment_processor: nil, currency: nil, event_name: nil, invoice_id: nil, lead_event_name: nil, metadata: nil)
30
+ sig { params(amount: ::Integer, customer_id: ::String, payment_processor: ::OpenApiSDK::Operations::PaymentProcessor, currency: T.nilable(::String), event_name: T.nilable(::String), invoice_id: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::Object])).void }
31
+ def initialize(amount: nil, customer_id: nil, payment_processor: nil, currency: nil, event_name: nil, invoice_id: nil, metadata: nil)
34
32
  @amount = amount
35
- @external_id = external_id
33
+ @customer_id = customer_id
36
34
  @payment_processor = payment_processor
37
35
  @currency = currency
38
36
  @event_name = event_name
39
37
  @invoice_id = invoice_id
40
- @lead_event_name = lead_event_name
41
38
  @metadata = metadata
42
39
  end
43
40
  end